ELK日志分析平台——es-ik中文分词器
目录
1、环境配置(安装maven编译ik)
2、下载IK中文分词插件
3、测试是否生效
4、热更新ik词库
背景:
如果直接使用Elasticsearch默认分词器处理中文内容的搜索时,肯定会遇到很尴尬的问题——中文词语被分成了一个一个的汉字,当用Kibana作图的时候,按照term来分组,结果每一个汉字都被分成了一组。因此引入es之中文的分词器插件es-ik就能解决这个问题。
测试默认的分词对中文的支持
curl -H "Content-Type: application/json" -XGET 'http://master:9200/_analyze?pretty=true' -d '{"text":"我们是中国人"}'
结果是 我、们、是、中、国、人 不符合常规要求。
1、环境配置(安装maven编译ik)
[root@elk app]# tar zxvf apache-maven-3.3.9-bin.tar.gz
[root@elk app]# ln -s apache-maven-3.3.9/ maven
[root@elk app]# vi /etc/profile
export MAVEN_HOME=/app/maven
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$MAVEN_HOME/bin:$PATH
[root@elk app]# source /etc/profile
修改maven配置settings.xml
http://my.repository.com/repo/path替换为阿里云url
http://maven.aliyun.com/nexus/content/repositories/central
2、下载IK中文分词插件
https://github.com/medcl/elasticsearch-analysis-ik
#比对配置文件与ik版本是否一致,请提前修改避免日后报错重新编译
[root@elk elasticsearch-analysis-ik-6.6.1]# vi pom.xml
<elasticsearch.version>6.6.1</elasticsearch.version>
#使用maven进行源码编译
cd ik && mvn clean package -DskipTests
#将ik插件复制到es目录
[root@elk plugins]# cp /app/elasticsearch-analysis-ik-6.6.1/target/releases/elasticsearch-analysis-ik-6.5.0.zip /app/elasticsearch-6.6.1/plugins/ik/
[root@elk ik]# unzip elasticsearch-analysis-ik-6.5.0.zip
重启es
[es@elk bin]$ ./elasticsearch
3、测试是否生效
[root@elk ik]# curl -H 'Content-Type:application/json' -XGET http://192.168.198.136:9200/_analyze?pretty -d '{"analyzer": "ik_smart", "text": "我们是中国人"}'
结果是 我们、是、中国人
4、热更新ik词库
如果ik插件默认没有我们需要的分词规则,如新出的流行词汇,需要自行添加,热更新可以添加后自动更新词库避免频繁重启es
#部署http服务,安装tomcat
[root@elk app]# ll | grep tomcat
drwxr-xr-x 9 root root 4096 8月 15 23:59 apache-tomcat-7.0.67
#切换到 /app/apache-tomcat-7.0.67/webapps/ROOT
新建热词文件 vi hot.dic 然并卵
#确定可以正常访问
http://192.168.20.210:8080/hot.dic
#修改ES中ik插件的配置文件
vi /app/es/plugins/ik/config/IKAnalyzer.cfg.xml
添加如下内容
<entry key="remote_ext_dict">http://192.168.198.136:8080/hot.dic</entry>
#重启es
bin/elasticsearch
#以后需要添加新词语,直接添加到之前创建的/app/apache-tomcat-7.0.67/webapps/ROOT/hot.dic文件中
#此时,es会自动更新词典,日志如下:
[2019-08-16T00:55:23,553][INFO ][o.w.a.d.Monitor ] [KZsaE_I] try load config from /app/elasticsearch-6.6.1/config/analysis-ik/IKAnalyzer.cfg.xml
[2019-08-16T00:55:23,553][INFO ][o.w.a.d.Monitor ] [KZsaE_I] try load config from /app/elasticsearch-6.6.1/plugins/ik/config/IKAnalyzer.cfg.xml
[2019-08-16T00:55:23,695][INFO ][o.w.a.d.Monitor ] [KZsaE_I] [Dict Loading] http://192.168.198.136:8080/hot.dic
[2019-08-16T00:55:23,709][INFO ][o.w.a.d.Monitor ] [KZsaE_I] 然并卵
[2019-08-16T00:55:23,710][INFO ][o.w.a.d.Monitor ] [KZsaE_I] 阿姆斯特朗炮
[2019-08-16T00:55:23,710][INFO ][o.w.a.d.Monitor ] [KZsaE_I] 重新加载词典完毕...
ELK日志分析平台——es-ik中文分词器相关推荐
- 学习 ES 的笔记、全文检索、倒排索引、Lucene、ik中文分词器、Kibana使用Dev Tools
文章目录 感悟 新接触的单词 知识点一:ES是什么? 知识点二:ES基本概念 知识点三:1.1 什么是全文检索和Lucene? 知识点四:1.2 什么是倒排索引,Lucene实现全文检索的流程是怎样? ...
- 搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群
笔记内容:搭建ELK日志分析平台(上)-- ELK介绍及搭建 Elasticsearch 分布式集群 笔记日期:2018-03-02 27.1 ELK介绍 27.2 ELK安装准备工作 27.3 安装 ...
- ELK 日志分析平台 —— Logstash
ELK 日志分析平台 -- Logstash 文章目录 ELK 日志分析平台 -- Logstash Logstash 简介 Logstash的工作原理 [注]:Logstash file插件 sin ...
- 玩转ES,一文教你掌握IK中文分词器
前言 ES默认的分词器对中文分词并不友好,所以我们一般会安装中文分词插件,以便能更好的支持中文分词检索. 而ES的中文分词器中,最流行的必然是IK分词器. 一.IK分词器介绍 IK分词器在是一款基于词 ...
- 搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器
27.6 安装kibana 27.7 安装logstash 27.8 配置logstash 27.9 kibana上查看日志 27.10 收集nginx日志 27.11 使用beats采集日志 本文是 ...
- 企业项目实战---ELK日志分析平台之logstash数据采集(二)
ELK日志分析平台 logstash数据采集 1.logstash简介 2.Logstash安装 3.标准输入到标准输出 4.标准输入到文件 5.标准输入到es主机 6.指定文件输入到es主机 7.s ...
- python连接es_Elasticsearch --- 3. ik中文分词器, python操作es
一.IK中文分词器 1.下载安装 2.测试 #显示结果 {"tokens": [ {"token" : "上海","start_o ...
- ELK日志分析平台.1-搭建
ELK日志分析平台.1-搭建 2017-12-28 | admin 一.简介 1.核心组成 ELK由Elasticsearch.Logstash和Kibana三部分组件组成: Elas ...
- 使用Docker快速安装部署ES和Kibana并配置IK中文分词器以及自定义分词拓展词库
使用Docker快速安装部署ES和Kibana的前提:首先需要确保已经安装了Docker环境 如果没有安装Docker的话,可以参考上一篇的内容:Linux上安装Docker 有了Docker环境后, ...
- ELK日志分析平台-Elasticsearch搭建和异常处理
一.介绍 1.1. ELK日志分析平台 (1)不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写. ELK分别代表: Elasticsearch:负责日志检索和储存 Logstash:负责日 ...
最新文章
- 计算机网络 网络设备命令 数据链路层解析
- phpmyadmin 无法载入 mysql 扩展_phpMyAdmin“无法载入mysql扩展,请检查PHP配置”解决方法...
- AngularJS(1)——入门学习
- CF1131 G. Most Dangerous Shark(DP+单调栈优化)
- 用vscode编写静态页面_开发中实用的VSCode插件推荐
- hdu2795 Billboard 线段树
- fatal: could not read Username for 'https://github.com': No such file or directory
- 微信WeixinJSBridge API 屏蔽右上角分享等常用方法
- pdflush进程详解
- Everyone Piano键盘钢琴软件
- shell脚本的逻辑判断
- 面试官问我 RabbitMQ 消息如何插队?
- 计算机文管二级试题,计算机文管二级试题
- css如何将彩色图片变为黑白图片
- 基于Java毕业设计智慧茶园综合管理系统源码+系统+mysql+lw文档+部署软件
- 氧化锌@聚丙烯腈(ZnO@PAN)静电纺丝纳米纤维膜材料|金属有机框架材料ZIF-8@聚丙烯腈(ZIF-8@PAN)纳米纤维膜材料
- 把表中名为'诺基亚xxxx'的商品,改为'HTCxxxx',
- 银行智能风险防控系统(第二版)
- Java咖啡价格问题_【转】咖啡—根据咖啡品种选购杯具
- 【Quartz】Quartz概述及入门实例