首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MarkLogic: Optics API不稳定耗时/运行时

MarkLogic: Optics API不稳定耗时/运行时
EN

Stack Overflow用户
提问于 2019-06-14 13:23:42
回答 1查看 68关注 0票数 1

我一直在使用MarkLogic Optics API的功能,注意到完成代码执行所需的时间不稳定,可能需要40秒或~1-2分钟才能完成,有时也需要超过一个小时才能激活超时错误。

这是因为缓存还是我可能遗漏的某个设置?或者低运行时间是由于以前失败/不完整执行的缓存造成的?我已经在下面发布了我的一组代码,因为它可能有助于此故障排除。

代码语言:javascript
复制
import module namespace op="http://marklogic.com/optic" at "/MarkLogic/optic.xqy";
import module namespace ofn="http://marklogic.com/optic/expression/fn" at "/MarkLogic/optic/optic-fn.xqy";
import module namespace thsr="http://marklogic.com/xdmp/thesaurus" 
   at "/MarkLogic/thesaurus.xqy";

xdmp:set-transaction-time-limit(3600),
let $people := op:from-lexicons(
  map:entry("comments",cts:uri-reference()),
  "lexicon")
  =>op:where(
   thsr:expand(
   cts:element-word-query(xs:QName("text"),"go"), 
   thsr:lookup("/myThsrDocs/wordnet.xml", "go"),
   (), 
   (), 
   () )
  )

let $questions := op:from-sparql('SELECT * WHERE {?comment </date_commented> ?date. }', "sparql")
                => op:select(( "date", op:as('commentStr',ofn:string(op:col('comment'))) ))

return(
xdmp:elapsed-time(),
$questions  => op:join-inner(
    $people,
    op:on(
      "comments","commentStr"
    )
  )
  => op:select(("comments")) 
  => op:group-by((), op:count("Total","comments"))
  => op:result()
,
xdmp:elapsed-time()
)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-14 19:08:45

这可能是由于选择了不同的查询计划,并表明成本函数中可能存在错误。您应该与MarkLogic支持部门合作,以跟踪问题并为其打开一个错误。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56591840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档