Marklogic 在XQuery中的不同行捕获时间戳
如何在MarkLogic中捕获XQuery代码不同行的实际时间戳Marklogic 在XQuery中的不同行捕获时间戳,marklogic,Marklogic,如何在MarkLogic中捕获XQuery代码不同行的实际时间戳 如果执行一个6行代码需要5秒钟,我想返回代码执行的实际开始时间和实际结束时间。您将通过使用探查器获得更多信息,但是xdmp:appeated-time()将返回执行的确切时间,这与fn:current-time()不同,它返回查询的时间戳(在整个事务中是静态的)。您将通过使用探查器获得更多信息,但是xdmp:appeased-time()将返回执行查询的准确时间,而fn:current-time()则返回查询的时间戳(在整个事务中
如果执行一个6行代码需要5秒钟,我想返回代码执行的实际开始时间和实际结束时间。您将通过使用探查器获得更多信息,但是
xdmp:appeated-time()
将返回执行的确切时间,这与fn:current-time()
不同,它返回查询的时间戳(在整个事务中是静态的)。您将通过使用探查器获得更多信息,但是xdmp:appeased-time()
将返回执行查询的准确时间,而fn:current-time()
则返回查询的时间戳(在整个事务中是静态的)。要补充@hunterhacker和@wst所说的内容,您可以在查询控制台中分析代码。单击“分析”选项卡并单击“运行”。如果您认为存在瓶颈,您可以通过这种方式更好地解决问题。要补充@hunterhacker和@wst所说的内容,您可以在查询控制台中评测代码。单击“评测”选项卡并单击“运行”。如果您认为存在瓶颈,您可能可以通过这种方式更好地解决问题。是的,不要试图通过在函数式语言上逐行查看时钟时间来衡量性能,因为为了优化,系统将在多个线程之间并行、惰性和无序地执行代码。非常感谢。这有助于s!小提示:xdmp:appeased-time()
返回一个持续时间,例如,自开始评估请求以来经过的秒数(或秒数的分数)。要获取查询的结束时间,您需要执行current-time()+xdmp:appeased-time()
。但是要小心延迟计算,您可能需要将以前的代码包装在xdmp:eager
中,或者使用let
语句强制执行顺序。是的,不要试图通过在函数式语言上逐行查看时钟时间来衡量性能,因为为了优化,系统将并行执行您的代码lel和LAZY并在多个线程间无序运行。非常感谢。这很有帮助!小提示:xdmp:appeased-time()
返回持续时间,例如,自开始评估请求以来经过的秒数(或分数)。要获取查询的结束时间,请执行current-time()+xdmp:appeased-time()
。但是要小心延迟计算,您可能需要将以前的代码包装在xdmp:eager
中,或者使用let
语句强制执行顺序。。