搜索引擎系列1:什么是正向索引?什么是倒排索引?

原创 2015年07月10日 11:05:32

什么是正向索引、什么是倒排索引?

       正向索引(forward index),反向索引(inverted index)更熟悉的名字是倒排索引。

       在搜索引擎中每个文件都对应一个文件ID,文件内容被表示为一系列关键词的集合(实际上在搜索引擎索引库中,关键词也已经转换为关键词ID)。例如文档1”经过分词,提取了20个关键词,每个关键词都会记录它在文档中的出现次数和出现位置,得到正向索引的结构如下:

       “文档1”ID > 单词1:出现次数,出现位置列表;单词2:出现次数,出现位置列表;…………

       “文档2”ID > 此文档出现的关键词列表。

       当用户在主页上搜索关键词华为手机时,假设只存在正向索引(forward index),那么就需要扫描索引库中的所有文档,找出所有包含关键词华为手机的文档,再根据打分模型进行打分,排出名次后呈现给用户。因为互联网上收录在搜索引擎中的文档的数目是个天文数字,这样的索引结构根本无法满足实时返回排名结果的要求。

       所以,搜索引擎会将正向索引重新构建为倒排索引,即把文件ID对应到关键词的映射转换为关键词到文件ID的映射,每个关键词都对应着一系列的文件,这些文件中都出现这个关键词,得到倒排索引的结构如下:

       “关键词1”文档1”ID文档2”ID…………

       “关键词2”:带有此关键词的文档ID列表。



注:入门级理解,持续更新ing(时:2015.7.10)


版权声明:本文为博主原创文章,未经博主允许不得转载。

关于正向索引与反向索引

这一节我们来看看搜索引擎中最重要的几个数据结构。 前面我们说过索引包含正向索引和反向索引两部分,首先我们看看正向索引的结构。 正向索引用来存储文档的各种属性,从逻辑...
  • Virtual_Func
  • Virtual_Func
  • 2015年10月29日 21:10
  • 3850

正排索引和倒排索引

正排索引(正向索引) 正排表是以文档的ID为关键字,表中记录文档中每个字的位置信息,查找时扫描表中每个文档中字的信息直到找出所有包含查询关键字的文档。 正排表结构如图1所示,这种组织方法在建立索引的时...
  • zhangzeyuaaa
  • zhangzeyuaaa
  • 2015年09月23日 10:50
  • 13198

lucene 倒排索引、反向索引概念明晰

lucene中,一直在纠结什么叫倒排索引,为什么叫倒排索引,找了n个博客没有对该名词很透彻的解析,重于在知乎上中找到需要的答案: ------------------------------...
  • yygg329405
  • yygg329405
  • 2015年04月21日 21:27
  • 768

深入理解Oracle索引(5):反向索引的定义、缺点和适用场景

㈠ 定义                    建立一个反向索引将把每个列的键值(each column key value)按字节反向过来,对于组合键,列的顺序被保留,但每个列的字节都作了反向   ...
  • linwaterbin
  • linwaterbin
  • 2013年02月24日 19:13
  • 7183

正排索引(forward index)与倒排索引(inverted index)

一、正排索引(前向索引) 正排索引也称为"前向索引"。它是创建倒排索引的基础,具有以下字段。 (1)LocalId字段(表中简称"Lid"):表示一个文档的局部编号。 (2)WordId字段:表...
  • GarfieldEr007
  • GarfieldEr007
  • 2016年01月08日 11:53
  • 6244

倒排索引、正排索引系列一

1. 搜索引擎简介 搜索引擎顾名思义
  • caoshuming_500
  • caoshuming_500
  • 2014年04月17日 11:40
  • 13182

搜索引擎原理 – 正排索引、倒排索引以及齐普夫法则

http://www.tinysz.com/36.html 我们在提交一个关键字时,搜索引擎是如何快速定位到包含有此关键字的相关页面的?这就是索引系统的功劳,索引系统负责为关键字和网页建立对...
  • qq100440110
  • qq100440110
  • 2016年03月17日 21:11
  • 1372

搜索引擎-倒排索引基础知识

搜索引擎的索引 1.单词——文档矩阵        单词-文档矩阵是表达两者之间所具有的一种包含关系的概念模型,图3-1展示了其含义。图3-1的每列代表一个文档,每行代表一个单词,...
  • hguisu
  • hguisu
  • 2012年09月11日 19:49
  • 78817

倒排索引概念及完整实例

在计算机科学领域,倒排索引(也称为倒排文件)是一种存储了来自文本中的映射的索引数据结构。比如单词或者数字,对应到它们在数据库、一个文件或者一组文件中的位置。它是在文档检索系统中使用的最流行的数据结构,...
  • y396397735
  • y396397735
  • 2015年11月04日 23:59
  • 1564

正向索引、反向索引、B*Tree索引

索引就是为了更快的找出需要的信息。 一般都要进行排序。 正向索引----开发出来用来存储每个文档的单词的列表。实际上,时间、内存、处理器等等资源的限制,技术上正向索引是不能实现的。既:存储一个文档中有...
  • adanier
  • adanier
  • 2009年04月29日 21:20
  • 3286
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:搜索引擎系列1:什么是正向索引?什么是倒排索引?
举报原因:
原因补充:

(最多只允许输入30个字)