gpt4 book ai didi

sparql - 在 dbpedia 上运行查询时超时事务

转载 作者:行者123 更新时间:2023-12-02 00:26:50 26 4
gpt4 key购买 nike

嗨,有一个查询直到昨天才有效:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT(?film_link) ?film_abstract ?film_name ?wikipage
WHERE {
?film_link rdf:type <http://dbpedia.org/ontology/Film> .
?film_link rdfs:comment ?film_abstract
FILTER (langMatches( lang(?film_abstract), "EN")) .
?film_link foaf:name ?film_name .
?film_title foaf:page ?wikipage .

}

但今天显示:Virtuoso 42000 Error The estimated execution time 99232592 (sec) exceeds the limit of 1500 (sec).我之前也看到过这个错误,但是当我在运行一段时间后再次运行这样的查询时......谁能解释一下错误的含义?

最佳答案

这意味着 Virtuoso 的查询规划器(Virtuoso 是运行 DBPedia 的三重存储)已经估计了评估您的查询需要多长时间,它认为这将花费太长时间,因此它拒绝运行查询。

我怀疑问题出在您查询中的最后一个三重模式:

?film_title foaf:page ?wikipage

在那之前你从来没有使用过这些变量中的任何一个,所以你要求 Virtuoso 做的是将每个可能的三元组与谓词位置的 foaf:page 交叉乘积,结果在其余部分您的查询。

如果您将其更改为以下内容,它应该可以正常工作:

?film_link foaf:page ?wikipage

我怀疑这就是您打算编写的内容,尽管它仍然很慢,但它仍然有效,因为您的查询非常广泛,而且 FILTER 子句的评估通常非常缓慢。

关于sparql - 在 dbpedia 上运行查询时超时事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8553570/

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