毕业以后在网页搜索组,所以抽空就看看了《这就是搜索引擎--核心技术详解》,书比较白话文,对于我这样的入门小白再合适不过了,还有一本《信息检索导论》比较系统和专业化,感兴趣的可以买来看看。
海量的网页数据,如何快速的找到包含用户查询的所有网页至关重要,如同我们拿到一本很厚的书时,如果没有目录,我们可能要花费很长的时间找自己需要的内容,但是有了目录,我们就能快速定位,这里的目录就相当于索引的功能。常见的搜索引擎索引是倒排索引,倒排索引是单词到文档映射关系的最佳实现方式,应用最为广泛。
倒排索引
倒排索引是单词-文档举证的一种存储方式。通过倒排索引可以快速根据单词找到包含这个单词的所有文档。
如上图所示,倒排索引主要由单词词典和倒排文件组成,单词词典存放在内存中,是组成所有文档的单词的集合,单词词典内的每条索引项记载了单词本身的一些信息和指向倒排列表的指针,通过这个指针就可以找到对应的倒排列表,而倒排列表记载了出现过某个单词的所有文档的文档列表和单词在文档中出现的位置信息,每条记录称为倒排向项。而倒排文件是倒排列表在磁盘上的物理存储。
以下是三种倒排索引