6.ElasticSearch系列之倒排索引

1. 倒排索引简介

对于书通过目录查找对应章节内容的方式属于正排索引,而对于想查询文本,如我爱中国在书籍中出现的次数与具体位置,则是倒排索引的范畴。

2. 倒排索引核心组成
  • 单词词典(Term Dictionary)
    记录所有文档的单词,记录单词到倒排列表的关联关系。单词词典一般比较大,可以通过B+树或哈希拉链法实现,以满足高性能的插入和查询

  • 倒排列表(Posting List)
    记录了单词对应的文档集合,由倒排索引项组成:

    • 文档ID
    • 词频TF - 该单词在文档中出现的次数,用于相关性评分
    • 位置(Position) - 单词在文档中分词的位置。用于语句搜索
    • 偏移(Offset) - 记录单词的开始结束位置,用于高亮显示

ElasticSearch的JSON文档中的每个字段,都有自己的倒排索引。可以指定对某些字段不做索引,这样可以节省存储空间,但该字段无法被搜索

欢迎关注公众号算法小生沈健的技术博客

posted @ 2022-10-18 21:04  算法小生  阅读(25)  评论(0编辑  收藏  举报