ElasticSearch5中文分词(IK)

ElasticSearch安装

官网:https://www.elastic.co

1.ElasticSearch安装

1.1.下载安装公共密钥

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

1.2.在 /etc/yum.repos.d/ 目录下建立 elasticsearch.repo 文件

vim /etc/yum.repos.d/elasticsearch.repo

在文件中写入:

[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

保存退出

1.3.使用yum安装

yum install elasticsearch

1.4.添加系统服务

chkconfig --add elasticsearch
service elasticsearch start  //启动
service elasticsearch stop //关闭
service elasticsearch status//查看状态

启动后访问 localhost:9200  得到

{
"name" : "Cp8oag6",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
"version" : {
"number" : "5.0.1",
"build_hash" : "f27399d",
"build_date" : "2016-11-21T09:51:41.449Z",
"build_snapshot" : false,
"lucene_version" : "6.2.1"
},
"tagline" : "You Know, for Search"
}

2 安装ik中文分词插件

2.1 ik git地址 https://github.com/medcl/elasticsearch-analysis-ik

克隆ik

git clone https://github.com/medcl/elasticsearch-analysis-ik
git checkout tags/v5.0.1 切换版本 版本号可以修改

2.2 通过java工具打包

mvn package

如果提示 mvn 不存在看下面

打包后  在  target/releases/  这个路径下面 有一个 elasticsearch-analysis-ik-{version}.zip 这个文件  将这个压缩文件复制到  ElasticSearch 下plugins/ik 目录下 然后解压

我的 plugins 目录是  /usr/share/elasticsearch/plugins  这个路

建立 ik 目录

mkdir /usr/share/elasticsearch/plugins/ik

复制文件

cp  ./target/releases/elasticsearch-analysis-ik-{version}.zip  /usr/share/elasticsearch/plugins/ik

解压

cd /usr/share/elasticsearch/plugins/ik
unzip elasticsearch-analysis-ik-{version}.zip

2.3 将ik 插件 安装到 ElasticSearch中

创建索引m8:

http put 'http://localhost:9200/m8'

如果提示http put不存在看下面

为索引(m8)及类型(logs)下的字段(message)设置分词器(分词器可选ik_smart或ik_max_word):

http put localhost:9200/m8 -d '{
"settings" : {
"analysis" : {
"analyzer" : {
"ik" : {
"tokenizer" : "ik_smart"
}
}
}
},
"mappings" : {
"logs" : {
"dynamic" : true,
"properties" : {
"message" : {
"type" : "string",
"analyzer" : "ik_smart"
}
}
}
}
}'

案例

http://192.168.199.115:9200/m8/_analyze?analyzer=ik_max_word&text=南京市长江大桥

结果

参数说明:

ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合;

ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。

mvn 不存在看下面 解决:

1.安装java的jdk

官网下载地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载rpm包:

wget  http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm?AuthParam=1479708556_19e817839b0ee72d40569ae8a23689d0

安装:

rpm  -ivh jdk-8u111-linux-x64.rpm

设置环境变量:

vim  /etc/profile

在最后添加

JAVA_HOME=/usr/java/jdk1.8.0_111
JRE_HOME=/usr/java/jdk1.8.0_111/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

立即生效:

source /etc/profile

验证:

 java -version

安装 maven 就是 mvn 命令 他需要java 才能运行

wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
yum -y install apache-maven

http put不存在问题:

yum install httpie

转载请注明来源 http://www.cnblogs.com/phpshen/p/6085274.html


 
分类: linux

ES5中文分词(IK)的更多相关文章

  1. ElasticSearch5中文分词(IK)

    ElasticSearch安装 官网:https://www.elastic.co 1.ElasticSearch安装 1.1.下载安装公共密钥 rpm --import https://artifa ...

  2. ElasticSearch5.6.1 + 中文分词(IK)

    在安装ElasticSearch 需要先安装java 的 jdk 可以通过  命令来确认是否已经安装了 java -version 如果没有安装可以使用 yum 直接安装通过. 先通过命令查看yum源 ...

  3. elasticsearch 口水篇(8)分词 中文分词 ik插件

    先来一个标准分词(standard),配置如下: curl -XPUT localhost:9200/local -d '{ "settings" : { "analys ...

  4. java中调用ElasticSearch中文分词ik没有起作用

    问题描述: 项目中已经将'齐鲁壹点'加入到扩展词中,但是使用客户端调用的时候,高亮显示还是按照单个文字分词的: 解决方案: 1.创建Mapping使用的分词使用ik 2.查询使用QueryBuilde ...

  5. 为Elasticsearch添加中文分词,对比分词器效果

    http://keenwon.com/1404.html Elasticsearch中,内置了很多分词器(analyzers),例如standard (标准分词器).english(英文分词)和chi ...

  6. Ubuntu16.04下安装elasticsearch+kibana实现php客户端的中文分词

    1.下载安装java, elasticsearch和kibana apt-get install default-jre default-jdk wget https://artifacts.elas ...

  7. Elasticsearch 中文分词(elasticsearch-analysis-ik) 安装

    由于elasticsearch基于lucene,所以天然地就多了许多lucene上的中文分词的支持,比如 IK, Paoding, MMSEG4J等lucene中文分词原理上都能在elasticsea ...

  8. 为 Elasticsearch 添加中文分词,对比分词器效果

    转自:http://keenwon.com/1404.html 为 Elasticsearch 添加中文分词,对比分词器效果 Posted in 后端 By KeenWon On 2014年12月12 ...

  9. Lucene开发实例:Lucene中文分词(转载)

    1.准备工作下载lucene 3.6.1 : http://lucene.apache.org/下载中文分词IK Analyzer: http://code.google.com/p/ik-analy ...

随机推荐

  1. MySQL数据库有哪些安全相关的参数需要修改?

    https://dev.mysql.com/doc/refman/5.7/en/security-options.htmlhttps://dev.mysql.com/doc/refman/5.7/en ...

  2. C# -- 使用XmlDocument或XDocument创建xml文件

    使用XmlDocument或XDocument创建xml文件 需引用:System.Xml; System.Xml.Linq; 1.使用XmlDocument创建xml(入门案例) static vo ...

  3. Java入门(五):控制流程

    在Java中,使用条件语句和循环结构确定控制流程,在本文中,主要包括块作用域.条件语句.循环结构.中断循环这四部分. 一.块作用域 块,也叫复合语句,是指由一对大括号括起来的若干条Java语句.块决定 ...

  4. March 08th, 2018 Week 10th Thursday

    Easy come, easy go. 易得则易失. Easy come, easy go, I finally undestand the phrase through somewhat hard ...

  5. js屏蔽/过滤 特殊字符,输入就删除掉,实时删除,

    原文:http://niuxiaoxia870563296.iteye.com/blog/1828189 1.替换方法: <input type="text" class=& ...

  6. python六十八课——网络编程之UDP协议

    1.1 概述 UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接.简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据,同样接收端在收到 ...

  7. python六十七课——网络编程(基础知识了解)

    网络编程: 什么是网络编程? 网络:它是一种隐形的媒介:可以将多台计算机使用(将它们连接到一起) 网络编程:将多台计算机之间可以相互通信了(做数据交互) 一旦涉及到网络编程,划分为两个方向存在,一方我 ...

  8. WPF 格式化输出- IValueConverter接口的使用 datagrid列中的值转换显示

    以前在用ASP.NET 做B/S系统时,可以方便地在GRIDVIEW DATAList等数据控件中,使用自定义的代码逻辑,比如 使用 <%# GetBalance(custID) %> 这 ...

  9. 【转】如何修改 video 样式

    我们这里说的“修改 video 样式”并不是要自己实现一套 controls,而是尝试修改 video 的默认样式 隐藏全屏按钮 这个很容易查到 video::-webkit-media-contro ...

  10. Zookeeper系列一:Zookeeper介绍、Zookeeper安装配置、ZK Shell的使用

    https://www.cnblogs.com/leeSmall/p/9563547.html 一.Zookeeper介绍 1. 介绍Zookeeper之前先来介绍一下分布式 1.1 分布式主要是下面 ...