【问题标题】:How to get CustomerId from millions of records using Xquery in Marklogic如何在 Marklogic 中使用 Xquery 从数百万条记录中获取 CustomerId
【发布时间】:2021-01-12 23:45:36
【问题描述】:

我们有一个大型数据库,我应该只从整个数据库中获取 CustomerId,而不会影响性能。最好的方法是什么?

【问题讨论】:

    标签: xquery marklogic


    【解决方案1】:

    如果您希望报告大型数据库中的所有CustomerId 值,那么拥有某种支持索引将是最快和最有效的。使用索引,从具有以下功能的词典中检索不同的值列表:

    • cts:values() 例如cts:values(cts:element-reference('CustomerId'))cts:values(cts:path-reference('/Customer/CustomerId'))
    • cts:element-values() 例如cts:element-values(xs:QName("CustomerId"))

    您还可以创建一个具有CustomerId 字段的TDE,并使用Optic 查询检索这些值。

    如果您想在不创建索引的情况下报告值,则可以创建 CoRB 批处理作业来选择具有该元素的文档,从流程模块返回值,并将值写入输出文件应用EXPORT-FILE-SORT=ascending|distinct 选项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-24
      • 2016-03-06
      • 2015-12-14
      • 1970-01-01
      • 1970-01-01
      • 2019-12-08
      • 2023-01-07
      • 1970-01-01
      相关资源
      最近更新 更多