每次我在http://dbpedia.org/sparql endpoints 或我当地的Virtuoso商店进行查询时,我会在一段相当长的时间后(例如30分钟通过我自己的经验)得到一个超时错误 .
为了查询DBpedia的在线SPARQL endpoints ,我使用以下语句:
Query query = QueryFactory.create(q); //q - query string
QueryExecution qexec = QueryExecutionFactory.sparqlService("http://dbpedia.org/sparql/", query);
qexec.setTimeout(-100);
我读到Timeout值小于零(即负数)永远不会允许超时发生,所以我设置了qexec.setTimeout(-100)值 . 但我还是暂停了 .
如何解决这个问题呢?在经过一定量的大量查询后,http://dbpedia.org/sparql阻止您的IP地址也是如此吗?我可以不运行连续无限(即非常大,10 ^ 6)的查询吗?谢谢 .
1 回答
有关Virtuoso的具体问题通常最好在public OpenLink Discussion Forums,Virtuoso Users mailing list或confidential Support Case上提出 .
也就是说,关于您的具体问题 - 服务器端超时设置胜过任何查询所请求的 - 即,查询设置只有在短于服务器上设置时才有效 . 您可以在自己的实例上调整the server-side setting(
MaxQueryExecutionTime
)以及许多其他内容 .DBpedia特定的问题,讨论,提交等通常最好针对DBpedia discussion list . public DBpedia endpoint确实确实是have various usage limitations,这是使其作为慷慨提供的公共服务可行的一部分 .