es原生的分词器挺好,不过为了更好,分更多的词我们还是需要安装ik分词器滴,怎么安装呐,之前一直挺不想安装这个分词的,今天终究还是安了,没想到竟然 这么简单!!!
首先,进入es的bin目录下
./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.1.2/elasticsearch-analysis-ik-6.1.2.zip
注意版本!!!各个节点都要安装吧~
安装之后重启es,不知道是不是x-pack的原因,主节点宕了,我起来之后,还是宕的状态,一直刷新kibana——好了(欠刷)
分词的配置文件是个核心,6.1.2的版本配置文件在
*/elasticsearch-6.1.2/config/analysis-ik
中,全部都在这里
IKAnalyzer.cfg.xml:用来配置自定义词库
main.dic:ik原生内置的中文词库,总共有27万多条,只要是这些单词,都会被分在一起
quantifier.dic:放了一些单位相关的词
suffix.dic:放了一些后缀
surname.dic:中国的姓氏
stopword.dic:英文停用词
ik原生最重要的两个配置文件:
main.dic:包含了原生的中文词语,会按照这个里面的词语去分词
stopword.dic:包含了英文的停用词
停用词,stopword:a the and at but
停用词,会在分词的时候,不会建立在倒排索引中
自定义词库
自定义词库
(1)自己建立词库:每年都会涌现一些特殊的流行词,网红,蓝瘦香菇,喊麦,鬼畜,自己的style,balance,battle一下,一般不会在ik的原生词典里
自己补充自己的最新的词语,到ik的词库里面去
IKAnalyzer.cfg.xml:ext_dict,custom/mydict.dic
补充自己的词语,然后需要重启es,才能生效
(2)自己建立停用词库:比如了,的,啥,么,我们可能并不想去建立索引,让人家搜索
custom/ext_stopword.dic,已经有了常用的中文停用词,可以补充自己的停用词,然后重启es
IKAnalyzer.cfg.xml这个文件在*/elasticsearch-6.1.2/config/analysis-ik目录下,都在一块、团结的大家庭
小结:
就分词而言:感觉吧es比solr好用,个人感觉,以后可能会改变观点也不一定。