倒排索引和正排索引的区别

data structuredatabasefile system更新于 2026/1/8 16:52:17

倒排索引和正排索引是用于在单个或多个文档中搜索文本的数据结构。

倒排索引

倒排索引将单词存储为索引,将文档名称存储为映射引用。

正排索引

正排索引将文档名称存储为索引,将单词存储为映射引用。

以下是倒排索引和正排索引之间的一些重要区别。

Sr. 关键词倒排索引正排索引
1映射模式倒排索引将单词存储为索引,将文档名称存储为映射引用。正排索引将文档名称存储为索引,将单词存储为映射引用。
2索引构建流程
  • 扫描文档,准备一个唯一词列表。

  • 准备所有唯一词的索引列表,并将其映射到文档搜索中。

  • 对所有文档重复上述步骤。

  • 扫描文档,准备一个唯一词列表。

  • 将所有词映射到文档作为索引。

  • 对所有文档重复上述步骤。

3索引在倒排索引中索引,索引速度很慢,因为在准备索引之前必须检查每个单词。在正向索引中,索引速度很快,因为找到关键字后会附加关键字。
4搜索在倒排索引中,搜索速度很快。在正向索引中,搜索速度很慢。
5示例
Word Documents
-------------------------
Welcome doc1
Hello doc1, doc3
Hi doc2
-------------------------
Word Documents
-------------------------
doc1 Welcome, Hello
doc2 Hi
doc3 Hello
-------------------------
6重复性在倒排索引中,索引中不存储重复的关键字。在正向索引中,重复的关键字可以出现在索引中,例如"Hello"。
7现实生活中的例子索引末尾的词汇表,反向查找。本书开头的目录,DNS 查找。