1.什么是倒排索引
倒排索引源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引。
带有倒排索引的文件我们称为倒排索引文件,简称倒排文件
(inverted file)
。
2.实例
下面利用一个例子来说明倒排索引:
比如说有两个文档,
doc1
和
doc2
他们的内容分别如下:
Doc1: VerRan is good boy
。
Doc2: Are you VerRan?
如果按照正常的索引建立如下所示:
文档名
关键字
次数
Doc1
VerRan
1
Doc1
is
1
Doc2
VerRan
1
Doc2
Are
1
……
这里索引的建立是以文档为标准的,这样当文档很多的时候数据量将非常的大,检索效率会明显下降的。
倒排索引是以单词为标准来进行索引的建立的。
还以上面的
doc1
和
doc2
为例:
关键字
出现的文档
次数
VerRan
doc1 doc2
1 1
Is
doc1
1
Are
doc2
1
…….
3.总结
通过比较可以发现,一般的索引结构建立的是一种“文档到单词”的映射关系,而倒排索引建立的则是一种“单词到文档”的映射关系。因为在日常的检索中,通常都是按照关键字进行搜索的,所以,倒排索引可以更好地适合这种检索机制的需要。这也是倒排索引如今被大规模使用的原因<o:p></o:p>
分享到:
相关推荐
本系统源码是个人原创文章系列,程序员编程艺术第二十六章:基于给定的文档生成倒排索引的编码与实践的整个工程源码 look:http://blog.csdn.net/v_july_v/article/details/7109500 windows下VS2010,linux环境下皆...
c++倒排索引算法
倒排索引(英语:Inverted index),也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。 ...
对所给的Tweets数据集建立倒排索引; 实现Boolean Retrieval Model,使用TREC 2014 test topics进行测试; Boolean Retrieval Model中支持and, or ,not,查询优化可选做;
hadoop倒排索引,注意参数的设置,可以在eclipse中直接编辑
基于hadoop集群系统(也可以在伪分布式系统上运行)系统使用Java编写的倒排索引实现,具有使用停词表功能,使用正则表达式选择规范的单词。代码重构了setup(),map(),combiner(),partitation()和reducer()函数,...
倒排索引
这是山东大学大数据实验二,用Hadoop实现文档的倒排索引
建立倒排索引的重要核心代码,介绍代码中的核心思想并且附上了流程图,通过解释和图形展示更好了解
MapReduce操作实例-倒排索引.pdf 学习资料 复习资料 教学资源
倒排索引源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(inverted ...
基于MapReduce的简单倒排索引的建立
读入文本集,建立倒排索引,内含有的TXT文本可以替换,源代码可以直接运行
大数据实验报告Hadoop编程实现InvertedIndex文档倒排索引程序附源码.doc
从财经新闻网页数据开始,进行正文提取、中文分词、倒排索引构建、执行搜索和UI。 要求技术:MapReduce或Spark;执行搜索和UI采用Spark或Java 步骤: (1)新闻正文提取,采用正则表达式提取指定网站栏目新闻的标题...
倒排索引的java实现,对于已经转化为txt的网页文档使用IK分词,然后建索引
倒排索引如何建立 以及如何压缩
针对SSE-1密文检索方案的一些性能缺陷,采用不同的加密策略,在lucene倒排索引的基础上,设计了密文倒排索引Crypt-Lucene,同时结合云计算特点,设计了并行构建Crypt-Lucene方案,理论分析了方案的性能,并通过实验...
针对自适应分段压缩ASCS算法进行了研究,对于ASCS算法中采用的均匀分段方式并非最优分段问题,提出以人工蜂群算法优化ASCS算法中的分段方式;...通过对比实验证明,优化改进后的算法可以较显著地压缩倒排索引。