ElasticSearch5.6.1 + 中文分词(IK)
在安装ElasticSearch 需要先安装java 的 jdk
可以通过 命令来确认是否已经安装了
java -version
如果没有安装可以使用 yum 直接安装通过。
先通过命令查看yum源中的 jdk版本
yum list |grep java |grep jdk
然后通过yum安装
yum install -y java-1.8.-openjdk
ElasticSearch安装
官网:https://www.elastic.co
1.ElasticSearch安装
1.1.下载tar包安装
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.tar.gz
tar -xzf elasticsearch-5.6..tar.gz
1.2.配置
先将解压后的目录文件移动到 /usr/share/elasticsearch 目录
mkdir /usr/share/elasticsearch #建立目录
mv ./elasticsearch-5.6./* /usr/share/elasticsearch/ 移动目录
进入config
cd /usr/share/elasticsearch/config
先配置 jvm.options
vim ./jvm.options
有一项
-Xms2g
-Xmx2g
这个设置 因为是虚拟机所以设置小一点 如下:
设置外网访问
vim elasticsearch.yml
如图 设置箭头的两个设置 为 0.0.0.0
1.3.启动
cd /usr/share/elasticsearch/config
./elasticsearch
发现启动失败
因为elasticsearch默认是不允许通过root用户启动的
解决方式建立一个es用户 通过es用户启动
useradd es
passwod es #设置密码
cd /usr/share/
chown -Rf es:es ./elasticsearch #设置所属用户
su es #切换用户
./elasticsearch/bin/elasticsearch
启动还是失败
错误提示:
解决方式
切换回root用户设置limits.conf 和 sysctl.conf
这两个配置
vim /etc/security/limits.conf
在加入
* soft nofile * hard nofile * soft nproc * hard nproc
编辑sysctl.conf
vim /etc/sysctl.conf
在最后加入
vm.max_map_count=
再次切换回es用户 启动 -d 标示后台运行
su es
/usr/share/elasticsearch/bin/elasticsearch -d
启动后访问curl localhost:9200 得到
{
"name" : "kfxmWFv",
"cluster_name" : "my-application",
"cluster_uuid" : "K04PdttQSpm1XCLRJIJXsA",
"version" : {
"number" : "5.6.1",
"build_hash" : "667b497",
"build_date" : "2017-09-14T19:22:05.189Z",
"build_snapshot" : false,
"lucene_version" : "6.6.1"
},
"tagline" : "You Know, for Search"
}
2 安装ik中文分词插件
2.1es5.5.1已上可以直接通过命令就可以安装了
/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.1/elasticsearch-analysis-ik-5.6.1.zip
重新启动 es 在安装时es是要关闭的。
2.2 将ik 插件 安装到 ElasticSearch中
创建索引m8:为索引(m8)及类型(logs)下的字段(message)设置分词器(分词器可选ik_smart或ik_max_word):
http put localhost:/m8 -d '{
"settings" : {
"analysis" : {
"analyzer" : {
"ik" : {
"tokenizer" : "ik_smart"
}
}
}
},
"mappings" : {
"logs" : {
"dynamic" : true,
"properties" : {
"message" : {
"type" : "string",
"analyzer" : "ik_smart"
}
}
}
}
}'
如果提示http put不存在看下面
案例
http://localhost:9200/m8/_analyze?analyzer=ik_max_word&text=南京市长江大桥
结果
参数说明:
ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合;
ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。
http put不存在问题:
yum install httpie
转载请注明来源 http://www.cnblogs.com/phpshen/p/6085274.html
最新文章
- Android性能优化之UncaughtExceptionHandler定制自己的错误日志系统
- mono中显示debug信息(filename/lineno)
- svn强制解锁的几种做法
- unzip 命令使用
- C#遍历hashtable
- 创业草堂之一:创业的Idea是怎样产生的?
- [DevExpress]ChartControl之饼状图百分比示例
- 捕获ClientDataSet.ApplyUpdates和SocketConnection异常
- .net程序在无.net环境下运行
- Git 安装配置手册
- vue router 修改title(IOS 下动态改变title失效)
- request&;response
- Java学习笔记38(字符流)
- vs2013——单元测试&;&; 性能图
- mysql之多表查询和pymysql模块
- JavaScript Boolean( new Boolean(false) ) 其实是true
- 求二叉树中第K层结点的个数
- ios开发之--使用xib适配iPhone X
- Andrew Ng-ML-第十二章-机器学习系统设计
- for each...in,for...in, for...of