用了Elasticsearch,一口气上5T

ik+pinyin 实现搜索建议时

Elasticsearch | 作者 juin | 发布于2019年02月13日 | 阅读数:3930

请教大家一个问题:
某个字段的analyzer设置的ik + pinyin 的

火星图片_20190213_203618.jpg

 
用这个字段实现搜索建议
但是当搜索的时候如果首个中文字符的pinyin 一样就会把相应的内容返回

火星图片_20190213_203811.png

 
 
这个要怎么处理,使结果按照相关性返回
已邀请:

rochy - rochy_he

赞同来自: tenyears

实现建议的时候,推荐 ik_pinyin 的设置如下:
keep_first_letter : true
keep_full_pinyin : false
keep_joined_full_pinyin : true
keep_none_chinese_in_joined_full_pinyin : true
none_chinese_pinyin_tokenize : false
 
上述的设置可以实现一个短语可以有全拼和简拼两种方式,例如,流动性 被分词为:ldx,liudongxing
在进行搜索的时候,你需要使用 前缀查询,首先查询短语本身,其次查询拼音分词的字段;这样即可实现智能提示(And 关系结果很精准);
如果想实现纠错,可以使用 or 的关系即可
 
最好推荐每个短语加上词频等额外信息,可以有效进行排序

stevelevan - 95后

赞同来自:

为什么我pinyin_analyzer的tokennizer设置成ik_max_word之后、生成的索引就特别大,几千条数据就有好几G。必须设置tokenizer为keyword才正常

要回复问题请先登录注册