ElasticSearch之 ik分词器详解
IK分词器
本文分为简介、安装、使用三个角度进行讲解。
简介
倒排索引
众所周知,ES是一个及其强大的搜索引擎,那么它为什么搜索效率极高呢,当然和他的存储方式脱离不了关系,ES采取的是倒排索引,就是反向索引;常见索引结构几乎都是通过key找value,例如Map;倒排索引的优势就是有效利用Value,将多个含有相同Value的值存储至同一位置。
分词器
为了配合倒排索引,分词器也就诞生了,只有合理的利用Value,才会让倒排索引更加高效,如果一整个Value不进行任何操作直接进行存储,那么Value和key毫无区别。分词器Analyzer 通常会对Value进行操作:一、字符过滤,过滤掉html标签;二、分词,英文安装空格将单词分开,中文通常采取高级算法进行分词,显然IK在这方面是做的最好的中文分词;三、单词加工,将大小写全部转换为小写。
IK分词器
IK分词器,提供两种颗粒度拆分(ik_smart ,ik_max_word)
- ik_smart(最粗粒度拆分)
- 分割的粒度较小
- ik_max_word(最细粒度划分)
- 分割的力度较大
代码测试
使用kinana发送请求
POST /_analyze
{"analyzer": "ik_smart","text":"我们一起吃饭"
}
//分词结果 我们 一起 吃饭POST /_analyze
{"analyzer": "ik_max_word","text":"我们一起吃饭"
}//分词结果 我们 一起 一 起 吃饭
总结:明显最细粒度划分的切割力度更大
安装
官网下载即可,要和ES版本对应,放到ES 的plugins文件夹下
使用
IK支持自定义扩展词典和停用词典,扩展词典的意思就是,将一些非关键词,设置为关键词;停用词典就是将一些默认的关键词,设置为非关键词
如何配置扩展词典与停用词典
打开ik目录下config/IKAnalyzer.cfg.xml
这里需要写入两个文件名 随便起,后缀要dic。
在config目录下 创建这两个文件 文档一行只可以写入一个值,具体格式如下
最后要重启ES服务 才可以生效
扩展词典测试
POST /_analyze
{"analyzer": "ik_max_word","text":"李小八"
}
//此时的分词结果是 李 小 八
//我们把李小八这个词添加到扩展词典dict.dic后 分词结果只有李小八
停用词典测试
POST /_analyze
{"analyzer": "ik_smart","text":"我们一起吃饭"
}//此时分词结果为 “我们” “一起” ”吃饭“
//但当我们配置到stopwords.dic 添加吃饭,分词结果就会变成 ”我们“ ”一起“
// 停用词典是不会作为关键字被显示的
ElasticSearch之 ik分词器详解相关推荐
- 2021年大数据ELK(八):Elasticsearch安装IK分词器插件
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 安装IK分词器 一.下载Elasticsearch IK分词器 ...
- 04.ElasticSearch之IK分词器的安装与使用
ElasticSearch之IK分词器的安装与使用 前言 安装 离线安装 在线安装 ik分词器测试 扩展(停用)词(典) 测试数据 概念 配置词典 1.修改配置文件 2.新建词典 3.自定义内容 4. ...
- docker、docker-compose 下安装elasticsearch、IK分词器
docker.docker-compose 下安装elasticsearch.IK分词器 文章目录 docker.docker-compose 下安装elasticsearch.IK分词器 1.整体版 ...
- elasticsearch安装ik分词器
elasticsearch安装ik分词器 1. 修改docker-compose.yml文件,对es目录下的plugins文件夹进行文件映射 version: "2.2" volu ...
- IK集成ElasticSearch,IK分词器的下载及使用
IK集成ElasticSearch,IK分词器的下载及使用 下载ElasticSearch 8.7.0网址:Download Elasticsearch | Elastic 历史版本地址:Past R ...
- 【Lucene】分词器详解,常用的分词器,IKANalyzer
[Lucene]分词器详解,常用的分词器,IKANalyzer 1. 分词器详解 1.1 分词器的作用 1.2 分词器API 1.2.1 示例 1.2.2 Analyzer 1.2.3 createC ...
- ansj中文分词器详解
ansj中文分词器详解 最近在做一个人工智能的项目,其中用到了分词功能.从网上找了一些java用于分词的工具,最终选择了ansj中文分词器.个人认为效果和功能是比较优秀的.本文将对ansj的所有功 ...
- “Elasticsearch + Kibana + ik分词器“介绍与使用
Elasticsearch 介绍 Elasticsearch 是一个分布式.RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例. 作为 Elastic Stack 的核心,它集中存 ...
- Elasticsearch(二) ik分词器的安装 以及 自定义分词
ik分词器作为elasticsearch的一个插件,则是安装在es插件中. ik分词器的安装 1,创建ik分词目录上传与es相同版本的ik分词器插件,不同版本可能es启动 报错 在elasticsea ...
最新文章
- 大数相乘--极简单的思路
- 如何优雅的研究 RGSS3 (七) 加入LOGO屏幕
- 奇迹暖暖登录一直显示服务器满,奇迹暖暖无法登录解决办法
- 给wxPython事件处理函数传递参数
- jquery Deferred
- mysql中用完即删用什么_MySQL使用和操作总结(《MySQL必知必会》读书笔记)
- 春节传统元素素材,帮助设计师完成中国风海报设计
- 利用k-means算法解决简单的无监督图像识别任务
- LXC源码编译测试(五)
- 每日一句20191224
- 计算机无法对光盘格式化,使用驱动器X:中的光盘之前需要将其格式化,是否需要将其格式化?...
- 【梳理】离散数学 第10章 群与环 10.2 子群与群的陪集分解
- TwoSampleMR:local clump(MR-Base exceeded 300 seconds)
- 翟菜花:当防沉迷遇到职业电竞,我们能怎么办?
- linux运行ktr文件,Linux下用命令來執行kettle文件資源庫的文件ktr與kjb的方法
- 祛除体内湿气的最佳方法 713.html,祛除体内湿气七种有效泡水方法
- IntelliJ IDEA注释字体形式修改
- HTML中的 a标签
- 对谷歌输入法的几点疑虑
- java根据ip反查地理位置的实现方法