获取使用SPARQL dbpedia的人员列表

时间:2014-10-01 05:24:55

标签: sparql dbpedia

我正在使用live-dbpedia来检索人员列表。我正在live-dbpedia endpoints上执行 sparql查询以获得结果。我修复了查询中的偏移量和限制值并获取了后的记录每10000次尝试。但是当我尝试以 580000偏移值执行时,会发生 504网关超时错误

无法正常工作 SPARQL查询:

SELECT DISTINCT ?dbpedia_link str(?name) as ?label str(?label1) as ?label1 ?freebase_link WHERE {
        ?dbpedia_link rdfs:label ?label1 . 
        ?dbpedia_link foaf:name ?name .
        {
         { ?dbpedia_link rdf:type dbpedia-owl:Person }                            
        }                        
        OPTIONAL {?dbpedia_link owl:sameAs ?freebase_link .
        FILTER regex(?freebase_link, "^http://rdf.freebase.com") .}
        FILTER (lang(?label1) = 'en'). 
        ?dbpedia_link dcterms:subject ?sub 
        }Limit 1000
        OFFSET 580000

正在使用 SPARQL查询:

SELECT DISTINCT ?dbpedia_link str(?name) as ?label str(?label1) as ?label1 ?freebase_link WHERE {
            ?dbpedia_link rdfs:label ?label1 . 
            ?dbpedia_link foaf:name ?name .
            {
             { ?dbpedia_link rdf:type dbpedia-owl:Person }                            
            }                        
            OPTIONAL {?dbpedia_link owl:sameAs ?freebase_link .
            FILTER regex(?freebase_link, "^http://rdf.freebase.com") .}
            FILTER (lang(?label1) = 'en'). 
            ?dbpedia_link dcterms:subject ?sub 
            }Limit 1000
            OFFSET 50000

如何克服这个问题。

1 个答案:

答案 0 :(得分:4)

在您的请求之间延迟。实时端点有一个速率限制,这是超过它时出现的错误。还有一个短暂的超时时间可以使服务更加可用。

(免责声明:我负责服务)