gpt4 book ai didi

python - 解析大型 NTriples 文件 Python

转载 作者:太空宇宙 更新时间:2023-11-03 11:32:36 26 4
gpt4 key购买 nike

我正在尝试使用 Parse large RDF in Python 中的代码解析一个相当大的 NTriples 文件

我为 python 安装了 raptor 和 redland-bindings。

import RDF
parser=RDF.Parser(name="ntriples") #as name for parser you can use ntriples, turtle, rdfxml, ...
model=RDF.Model()
stream=parser.parse_into_model(model,"file:./mybigfile.nt")
for triple in model:
print triple.subject, triple.predicate, triple.object

但是程序挂起,我怀疑它正在尝试将整个文件加载到内存或其他东西中,因为它没有立即启动。

有人知道怎么解决吗?

最佳答案

它很慢,因为您正在读入没有索引的内存存储(默认为 RDF.Model())。所以它变得越来越慢。 N-Triples 的解析确实从文件中流出,它永远不会将其全部吸入内存。

参见 Redland storage modules documentation有关存储模型的概述。在这里你可能想要存储type 'hashes' 和hash-type 内存。

s = RDF.HashStorage("abc", options="hash-type='memory'")
model = RDF.Model(s)

(未测试)

关于python - 解析大型 NTriples 文件 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14597122/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com