查询一个大的海龟文件
Querying a large turtle file
我有一个包含超过 7000 万行的 turtle 文件,我使用 python 脚本查询它,问题是执行时间太长。
这是我尝试做的一个例子:
import rdflib
import rdfextras
rdfextras.registerplugins()
g=rdflib.Graph()
g.parse("my_file.ttl", format='turtle')
results = g.query("""
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX bk: <http://www.ondex.org/bioknet/terms/>
SELECT (COUNT(*) AS ?nbr_of_genes)
WHERE {
?gene rdf:type bk:Gene.
}
""")
我从原始文件中抽取了 100 万行的样本,这个简单的查询执行了 76 秒!
有没有更快的查询文件的方法?
将您的 Turtle 文件加载到适当的 RDF 三重或四重存储中,自然会受益于 DBMS 特性和功能。
我有一个包含超过 7000 万行的 turtle 文件,我使用 python 脚本查询它,问题是执行时间太长。
这是我尝试做的一个例子:
import rdflib
import rdfextras
rdfextras.registerplugins()
g=rdflib.Graph()
g.parse("my_file.ttl", format='turtle')
results = g.query("""
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX bk: <http://www.ondex.org/bioknet/terms/>
SELECT (COUNT(*) AS ?nbr_of_genes)
WHERE {
?gene rdf:type bk:Gene.
}
""")
我从原始文件中抽取了 100 万行的样本,这个简单的查询执行了 76 秒!
有没有更快的查询文件的方法?
将您的 Turtle 文件加载到适当的 RDF 三重或四重存储中,自然会受益于 DBMS 特性和功能。