如何获得现有数据库中XQuery执行时间的可靠度量?看起来eXide甚至考虑了浏览器中结果的呈现,我错了吗?
发布于 2016-08-30 18:33:22
eXide只测量执行查询所需的时间,而不是在浏览器中呈现结果或序列化结果。(要确认,请参阅执行查询的eXide源代码,并测量持续时间:https://github.com/wolfgangmm/eXide/blob/develop/controller.xql#L155-L193。第一次是在第159行,第二次是在189-90.)
您可以使用同样的技术来度量您自己查询的持续时间:
xquery version "3.1";
let $start-time := util:system-time()
let $query-needing-measurement := (: insert query or function call here :)
let $end-time := util:system-time()
let $duration := $end-time - $start-time
let $seconds := $duration div xs:dayTimeDuration("PT1S")
return
"Query completed in " || $seconds || "s."另一种常见的方法是记录此消息或将其发送到Monex应用程序的控制台。为此,请使用util:log() (内置)或console:log() (需要Monex,如果尚未安装,则可以从仪表板> Package安装)。
另外,请参阅XQuery维基百科的条目,Query。
注:从下面的评论中更新了冈瑟的建议。
https://stackoverflow.com/questions/39234183
复制相似问题