在 Julia 中读取和解析 >400MB 的 .json 文件而不会崩溃内核



以下内容正在破坏我的Julia内核。有没有更好的方法来读取和解析大型(>400 MB)JSON文件?

using JSON
data = JSON.parsefile("file.json") 

除非投入一些精力来制作更智能的JSON解析器,否则以下内容可能会起作用:file.json很可能有很多行。在这种情况下,读取文件并逐行或逐块解析一个大的重复JSON节(对于合适的块长度)就可以了。一种可能的编码方式是:

using JSON
f = open("file.json","r")
discard_lines = 12      # lines up to repetitive part
important_chunks = 1000 # number of data items
chunk_length = 2        # each data item has a 2-line JSON chunk
for i=1:discard_lines
    l = readline(f)
end
for i=1:important_chunks
    chunk = join([readline(f) for j=1:chunk_length])
    push!(thedata,JSON.parse(chunk))
end
close(f)
# use thedata

这很有可能是你问题的临时解决方案。检查file.json

最新更新