正因为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. 第一次广搜!HDU1548--A Strange Lift

    一上来看见题目就用了深搜(因为只会深搜)果断内存超限(据说时间也会超限)无奈只好开始用广搜 其实广搜的思路和深搜有很多类似的地方 不过实现的过程中用到了队列 因此有点难以理解(好吧我个人认为) 这题是 ...

  2. MFC中控件的TAB顺序

    本文来自: http://hi.baidu.com/qingcaichongch/item/47f7ae14de8cbef6ddeeca42 在MFC中添加控件后,按Ctrl+d可以改变控件TAB顺序 ...

  3. 类似hibernate实现sql增删改错

    Util package utils; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Ha ...

  4. docker-compose 部署 selenium-grid

    目录 一.安装Docker 二.安装Docker-Compose库 三.准备docker-compose.yaml文件 四.运行 上篇:详细介绍selenium-grid 一.安装Docker 必须要 ...

  5. Java Swing 日历 控件

    这是我改写的网上的DateChooser代码后的作品,使用效果如图所示.用法参考备注,以及Main函数中用法. /** * * Copyright: Ares. * All Rights Reserv ...

  6. linux 定时备份mysql数据库

    首先要先搞清楚两个概念: ①.mysqldump,mysqldump是mysql的逻辑备份工具,它不是linux的命令,工作原理类似产生一些列sql语句,对数据库进行指定的逻辑备份. 最简洁的形式是: ...

  7. 对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高不少,并且不受NTP等外部服务影响,能准确更准确来统计耗时(java中对应的是System.nanoTime),也就是说所有使用gettimeofday来统计耗时(java中是System.curre

    对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高 ...

  8. JXL导出Excel工具类

    将Excel中的数据读取到List<Map<String, Object>>集合中   package com.mvc.util;   import java.io.File; ...

  9. Ant-Design如何使用

    1.下载Node.js Node.js的版本需要不低于V4.x,本不在省略,如果需要出门左转Node.js安装教程. 查看Node.js版本: C:\Users\Administrator>no ...

  10. git查看某一个文件的修改历史

    git blame filename:显示整个文件的每一行的详细修改信息:包括SHA串,日期和作者. 其显示格式为: commit ID | 代码提交作者 | 提交时间 | 代码位于文件中的行数 | ...