2 Elasticsearch 篇之倒排索引与分词

本文详细介绍了Elasticsearch中的倒排索引原理,包括正排索引与倒排索引的区别,倒排索引的查询流程及组成,以及分词的概念和过程。同时,讲解了内置的分词器如Standard Analyzer,Simple Analyzer等,并探讨了中文分词的挑战和解决方案,如IK,jieba等。此外,还讨论了如何自定义分词器,包括CharacterFilter,Tokenizer和TokenFilter的使用。
摘要由CSDN通过智能技术生成

书的目录与索引

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
书与搜索引擎是相似的。
  ·目录页对应正排索引
  ·索引页对应倒排索引
搜索引擎
  ·正排索引
   -文档Id到文档内容、单词的关联关系
  ·倒排索引
   -单词到文档Id的关联关系

正排与倒排索引简介

正排索引
  -文档Id到文档内容、单词的关联关系
在这里插入图片描述
·倒排索引
  -单词到文档Id的关联关系
在这里插入图片描述

在这里插入图片描述
倒排索引-查询流程
·查询包含"搜索引擎"的文档
  -通过倒排索引获得"搜索引擎"对应的文档Id有1和3
  -通过正排索引查询1和3的完整内容
  -返回用户最终结果

倒排索引详解

倒排索引组成:
  倒排索引是搜索引擎的核心,主要包含两部分:
   -单词词典( Term Dictionary)
   -倒排列表( Posting List )
倒排索引一单词词典
  ·单词词典( Term Dictionary )是倒排索引的重要组成
   -记录所有文档的单词,一般都比较大
   -记录单词到倒排列表的关联信息
   
·单词字典的实现一般是用B+ Tree ,示例如下图:
   -下图排序采用拼音实现,构造方法参见如下网址
    https://www.cs.usfca.edu/~galles/visualization/BPlusTree.html
在这里插入图片描述
倒排索引-倒排列表
·倒排列表( Posting List )记录了单词对应的文档集合,由倒排索引项( Posting )组成

·倒排索引项( Posting )主要包含如下信息:
  -文档Id ,用于获取原始信息
  -单词频率( TF, Term Frequency ) ,记录该单词在该文档中的出现次数,用于后续相关性算分
  -位置( Position ) ,记录单词在文档中的分词位置(多个) ,用于做词语搜索(Phrase Query)
  -偏移( Offset ) ,记录单词在文档的开始和结束位置,用于做高亮显示·
以“搜索引擎”为例

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值