1

我想知道为什么以下带有命名子查询的 SPARQL 查询在 Blazegraph 实例 Wikidata 查询服务上很慢。在 Wikidata 查询服务上取出子查询并单独执行它大约需要一秒钟的时间,而整个查询的查询会超时。在 INCLUDE 行之后添加任何内容似乎没有帮助。删除 DISTINCT 没有帮助。

SELECT
  ?author
WITH {
  SELECT
    DISTINCT ?author
  {
    [] wdt:P50 ?author .
    FILTER EXISTS { [] wdt:P921 ?author }
    FILTER EXISTS { ?author wdt:P31 wd:Q5 }
  }
  LIMIT 1
} AS %authors
WHERE {
  INCLUDE %authors .
}

查询提示的某些组合可能会有所帮助吗?我一直在浏览https://github.com/blazegraph/database/wiki/QueryHints上的 Blazegraph 查询提示,但没有想出解决超时的提示组合。

当命名子查询单独执行时,维基数据查询服务上的 LIMIT 甚至可以增加到 10000,而不会遇到超时。

4

0 回答 0