我正在通过 Python 使用 SPARQL 查询 DBpedia。我面临执行时间上限的问题。这是错误:
Code :
sparql = SPARQLWrapper("http://dbpedia.org/sparql")
newquery = "DEFINE input:inference "skos-trans" PREFIX dcterms: <http://purl.org/dc/terms/>
select distinct ?cat1 ?cat2 ?cat3 ?cat4 where {
<http://dbpedia.org/resource/Pulp_Fiction> dcterms:subject ?cat1 .
?cat1 skos:broaderTransitive ?cat2.
?cat2 skos:broaderTransitive ?cat3.
?cat3 skos:broaderTransitive ?cat4.
} "
sparql.setQuery( newquery)
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
回复:
Virtuoso 42000 Error The estimated execution time 5286 (sec) exceeds the limit of 3000 (sec)
如何解决这个问题?
您不能使用公共 DBPedia 端点,因为该端点众所周知,而且也被大量使用,因此他们必须限制允许人们运行的查询的复杂程度。
如果您需要运行遇到此类超时问题的查询,请考虑使用可用的查询之一数据库转储 http://wiki.dbpedia.org/Downloads38并在 Virtuoso 的本地副本或您选择的三重存储中运行它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)