【问题标题】:Performance based on length of "terms"基于“条款”长度的性能
【发布时间】:2012-04-05 19:46:55
【问题描述】:

我在查询中有以下条件。 see by 的术语列表可能会变得非常大。在“must_not”子句中也有一些类似的列表,它们也可以变大。

          {
            "terms": {
              "seen_by": [
                "54",
                "3",
                "418",
                "411",
                "1",
                "101"
              ]
            }
          }

如果条件中的术语列表增加或减少,性能会有何不同?

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    如果不了解您的数据大小、术语分布和查询的详细信息,很难回答这个问题。一般来说,词条的数量对搜索时间的贡献是线性的。基本上,搜索引擎必须为查询中的每个术语提取文档列表。因此,通常不建议执行具有大量术语的查询,并且 elasticsearch 实际上将布尔查询中的子句数量限制为 1024(可以使用 indices.query.bool.max_clause_count 设置进行更改)。

    【讨论】:

    • 你会如何使用 elasticsearch-js 做到这一点?如果没有,我将如何使用 elasticsearch-js 创建和使用 yml?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多