【发布时间】:2018-08-25 01:52:09
【问题描述】:
我有一个包含数百万行记录的 CSV,我喜欢按时间对其进行排序。目前,我只是把它放在一个以ZonedDateTime 为键的树形图中。有没有更好的方法来做到这一点?猜猜至少最好使用toEpochSecond() 并使用 EpochSecond 作为密钥?是否有进一步改善?
时间在 CSV 中的一个字段中,下面是一个示例:
ABC.DE,,Market Price,2018-07-19T08:21:32.633494851+01,Quote,,,,,19.01,425,,,21.09,250,,,298911,21:32.6,,,,,,,,,,
【问题讨论】:
-
如果按时间排序,以什么方式?您从每一行读取的行或某个
DateTime字段中读取的时间? -
您能给我们一份该 csv 的样本吗?
-
可能没有更好的方法。您可以尝试使用 Longs 而不是 ZonedDateTimes 作为键,但如果没有显着的速度提升,我会继续使用 ZonedDateTimes,因为代码会更清晰。
-
你能放一个CSV文件的样本吗?
-
如果您没有遇到任何问题,您所拥有的一切都很好。如果您确实有性能或其他方面的问题,请告诉我们,我们可以进行改进。
标签: java performance sorting memory timestamp