共计 868 个字符,预计需要花费 3 分钟才能阅读完成。
目前用常规办法读取,很慢,时常把内存搞崩溃,失去响应
有啥高效的办法? |
网友回复:
注册 : 1. 使用 JSON Streaming:JSON Streaming 是一种流式处理 JSON 数据的方法,可以避免将整个 JSON 文件加载到内存中。这种方法可以使用 PHP 的 fopen 和 fgets 函数来读取 JSON 文件的每一行,然后逐行解析 JSON 数据。2. 使用 JSON Lines 格式:JSON Lines 是一种每行一个 JSON 对象的格式,可以更容易地处理大型 JSON 文件。这种格式可以使用 PHP 的 file 函数来逐行读取文件,并使用 json_decode 函数解析 JSON 数据。3. 使用缓存:将 JSON 文件分成多个小文件,并使用缓存技术(如 Memcached 或 Redis)将读取的 JSON 数据缓存起来,可以提高读取速度和效率。4. 使用索引:对于经常需要查询的数据,可以在读取 JSON 文件时创建索引,以便快速查找数据。5. 使用适当的 JSON 解析器:PHP 提供了多种 JSON 解析器,如 json_decode、json_encode、json_last_error 等,使用适当的解析器可以提高读取效率。
michael007: 有没有听说过数据库
机长 : 什么东西这么大
jqbaobao: 150m 的 json 文件 你这什么站,需要这个?
ouou8: 看看有啥好办法
xbnong: 怎么有股 GPT 味道
qqlzm: 150m 用 json 存?你找个 sqlite 也好啊
Akewa: 那就分批读啊。这都不会?
liugogal: java 逐行读取还是很好用
注册 : json 文件不是逐行存储的
注册 : 而且为了压缩体积,实践中 json 只有一行的比比皆是
gdtv: 传说中的文本数据库吗
NiDiPiZiNaFongQ: 羡慕大佬的 JSON 都有 150M 我自己的连 150byte 都没有
opelnic: 本地转一下吧,
lwsg1987: 为什么会有 150m 的 json
920: 本地转成几个小文件
枝江小狼王 : realtime database
小小书童 : 你写个程序录入到数据库呗 …
bfrs: 用 JSON Streaming, 楼上有说