Elasticsearch源码解读六:ES中的倒排索引

本文深入解析Elasticsearch中的倒排索引,包括分词过程、单词-文档矩阵概念、倒排索引的组成(单词词典和倒排列表)以及倒排索引的搜索过程,强调了选择合适分词器的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

Elasticsearch系列三:创建索引过程详解一文中,介绍了ES创建索引的流程。再流程中是调用Lucene的接口来创建索引的。本篇文章主要介绍ES中的索引——倒排索引

分词

在创建索引之前,会对文档中的字符串进行分词。ES中字符串有两种类型,keyword和text。

  • keyword类型的字符串不会被分词,搜索时全匹配查询
  • text类型的字符串会被分词,搜索时是包含查询

不同的分词器对相同字符串分词的结果大有不同,选择不同的分词器对索引的创建有很大的影响

如拆分“中华人民共和国国歌”

  1. ik_max_word分词器: 最细粒度拆分,分词结果如下:
    • 中华人民共和国
    • 中华人民
    • 中华
    • 华人
    • 人民共和国
    • 人民
    • 共和国
    • 共和
    • 国国
    • 国歌
  2. ik_smart分词器: 最粗粒度的拆分,分词结果如下:
    • 中华人民共和国
    • 国歌
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值