search_analyzer (搜索分析器)
通常情况下,我们在搜索和创建索引时使用的是同一分析器,以确保我们搜索是的词根与倒排索引中的词根拥有相同的格式。
但是有时我们又会有意识的在搜索时使用不同的分析器,例如使用edge_ngram解析器自动解析。
默认情况下,查询将会使用字段映射时定义的分析器,但也能通过search_analyzer设置来进行修改:
1 | Analysis 设置为传统的autocomplete 分析器 |
2 , 3 | text字段使用autocomplete 分析器进行索引,但是使用standard分析器进行搜索。 |
4 | 这个字段将使用以下词根进行索引:[ |
5 | 查询搜索将同时使用两个词根:[ |
可以通过查看Index time search-as-you- type获得此例的完整解释。
注意
同一索引相同名字的字段search_analyzer 设置必须相同。他的值可以通过PUT mapping API进行覆盖修改。
Last updated