在Java中搜索大型csv的最佳/高效方法

Kar*_* O. 1 java csv algorithm search

我有一个带有1.5K条目的较大的csv文件。每个条目代表一个具有名称,纬度和经度的全球城市。在Java中搜索csv的最佳最快方法是什么?我想用所有条目填充ArrayList,但我认为它很慢(除非我错了)。没有这个文件不会增加大小,几乎是100KB。我希望能够输入城市名称并更新搜索结果;但是我可以自己弄清楚。

Pet*_*rey 5

一个约1 MB的1.5K条目文件应花费数十毫秒。一个1 GB的文件可能会花费数十秒,因此值得为该文件保存一个索引,以免每次都要重新读取它。

您可以加载到地图中以通过 name

您可以通过NavigableMap添加经纬度索引。这将加快按位置的查找。

一次加载文件需要一点时间,但是每次从磁盘读取文件的速度要慢得多。

顺便说一句,您可以拥有100 TB的数据和数万亿的行,要在Java中使用此数据,就必须发挥创造力。

简而言之,如果它比您的内存少得多,则它是相对较小的文件。