ElasticSearch QueryString vs多个通配符

b4wnujal  于 2023-06-21  发布在  ElasticSearch
关注(0)|答案(1)|浏览(96)

也许是因为我是ES的新手,但我找不到任何关于查询及其性能/比较的文档?如何解析/翻译像query_string这样的查询?
我想知道哪个性能更好/更快的多通配符过滤器还是string_query?

"query": {
 "bool" : {
  "must" : [
    {
      "query_string" : {
        "query" : "*val1* OR *val2*",
        "default_field" : "field",
        "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,
        "escape" : false,
        "auto_generate_synonyms_phrase_query" : true,
        "fuzzy_transpositions" : true,
        "boost" : 1.0
      }
    }
  ],
  "adjust_pure_negative" : true,
  "boost" : 1.0
}

}
或者

"query": {
 "bool" : {
  "filter" : [
    {
      "bool" : {
        "should" : [
          {
            "wildcard" : {
              "field" : {
                "wildcard" : "*val1*",
                "boost" : 1.0
              }
            }
          },
          {
            "wildcard" : {
              "field" : {
                "wildcard" : "*val2*",
                "boost" : 1.0
              }
            }
          }
        ],
        "adjust_pure_negative" : true,
        "boost" : 1.0
      }
    }
  ],
  "adjust_pure_negative" : true,
  "boost" : 1.0
}

}

相关问题