直接将文件解压,放入到plugins目录下。如果你进行了目录挂载,就可以在容器外部操作。我这里进行了挂载,只需要将解压后的文件放入到对应挂载目录就可以。
2、测试分词器
1.1 默认分词器
POST _analyze
{
"text": "我是中国人"
}
1.2 使用分词器(1)
POST _analyze
{
"analyzer": "ik\_smart",
"text": "我是中国人"
}
1.3 使用分词器(2)
POST _analyze
{
"analyzer": "ik\_max\_word",
"text": "我是中国人"
}
提示:能够看出不同的分词器,分词有明显的区别,所以以后定义一个索引不能再使用默认的 mapping 了,要手工建立 mapping, 因为要选择分词器
3、自定义词库
3.1 修改IKAnalyzer.cfg.xml
修改/usr/share/elasticsearch/plugins/ik/config/中的 IKAnalyzer.cfg.xml ,如果进行了目录挂载,只需要在外部对应目录修改就行,我这里的外部挂载目录是:/mydata/elasticsearch/plugins/ik/config
3.2 nginx的设置
首先你要安装了nginx,我这以下操作步骤是基于nginx挂载到外部目录。
需要将这个链接地址放置到IKAnalyzer.cfg.xml
中对应的远程词库目录
1.3 测试
POST _analyze
{
"analyzer": "ik\_max\_word",
"text": "汪汪队和猪猪对讨论乔碧罗"
}
5、后语
我这里最终的目的是项目中要使用到分词器的使用、不安装不行要执行的语句
我的代码执行结束后、报的是这个索引找不到。所以要创建、创建又需要用到分词器。
##创建一个gulimall_product新的索引
PUT gulimall_product
{
"mappings": {
"properties": {
"attrs": {
"type": "nested",
"properties": {
"attrId": {
"type": "long"
},
"attrName": {
"type": "keyword"
},
"attrValue": {
"type": "keyword"
}
}
},
"brandId": {
"type": "long"
},
"brandImg": {
"type": "keyword"
},
"brandName": {
"type": "keyword"
},
![img](https://img-blog.csdnimg.cn/img_convert/181269569b69deb9b4a83748c35758ef.png)
![img](https://img-blog.csdnimg.cn/img_convert/4b82735b74bdfffaf2b47fa30a86a07c.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**