elk-elasticseach 笔记-es基础知识分词与IK分词器的安装

倒排索引

        对文档内容分词,对词条创建索引,并记录词条所在的文档信息,查询时先根据词条查询到文档id,而后获取到文档。

        文档:  es中每一条数据就是一个文档。

        词条:对文档中的内容进行分词,得到的词语就是词条

倒排索引存储图解:倒排索引查询图解

ES和mysql的的对比

         mysql:擅长事务类型操作,可以确保数据的安全性和一致性。

        elasticseach:擅长海量数据的搜索、分析、计算。

mysql

elasticseach0说明
tableindex索引,文档的集合,类似于数据的表
rowdocument文档,就是一条条的数据,类似于数据库的中的行,文档都是json格式。
columnfield字段,就是json文档中的字段,类似数据库的列
schemamapping映射,索引中的约束,例如字段类型的约束,类似数据库的表结构
sqlDSL

DSL是es的json风格请求语句,用来操作es,实现CRUD

ES使用http请求实现操作

分词

分词演示

POST /_analyze
{
  "analyzer":"standard",
	"text":"我是一名java程序员"
}

     POST:请求方式

  /_analyze:请求路径(索引),kibana会帮我们补充es的请求地址

请求参数,json风格:analuzer分词器类型,这里使用默认的standard分词器,text,要分词的内容

IK分词器下载安装

Releases · medcl/elasticsearch-analysis-ik · GitHubThe IK Analysis plugin integrates Lucene IK analyzer into elasticsearch, support customized dictionary. - Releases · medcl/elasticsearch-analysis-ikicon-default.png?t=N7T8https://github.com/medcl/elasticsearch-analysis-ik/releases

github下载老版本经常崩溃,可以在CSDN在中搜索下载

        下载完成后解压到es安装目录的 plugins 目录下,在plugins下创建IK分词器插件的文件存放目录,然后重启es就会自动加载IK分词器插件

ik分词器分词模式

        ik_smart:最少切分

        ik_max_word:最细切分

         ik_max_word的切分粒度大于ik_smart,会占用更大的内存,减少查询效率,但是搜索会更精确。

ik_smart切分效果ik_max_word切分效果

ik分词器词典配置

IK分词器插件的config目录:IKAnalyzer.cfg.xml 可以配置分词条件

<entry key="ext_dict"></entry> 里边配置dic文件,dic文件中书写分词条件,比如停止词典中配置一些语气助词。这样分词的时候就不会把这些词分出来。

配置停止词之前

配置停止词,重启es

重启后分词没有 “一个”了

  • 22
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值