论文部分内容阅读
随着互联网网页数量的日益增多,如何提高搜索引擎的效率是近些年学术界及工业界都在极力解决的问题。搜索引擎的基本检索数据结构是倒排索引,近几年,许多研究都专注于提升倒排索引的压缩率和求交效率。目前,主流搜索引擎的倒排索引使用的是算术编码技术,文法压缩算法在倒排索引上的应用并不广泛。本文探讨并改良了一种适用于倒排索引的文法压缩技术,在兼顾倒排索引压缩率的同时,设计了适用于文法压缩的高效的求交算法。 本文的具体工作包括以下几个方面: 第一,本文系统地回顾了倒排索引的压缩及求交算法,并将文档重排技术也纳入了研究讨论的范围,对现有的重排技术进行了总结。倒排索引的链表中有许多重复的文档序列,传统的算术编码算法在压缩和求交过程中并没有使用这些信息。本文利用文法压缩算法对倒排列表之间的重复序列进行了抽取,并将其应用到了倒排索引的求交过程之中。 第二,本文设计了基于文法压缩的倒排索引求交算法,并为优化求交效率改良了索引格式。在文法压缩算法的压缩过程中,会将重复的序列集中存储到字典中,并用Pattern(产生式)代表某一段重复的序列。其中归约产生的 Pattern和字典都是传统求交技术中没有的元素。本文针对这些新的列表元素设计了搜索算法,设计了适用于文法压缩的求交算法,并针对求交过程优化修改了文法压缩的归约过程。 第三,本文对文法压缩后的倒排列表的求交效率进行了优化。不仅使用了传统的求交技术优化,还加入了文档重排、Run-Length等相关技术。本文通过这些手段优化了文法压缩下的倒排索引求交算法,使其求交效率有了较明显的提高。同时本文在GOV2数据集上对优化后的求交算法进行了测试,通过实验证明了本文提出的求交算法可以有效地提升查询处理的效率。