我无法阅读大型JSON文件。我的文件大小约为6GB。我已经尝试过ijson读取它像流一样 - 逐项 - 使用以下行:
f = open(path, 'rb')
for row in ijson.items(f, 'Row'):
//do something
我从python shell得到“内存错误”/“杀死”错误。我认为这不是一个内存问题,因为我的系统已经足够了。大约3GB的交换和20 GB的RAM。
现在我知道ijson读取了一个流但我的问题是整个6GB文件是一行,所以jitem.items也无济于事。任何人都可以建议我一个解决方案如何有效地阅读,而不会遇到内存问题。我的JSON看起来像这样
{Row:[{
"Cell": [
{
"$": "blabla",
"column": "blala",
"timestamp": 1494589152912
},
{
"$": "blal bla",
"column": "blala",
"timestamp": 1494589152916
},
],
"key": "blalaa"
}]}