ES-pinyin插件配置和使用

本文介绍了如何配置和使用ES的拼音插件,包括下载对应版本的插件,安装到ES中,以及在Linux服务器上的部署。重点讨论了在已有项目中集成插件时,如何调整参数以适应业务需求,比如与IK分词器配合,实现刘德华 -> liudehua的转换。还提到了两种不同的实现方式,一是通过分析器结合completion suggester,二是通过filter,以实现搜索建议功能。
摘要由CSDN通过智能技术生成

ES拼音插件和es的众多插件一样,简单的说一下操作步骤就是

1,下载(https://github.com/medcl/elasticsearch-analysis-pinyin/releases  选择对应的版本,版本与ES版本一致,建议下载最新版本,然后idea打开适配当前自己使用的es版本号,然后maven打包)。

2,es安装插件,我的es是手动部署到linux服务器上的,es部署下有个目录/plugins/ 新建一个文件夹放进去/plugins/pinyin  然后需要重启es 看日志是否加载成功,当前es更新版本较快,需要适配自己的es版本,否则可能重启不成功。

3,定义新建自己的index索引,很重要,因为我是在已有的项目上去集成的pinyin插件,所以需要支持pinyin插件的同时需要适配之前的业务场景,这里列出es拼音插件的两种配置,希望读者在看到的时候要结合自己的业务逻辑 然后进行调整,拼音插件实现起来简单,但是要做到适合自己还是需要不停的调试

        第一个pinyin插件的参数

keep_first_letter启用此选项时,例如:刘德华> ldh,默认值:true
keep_separate_first_letter启用该选项时,将保留第一个字母分开,例如:刘德华> l,d,h,默认:假的,注意:查询结果也许是太模糊,由于长期过频
limit_first_letter_length 设置first_letter结果的最大长度,默认值:16
keep_full_pinyin当启用该选项,例如:刘德华> [ liu,de,hua],默认值:true
keep_joined_full_pinyin当启用此选项时,例如:刘德华> [ liudehua],默认值:false
keep_none_chinese 在结果中保留非中文字母或数字,默认值:true
keep_none_chinese_together保持非中国信一起,默认值:true,如:DJ音乐家- > DJ,yin,yue,jia,当设置为false,例如:DJ音乐家- > D,J,yin,yue,jia,注意:keep_none_chinese必须先启动
keep_none_chinese_in_first_letter第一个字母保持非中文字母,例如:刘德华AT2016- > ldhat2016,默认值:true
keep_none_chinese_in_joined_full_pinyin保留非中文字母加入完整拼音,例如:刘德华2016- > liudehua2016,默认:false
none_chinese_pinyin_tokenize打破非中国信成单独的拼音项,如果他们拼音,默认值:true,如:liudehuaalibaba13zhuanghan- > liu,de,hua,a,li,ba,ba,13,zhuang,han

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值