首页 > 解决方案 > Search-as-you-type 数据类型和 Edge NGram Tokenizer 之间有什么区别?

问题描述

无法理解将 Search-as-you-type 数据类型设置为字段、在分析器中设置 Edge NGram Tokenizer 以及添加 index_prefixes 参数之间的区别。在我看来,他们毕竟做同样的工作。

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-as-you-type.html https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis -edgengram-tokenizer.html https://www.elastic.co/guide/en/elasticsearch/reference/current/index-prefixes.html

标签: elasticsearchelasticsearch-mapping

解决方案


edge_ngram 是一个分词器,这意味着它在索引时开始对您的输入数据进行分词。还有一个 edge_ngram 令牌过滤器。两者相似,但工作水平不同。

search_as_you_type 是一种包含几个子字段的字段类型,其中一个称为 _index_prefix 并利用了 edge_ngram 标记器。

所以基本上,当他们决定添加新的 search_as_you_type 字段类型时,实际上已经利用了您在 edge_ngram 标记器文档中看到的内容。


推荐阅读