正因为Elasticsearch 内置的分词器对中文不友好,会把中文分成单个字来进行全文检索,所以我们需要借助中文分词插件来解决这个问题。

一、安装maven管理工具

Elasticsearch 要使用 ik,就要先构建 ik 的 jar包,这里要用到 maven 包管理工具,而 maven 依赖java 环境,上一篇文章已经确保安装了java环境

链接:https://pan.baidu.com/s/1MEOh28XoKjU_KMKj1ebJyQ 密码:edc9   //百度云apache-maven-3.3.9-bin.tar.gz 下载地址。大家也一定习惯把安装包下载到/usr/local/src目录下
#cd /usr/local/src/
#tar zxvf /usr/local/src/apache-maven-3.3.-bin.tar.gz
#cp -r /usr/local/src/apache-maven-3.3. /usr/local/maven3.3.9

添加 maven 环境变量

#vim /etc/profile  //添加下面三行代码到底部
MAVEN_HOME=/usr/local/maven3.3.9
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
#source /etc/profile //执行命令,使更改生效

查看是否配置安装成功

# mvn -v   //查看版本命令; 成功了~
Apache Maven 3.3. (bb52d8502b132ec0a5a3f4c09453c07478323dc5; --11T00::+:)
Maven home: /usr/local/maven3.3.9
Java version: 1.8.0_91, vendor: Oracle Corporation
Java home: /usr/local/jdk1..0_91/jre
Default locale: en_US, platform encoding: UTF-
OS name: "linux", version: "2.6.32-358.el6.x86_64", arch: "amd64", family: "unix"

二、下载安装IK包

必须对应好版本,在https://github.com/medcl/elasticsearch-analysis-ik/tree/v1.10.1有说明,因为我安装的是2.4.1版本的ES,那么参照官方的说明,IK的版本必须是1.10.1。

注意:因为本文章用的是1.10.1,小于5.5.1,不能使用官方给出的第二种方便的办法。如果您的版本高于5.5.1,那么推荐使用第二种~

我们继续...

wget https://github.com/medcl/elasticsearch-analysis-ik/archive/v1.10.1.zip   //wget地址;  注意:这里的下载版本可以自定义,前提是只要是官方有的版本,比如你要下载1.8.1,那么把后面的v1.10.1改为v1.8.1就可以了。本人测试过链接:https://pan.baidu.com/s/1yRTsyD8kDZWwwqCyTjY60w 密码:th8h //百度云下载地址
#cd /usr/local/src
#unzip -x elasticsearch-analysis-ik-1.10.1.zip
#cd elasticsearch-analysis-ik-1.10.1
#mvn package  //执行构建,下载依赖包.....这是个漫长的过程,大概十几分钟的时间。下面是表示完成 

完成之后就会在/usr/local/src/elasticsearch-analysis-ik-1.10.1/target/releases目录下出现一个包,也就意味着这个IK插件已经有了。

下面需要把包放到elasticsearch安装目录下的plugins目录下。

cp elasticsearch-analysis-ik-1.10..zip /usr/share/elasticsearch/plugins/  //因为是yum安装,拷贝到指定目录
# cd /usr/share/elasticsearch/plugins/
# unzip elasticsearch-analysis-ik-1.10..zip
# mkdir ik
# mv ./* ik

最后就重启ES服务,重启过后ES会自动加载IK插件了。

#service elasticsearch restart
Stopping elasticsearch: [ OK ]
Starting elasticsearch: [ OK ]

ElasticSearch(三) ElasticSearch中文分词插件IK的安装的更多相关文章

  1. Elasticsearch安装中文分词插件ik

    Elasticsearch默认提供的分词器,会把每一个汉字分开,而不是我们想要的依据关键词来分词.比如: curl -XPOST "http://localhost:9200/userinf ...

  2. ElasticSearch 中文分词插件ik 的使用

    下载 IK 的版本要与 Elasticsearch 的版本一致,因此下载 7.1.0 版本. 安装 1.中文分词插件下载地址:https://github.com/medcl/elasticsearc ...

  3. Elasticsearch如何安装中文分词插件ik

    elasticsearch-analysis-ik 是一款中文的分词插件,支持自定义词库. 安装步骤: 1.到github网站下载源代码,网站地址为:https://github.com/medcl/ ...

  4. ElasticSearch-5.0.0安装中文分词插件IK

    Install IK 源码地址:https://github.com/medcl/elasticsearch-analysis-ik,git clone下来. 1.compile mvn packag ...

  5. es学习(三):分词器介绍以及中文分词器ik的安装与使用

    什么是分词 把文本转换为一个个的单词,分词称之为analysis.es默认只对英文语句做分词,中文不支持,每个中文字都会被拆分为独立的个体. 示例 POST http://192.168.247.8: ...

  6. ElasticSearch(四) ElasticSearch中文分词插件IK的简单测试

    先来一个简单的测试 # curl -XPOST "http://192.168.9.155:9200/_analyze?analyzer=standard&pretty" ...

  7. ElasticSearch搜索引擎安装配置中文分词器IK插件

    近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...

  8. ElasticSearch第三步-中文分词

      ElasticSearch系列学习 ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticS ...

  9. 沉淀再出发:ElasticSearch的中文分词器ik

    沉淀再出发:ElasticSearch的中文分词器ik 一.前言   为什么要在elasticsearch中要使用ik这样的中文分词呢,那是因为es提供的分词是英文分词,对于中文的分词就做的非常不好了 ...

随机推荐

  1. UIWindow和UIScreen

    UIWindow和UIScreen 目录 概述 职责 实用操作 概述 UIWindow职责 包含了应用程序的可视化的内容 为视图和其他应用程序对象在触摸事件中提供了关键性的作用 与视图控制器一起协作来 ...

  2. springMVC问题

    网站中springmvc.xml配置: <bean id="viewResolver" class="org.springframework.web.servlet ...

  3. 20165330 2017-2018-2《Java程序设计》课程总结

    20165330 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我期望的师生关系 预备作业2:做中学learning by doing个人感想及学习基础 ...

  4. Java 代码实现Http 的GET和POST 请求

    先来个传统的,不过这个里面有些类已经标明 deprecated,所以之后还有更好的方法,起码没有被标明 deprecated的类和方法. 前两个方法是有deprecated的情况.后面用HttpURL ...

  5. Yii框架2.0的模块

    模块是个独立的软件单元,也是又控制器,视图,模型组成的,也可以有自己的布局.但他必须属于某个应用下,不能独立存在. 其中模块的控制器,视图和应用的控制器和视图使用基本相同,不作赘述,下面说说模块的使用 ...

  6. PCI 设备详解三

    上篇文章已经分析了探测PCI总线的部分代码,碍于篇幅,这里另启一篇.重点分析下pci_scan_root_bus函数 2016-10-24 pci_scan_root_bus函数 struct pci ...

  7. oracle入门(7)——存储过程

    [本文介绍] 熟悉了PL/SQL语法后,实现java调用oracle存储过程才是主要目的.本文将介绍如何写存储过程,java如何调用存储过程. [存储过程介绍] 抛开专业的描述,存储过程就是在数据库里 ...

  8. C# 中利用 Conditional 定义条件方法

    利用 Conditional 属性,程序员可以定义条件方法.Conditional 属性通过测试条件编译符号来确定适用的条件.当运行到一个条件方法调用时,是否执行该调用,要根据出现该调用时是否已定义了 ...

  9. 003-linux基本目录介绍

    一.文件系统的类型 LINUX有四种基本文件系统类型:普通文件.目录文件.连接文件和特殊文件,可用file命令来识别. 普通文件:如文本文件.C语言元代码.SHELL脚本.二进制的可执行文件等,可用c ...

  10. Spark2.0 Pipelines

    MLlib中众多机器学习算法API在单一管道或工作流中更容易相互结合起来使用.管道的思想主要是受到scikit-learn库的启发. ML API使用Spark SQL中的DataFrame作为机器学 ...