关于lc-pinyin的具体使用这里就不做介绍了,使用方式请参考:《Elasticsearch1.x 拼音分词实现全拼首字母中文混合搜索》
由于该插件在ES1.x和ES2.x下的安装和使用有些不同,所以在这里需要针对2.x单独说明下。
一、安装
首先通过git下载lc-pinyin的源码,并切换到2.2.2这个分支:
git clone git@git.oschina.net:music_code_m/elasticsearch-analysis-lc-pinyin.git
cd elasticsearch-analysis-lc-pinyin/
git checkout dev_2.2.2
接下来打开项目的pom.xml文件修改elasticsearch.version为你对应的es版本,这里以2.3.0为例
修改后,重新打包:
mvn clean package
打包后的zip文件在这个路径:elasticsearch-analysis-lc-pinyin/target/releases/elasticsearch-analysis-lc-pinyin-2.2.2.zip
接下来将该文件拷贝到服务器上,用安装命令安装:
./bin/plugin install file:../elasticsearch-plugins/elasticsearch-analysis-lc-pinyin-2.2.2.zip
二、使用
因为在ES2.x中mapping设置分词器的方式有所改变。
在1.x中我们通过index_analyzer和search_analyzer来设置索引期和搜索期的分词器。
在2.x中我们只能通过analyzer来设置一个全局分词器,search_analyzer来设置一个搜索期分词器,如下面圈红的地方: