分词器
- 什么是分词器
分词器就是从一串文本中切分出一个一个的词条,并对每个词条进行标准化 - 分词器包括三个部分:
(1)character filter: 分词之前的预处理,过滤掉HTML标签,特殊服号转换等
(2)tokenizer:分词
(3)token filter:标准化 - 内置分词器:
(1)standard分词器:(默认的)他会将词汇单元转成小写的形式,并且去除掉停用词和标点符号。支持中文采用的方法为单字切分。
(2)simple分词器:首先会通过非字母字符来分割文本信息,然后将词汇单元同一为小写形式。该分词器会去掉数字类型的字符。
(3)whitespace分词器:仅仅是去除空格,对字符没有lowcase化,不支持中文,并且不对生成的词汇单元进行其他的标准化处理。
(4)language分词器:特定语言的分词器,不支持中文
安装分词器
首先我们的分词器是用maven进行安装的,所以在此之前先安装maven
(1)下载maven的安装包,我用的版本较低,是3.3.9
wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
(2)解压(我的是放在/soft 路径下,这个随意)
tar -zxvf apache-maven-3.3.9-bin.tar.gz
mv apache-maven-3.3.9 maven (这一步骤可省略,主要是为了后面方便操作)
(3)配置环境变量
vim /etc/profile
M2_HOME=/soft/maven (注意这里是maven的安装路径)
export PATH=${M2_HOME}/bin:${PATH}
source /etc/profile
(4)检验maven是否安装完成
mvn -v
出现此页面表示安装完成
- 下面我们来安装分词器
(1)下载中文分词器 https://github.com/medcl/elasticsearch-analysis-ik
(2)安装该压缩包
cd /soft
unzip ./elasticsearch-analysis-ik-master.zip
mv elasticsearch-analysis-ik-master /usr/local/
(3)进入elasticsearch-analysis-ik-master目录,编译源码(还有一种办法就是直接下载插件包,然后进行第四步,直接下载elasticsearch-analysis-ik-6.2.4.zip)
mvn clean install -Dmaven.test.skip=true
(4)将编译后生成的elasticsearch-analysis-ik-版本.zip移动到自己新建的目录ik下(该目录是在elasticsearch的安装目录的plugins下),并进行解压
cd /opt/elasticsearch-6.2.4/plugins
mkdir ik
cd /usr/local/elasticsearch-analysis-ik-master/target/releases
cp ./elasticsearch-analysis-ik-6.2.4.zip /opt/elasticsearch-6.2.4/plugins/ik
cd /opt/elasticsearch-6.2.4/plugins/ik
unzip ./elasticsearch-analysis-ik-6.2.4.zip
(5)因为ElasticSearch加载的时候是直接取ik(我们自己新建的目录)这个目录下的所有内容,所以我们将刚才解压缩的内容都移动到ik目录下
mv /opt/elasticsearch-6.2.4/plugins/ik/elasticsearch/* /opt/elasticsearch-6.2.4/plugins/ik
(6)删除掉没有用的(之前解压缩的)
(7)测试一下,启动elasticsearch,注意这里需要切换用户,不能用root用户启动
cd /opt/elasticsearch-6.2.4/bin
./elastucsearch
如果成功的话,会看到插件运行,表示我们将中文分词器安装完成。