Fuzzy 查询(模糊查询)

从5.0.0开始已经标记为过时。

将在6.0中正式移除,使用匹配查询替代模糊查询

模糊查询使用基于Levenshtein 编辑距离的相似性。

字符串字段

模糊查询生成在模糊性中指定的最大编辑距离内的所有可能的匹配项,然后检查项词典以找出实际存在于索引中的那些项。

这有一个简单示例:

GET /_search
{
    "query": {
       "fuzzy" : { "user" : "ki" }
    }
}

或者可以增加一些高级设置:

GET /_search
{
    "query": {
        "fuzzy" : {
            "user" : {
                "value" :         "ki",
                    "boost" :         1.0,
                    "fuzziness" :     2,
                    "prefix_length" : 0,
                    "max_expansions": 100
            }
        }
    }
}

参数列表

如果 prefix_length 设置为0,并且 max_expansions 设置为一个高数字,这个查询可能非常重量级。它可能导致索引中的每个术语被检查!

Last updated