elasticsearch elasticsearch 7.3“;字段扩展匹配的字段太多”;,elasticsearch,nosql,elasticsearch,Nosql" /> elasticsearch elasticsearch 7.3“;字段扩展匹配的字段太多”;,elasticsearch,nosql,elasticsearch,Nosql" />

elasticsearch elasticsearch 7.3“;字段扩展匹配的字段太多”;

elasticsearch elasticsearch 7.3“;字段扩展匹配的字段太多”;,elasticsearch,nosql,elasticsearch,Nosql,我有一个弹性实例,它的索引有大约65k条记录。每个文档都不是我所说的大文档。我试着尽可能多地映射字段,尽可能多地映射关键字数据类型。当前POST查询没有问题,但任何uri查询,如“?q=slug:example slug”都会引发以下错误: failed_shards: [{ shard: 0, index: "items", node: "FC4TMXu1RxCOBGM8nUhsVw", reason: { type: "query_shar

我有一个弹性实例,它的索引有大约65k条记录。每个文档都不是我所说的大文档。我试着尽可能多地映射字段,尽可能多地映射关键字数据类型。当前POST查询没有问题,但任何uri查询,如“?q=slug:example slug”都会引发以下错误:

  failed_shards: [{
    shard: 0,
    index: "items",
    node: "FC4TMXu1RxCOBGM8nUhsVw",
    reason: {
        type: "query_shard_exception",
        reason: "failed to create query: { "
        query_string " : { "
        query " : "
        slug: example-slug ", "
        fields " : [ ], "
        type " : "
        best_fields ", "
        default_operator " : "
        or ", "
        max_determinized_states " : 10000, "
        enable_position_increments " : true, "
        fuzziness " : "
        AUTO ", "
        fuzzy_prefix_length " : 0, "
        fuzzy_max_expansions " : 50, "
        phrase_slop " : 0, "
        analyze_wildcard " : false, "
        escape " : false, "
        auto_generate_synonyms_phrase_query " : true, "
        fuzzy_transpositions " : true, "
        boost " : 1.0 } }",
        index_uuid: "sXQAz8gzRKmXXXmZn8j7Rw",
        index: "items",
        caused_by: {
            type: "illegal_argument_exception",
            reason: "field expansion matches too many fields, limit: 1024, got: 1093"
        }
    }
}]

我知道有一个.yml编辑我可以允许更多的条款,但我犹豫,因为弹性文件上的性能警告。。。。大多数情况下,我不理解为什么这个uri查询会导致这种情况,特别是因为只有一个字段叫做slug,它是一个关键字。还有什么我能做的吗

更改设置中的index.query.default\u字段

执行使用字段自动扩展的查询(例如。 查询字符串、简单查询字符串或多重匹配)可以有性能 具有大量字段的索引的问题。维护 与此相反,已为每个字段引入了1024个字段的默认限制 使用“所有字段”模式(“默认字段”:“”)或其他 字段名扩展(例如“foo”)。 如果需要,您可以更改此设置 限制使用动态集群 背景


注意:
index.query.bool.max_子句_count
需要在elasticsearch中更新。yml

我在AWS ELK服务中遇到了相同的问题,我从AWS控制台进行了更新

  • 选择域
  • 编辑域
  • 提前选择权
  • 最大子句计数

更改设置中的index.query.default\u字段。@LeBigCat如果您想将此作为答案,我将接受它