我正在使用Elasticsearch为搜索应用构建自动完成功能,我正在使用shingles tokenizer
创建多字建议,并在这些令牌上使用edge_ngram token filter
。
我正在编制55个JSON
个文档,每个文档有2个或更多字段,其中1个字段有多个以空格分隔的单词。
如果我在启用match_phrase_prefix query
的情况下使用ES _all field
,我应该只能使用1或2个字符输入返回匹配项吗?
我想使用这个查询,因为Elastic本身说它是一个很好的查询,用于“当你键入时搜索”行为。
我的想法是否正确?在我花更多时间之前,只需确保我走在正确的轨道上。
答案 0 :(得分:0)
是的,使用带状疱疹分析器,你应该能够得到1或2个字符的结果。
请务必在_all
字段上设置自定义分析器。