正排索引和倒排索引(搜索引擎)

本文介绍了搜索引擎中的两种索引方式——正排索引和倒排索引。正排索引以文档ID为主键,检索时需扫描所有文档,适合小规模数据。而倒排索引以词为主键,能快速定位到包含关键词的文档,适用于大规模数据。倒排索引虽然建立和维护复杂,但在搜索效率上远超正排索引。此外,还提到了词典数据结构对索引的重要性,如B+树、FST和跳跃表等。
摘要由CSDN通过智能技术生成

        在搜索领域,数据源产生后,就需要建立索引(Index),以便线上检索。索引的建立方式有正排和倒排。记文档为doc,关键字为word。看如下文档A,记文档ID为doc1:

The boy has great potential. His name is Peeta.

一、正排索引

        以文档ID为主键key,记录每个词及其出现的次数,检索时需要扫描表中每个文档里的词的信息,直到找到所有包含查询关键字的文档。对上述文档A建立正排索引的表结构如下:

       这种方式建立索引,结构简单,建立比较方便且易于维护。当有新的文档加入时,直接为该文档建立一个新的索引块,添加到原来索引的末尾,并分析词、词频、位置信息即可;如果有文档要删除,则找到该文档号对应的索引信息,将其删除。

        在搜索的时候基本上都是用关键词进行搜索。当我们搜索关键字“Peeta”,10000个文档中有10个文档包含“Peeta”这个关键字。由于正排索引是以文档ID为key建立索引的,就需要把这10000个文档都扫描一遍,检索到包含“Peeta”的10个文档。得到检索结果后,再进行排序rank,重排reRank等。这种方式检索效率较低,尤其是文档数量规模很大的时候(如现在互联

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值