IK分词器
分词:即把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一个匹配操作,默认的中文分词是将每个字看成一个词,比如“我爱BNTang”会被分为"我”,"爱","BN","Tang",这显然是不符合要求的,所以我们需要安装中文分词器ik来解决这个问题,如果要使用中文,建议使用ik分词器!
IK提供了两个分词算法:ik_smart
和ik_max_word
,其中ik_ smart为最少切分, ik_max_word为最细粒度划分!一会我们测试!
- 下载地址:https:///medcl/elasticsearch-analysis-ik/releases
- 下载完毕之后放入到elasticsearch的插件目录中
plugins
- 放入之后最好全部环境都重启一下
验证是否安装成功可以通过elasticsearch-plugin list
进入Kibana控制台
ik_smart
- 最少切分
GET _analyze
{
"analyzer": "ik_smart",
"text": "床前明月光"
}
ik_max_word
- 最细粒度划分,穷尽词库的可能
GET _analyze
{
"analyzer": "ik_max_word",
"text": "床前明月光"
}
这时我们输入小灰说Java
发现小灰给拆开了,这种自己需要的词,需要自己加入到分词器的字典中!
????ik分词器增加自己的配置
- 进入到es的插件目录找到ik分词器中的
config
目录
IKAnalyzer.cfg.xml
编写自己的扩展配置文件,注入到配置文件当中即可
配置完毕之后环境重启,再次输入进行分词即可看到效果我这里就不贴图了