Kibana操作Elasticsearch-分词器操作

分词

分词是ES的全文检索的核心
一个tokenizer (分词器)接收一个字符流,将之分割为独立的tokens (词元,通常是独立的单词) ,然后输出tokens流。
例如, whitespace tokenizer遇到空白字符时分割文本。它会将文本"Quick brown fox!"分割AAN为[Quick, brown, fox!]
tokenizer (分词器)还负责记录各个term (词条)的顺序或position位置(用于phrase短语和word proximity词近邻查询) ,
以及term (词条)所代表的原始word (单词)的start该tokes(起始)和end (结束)的character offsets (字符偏移量) (用于高亮显示搜索的内容)Elasticsearch提供了很多内置的分词器,可以用来构建custom analyzers (自定义分词器) 。

先来看看官网的的写法
ES官网

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
所有语言的默认使用的就是这个标准分词器

POST _analyze
{
  "analyzer":"standard",
  "text":"The 2 QUICK Brown-Foxes jumped over the lazy dog's bone"
}

在这里插入图片描述
这是使用空格来区分的,这样的分词器还不能满足实际的业务场景,ES中的这些分词器都只对英文比较友好,而对于我们中文却不怎么友好!所以作为一个中国的程序员,挺不容器的,外国人写代码就是想写日记,我们中国人写代码就是高考英语作文!,所以这里我们要满足中文的业务需求就需要而外安装中文分词器!这里使用ik分词器
ik分词器

IK分词器

1.GitHub上找到IK分词器的版本在这里插入图片描述
2.进入源码在这里插入图片描述
3.安装ik分词器
这里有两种方式可以安装
1.进入docker容器里面直接wget下载在
2.在外部挂载目录安装

第一种容器内部安装

1.进入ES容器
 docker exec -it 069d /bin/bash
2.进入到plugins目录
3.使用wget命令拉取压缩包

我的ES安装是在外部有挂载目录,所以这里就使用第二种方式外部挂载+重启的方式安装ik分词器

第二种外部挂载目录安装
1.将下载的源码zip的压缩包放到挂载的plugins目录
在这里插入图片描述
2.解压
在这里插入图片描述
这里是宿主机挂载的目录,所以容器里面的的plugins目录中也会存在同样的目录
在这里插入图片描述
3.重命名文件夹名,并修改权限可读可写可执行

chmod -R 777 ik-7.4.2/

4.进入docker的ES容器
在这里插入图片描述
5.查看ik分词器有没有安装上
进入到ES容器的bin目录
在这里插入图片描述
查看插件

elasticsearch-plugin list

这里可能会报错
在这里插入图片描述
这里是由于zpi的压缩包没有删除导致这里报错的,删除即可
再次运行上个命令
在这里插入图片描述
6.退出容器重启ES容器

docker restart es

4.测试ik分词器
ik_smart-智能分词

POST _analyze
{
  "analyzer":"ik_smart",
  "text":"测试ik

在这里插入图片描述
ik_max_word-最大分词

POST _analyze
{
  "analyzer":"ik_max_word",
  "text":"测试ik分词器"
}

在这里插入图片描述
这里是找到最大的分词组合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员劝退师-TAO

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值