小编a.a*_*lam的帖子

解析大型数据文件的最快文件/方法是什么?

所以我正在做一个 GAE 项目。我需要查找城市、国家/地区名称和国家/地区代码以进行注册、LBS 等...

现在我认为将所有信息放在数据存储中是相当愚蠢的,因为它会被经常使用并且它会无缘无故地吃掉我的数据存储引用,特别是这些列表不会改变,所以放入数据存储中毫无意义。

现在让我有几个选择:

API - 没有付费服务的预算,免费服务并不完全可靠。

上传可解析的文件 - 有利的选项,因为我喜欢数据始终存在的确定性。所以我从GeoNames得到了需要的文件(链接有所有国家的源文件,以防有人需要它)。每个国家/地区的文件都是一个常规的 UTF-8 制表符分隔文件,非常棒。

但是,现在我可以选择如何格式化和访问数据,问题是:

从 Java 小服务容器中的静态文件系统地格式化和检索数据的最佳方法是什么?

最好的方法是最快、资源最少的方法。

有效选项:

  1. TXT 文件,制表符分隔
  2. XML 文件静态
  3. 带有大量枚举的 Java 类

我知道将国家文件作为 Java 枚举导入并检查它们的值会非常快,但是您认为这会影响超出合理限制的内存吗?另一方面,每次我需要访问记录时,循环都会经过几千行,直到找到所需的记录......逐行读取,因此没有内存问题,但速度非常慢......我有在 Java 服务中解析 excel 文件的一些经验,仅解析 250 条记录就花费了大约 20 秒的时间,大规模地,响应时间会超时(毫无疑问),所以 XML 和 excel 一样吗?

非常感谢你们 !!请提供意见,一切都值得赞赏!

java xml google-app-engine parsing tab-delimited-text

1
推荐指数
1
解决办法
1867
查看次数