我有一个很大的JSON文件(超过7 MB),我想对其进行迭代以找到我的匹配数据。
这是一种读取内存中整个文件并将其保存以备下次调用的好方法吗?还是还有其他一些方法具有更好的性能并使用了一些内存?
答案 0 :(得分:1)
以JSON格式存储的数据应一次性读取。这就是格式的工作方式。这不是通常不先读取所有数据就进行增量搜索的格式。尽管有些模块支持流式传输并以某种方式对其进行增量检查,但这并不是该格式的目的,也不是最适合的格式。
因此,您确实有几个问题要问自己:
如果您对前四个问题没问题,那么只需阅读一下,解析它,然后将生成的Javascript对象保留在内存中即可。如果您对前四个问题中的任何一个都不满意,那么您可能应该将数据放入一种可以更有效地查询而不将其全部加载到内存中的格式(例如简单的数据库)中。