Query optimization 本地DBPedia中的Sparql查询比在线API中的查询慢

Query optimization 本地DBPedia中的Sparql查询比在线API中的查询慢,query-optimization,sparql,Query Optimization,Sparql,我从我当地的大师dbpedia设置中得到了这种奇怪的行为。以下查询在我的本地版本dbpedia中比在线api中慢[ 选择distinct?p,其中{?url1 rdf:type.?url2 rdf:type。 {?url1?p?url2.}联合{?url2?p?url1.} 此外,我还检查了其他查询,它们在本地查询中比在在线sparql中更快 此问题的可能原因和解决方法是什么?警告:这不是一个好的、有用的答案 “在线API”是什么?公共DBpedia SPARQL端点?不清楚您在本地计算机上使

我从我当地的大师dbpedia设置中得到了这种奇怪的行为。以下查询在我的本地版本dbpedia中比在线api中慢[

选择distinct?p,其中{?url1 rdf:type.?url2 rdf:type。
{?url1?p?url2.}联合{?url2?p?url1.}
此外,我还检查了其他查询,它们在本地查询中比在在线sparql中更快

此问题的可能原因和解决方法是什么?

警告:这不是一个好的、有用的答案 “在线API”是什么?公共DBpedia SPARQL端点?不清楚您在本地计算机上使用的是哪种triple store。公共端点使用的是Virtuoso

让我给你几点考虑:

  • 如果你也在使用艺术大师
    • 公共端点使用的是Virtuoso的集群版,因此在查询内和查询间并行化方面可能会有更好的性能
    • 部署它的服务器可能比“本地”设置(未知)拥有更多的资源
    • Virtuoso设置可能与您的设置不同
    • 公共端点可能加载了更多的数据,因此,其他查询在您的计算机上可能会更快
  • 如果您使用的是不同的三重存储
    • 比较性能要困难得多,因为三重存储可能在不同的查询上表现更好
    • 部署它的服务器可能比“本地”设置(未知)拥有更多的资源
  • 事实上,可能还有很多其他原因

    可能也是最明显的“修复”:为本地三联存储分配更多资源,特别是使用SSD、更多主内存等。
    当然,triple store的配置很重要,这确实取决于triple store。

    我使用32GB Ram和SSD进行数据存储。除此特定查询外,其他所有查询都更好。
    SELECT distinct ?p WHERE { ?url1 rdf:type <http://dbpedia.org/ontology/GovernmentAgency> . ?url2 rdf:type <http://dbpedia.org/ontology/Town> .
    {?url1 ?p ?url2 .} UNION {?url2 ?p ?url1 .}}