[英]SPARQL Query “COUNT” in Virtuoso Jena API - QueryParseException
[英]SPARQL Query Execution time using Jena on a Virtuoso service
所以我正在使用Virtuoso SPARQL端点,并且正在使用Jena对其进行查询。 我使用QueryFactory
和QueryExecution
创建SPARQL查询:
Query query = QueryFactory.create(sparqlQueryString1);
QueryExecution qexec = QueryExecutionFactory.sparqlService("http://localhost:8890/sparql", query);
ResultSet results = qexec.execSelect();
现在,我想计算运行此查询所花费的时间。 如何在Virtuoso上使用耶拿找到这样的时间? 那可能吗? 显然,我确实查看过诸如getTimeOut1()
和getTimeOut2()
类的函数。 他们似乎没有给我任何好的指导。 作为黑客,我尝试使用Java的内置System.currentTimeMillis()
,但是我不确定这是否正确。 关于如何找到执行时间的任何指示将不胜感激!
结果以流的形式返回,因此计时需要从qexec.execSelect()
之前到应用程序完成处理结果之后的时间范围内,而不仅仅是调用execSelect
。
Timer timer = new Timer() ;
timer.startTimer() ;
ResultSet results = qexec.execSelect();
ResultSetFormatter.consume(results) ;
long x = timer.finishTimer() ; // Time in milliseconds.
目前尚不清楚您是要安排整个往返行程的时间,还是只是维塔索索在事情上花费的时间...
Virtuoso 7使您可以使用profile
功能获得查询的编译(查询计划)和执行时间。
您还可以使用prof_enable
函数启用常规查询日志记录和性能分析。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.