论文部分内容阅读
                            
                            
                                信息的快速增长促使搜索引擎的迅速发展。通用搜索如Google、Baidu已取得很大成功,然而,一方面它们的技术严格保密,另一方面,开发人员不可能将庞大的通用搜索引擎无缝地嵌入到自己的应用程序中;此外,缺乏对中文支持良好的开源搜索引擎。为此,本文研究并实现了一种新的中文全文检索平台。该平台具有高性能、架构灵活等特点。它既可以很方便地应用于各种动态数据环境的实际领域,也可以用来构建信息检索的实验系统。本文的主要研究工作如下:1.针对传统最大正向匹配算法的效率较低和灵活性差的问题,提出了一种改进算法。该算法采用了基于HASH和TRIE树的词典结构,使分词效率提高了约200%。同时,该算法摆脱了传统最大正向匹配算法的固定最大词长度限制,具有更好的灵活性。2.针对传统索引结构难以满足动态数据环境的不足,本文提出一种新的索引创建方案。该方案主要包括:(1)分级的倒排索引组织结构和链式存储方式,能够很好地解决索引动态增长要求;(2)基于动态平衡树的索引合并策略;(3)可配置的限制性指数分配策略,提高了索引内存利用率和分配效率;(4)基于d-gap的差量压缩算法,使索引文件大小减少了75%,从而减少I/O次数,提高系统性能。3.基于前面提出的分词算法和索引创建方案,采用C++面向对象设计思想以及工厂模式等设计模式,设计和实现一个架构灵活、扩充性良好的全文检索平台,系统平台主要包括索引子系统,检索子系统,存储子系统和插件管理子系统,以及内存管理组件。4.利用该平台设计和实现一个实用的商用搜索引擎系统。该搜索引擎提供用户对网络监控数据的搜索。为各种类型(文本、html、email、office文档、pdf文档等)的监控数据创建大容量索引,提供基于内容分类的高性能查询。该系统投入实际使用半年多所取得显著的成效也很好地证明检索平台的高效性。