gpt4 book ai didi

marklogic - 超过时间限制,在 Markligic Cts :Search

转载 作者:行者123 更新时间:2023-12-01 11:52:24 24 4
gpt4 key购买 nike

我的 marklogic 服务器中有大约 53,00,000 个文档,每个文档包含一条记录。

xquery version "1.0-ml";
declare namespace pa = "http://www.contata.com/pa";
let $query :=
cts:or-query((
cts:element-word-query(
xs:QName("pa:name"), "SMITH"
),
cts:element-word-query(
xs:QName("pa:address-1"), ""
),
cts:element-word-query(
xs:QName("pa:address-2"), ""
),
cts:element-word-query(
xs:QName("pa:address-3"), ""
),
cts:element-word-query(
xs:QName("pa:city"), ""
)
)) return

cts:search(fn:doc(),$query)[5100000 to 5300000]

当我执行上面提到的查询时,它需要很长时间才能执行并给出以下错误

[1.0-ml] XDMP-EXTIME:cts:search(fn:doc(), cts:or-query((cts:element-word-query(xs:QName("pa:name"), "SMITH ", ("lang=en"), 1), cts:element-word-query(xs:QName("pa:address-1"), "", ("lang=en"), 1), cts: element-word-query(xs:QName("pa:address-2"), "", ("lang=en"), 1), ...))) -- 超过时间限制

但是当我执行 cts:search(fn:doc(),$query)[1000 to 2000] 时,它会成功执行。

还有一个问题,如果我已经加载了所有文档,那么如何在从 RecordLoader Utility 加载后为它们创建索引。

最佳答案

查看“未过滤”选项,并考虑使用“搜索:搜索”。

您也可以增加时间限制,但您可能不想这样做。使用过滤搜索获得第 500000 个结果需要检查 500000 个文档,这可能需要多达 500000 次磁盘读取。如果你的磁盘每秒能管理100个,那就是5000秒。

关于marklogic - 超过时间限制,在 Markligic Cts :Search,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10204256/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com