文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。网学的各位小编整理了其他类别-基于.NET平台的LUCENE的搜索引擎的设计的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn | |||||||||||||||||||||||||||||||||||||||||||||||||
5.关键技术 5.1 LUCENE增量索引 LUCENE搜索与数据库搜索最大的不同之处就是为要搜索的内容建立了全文索引的机制 其他的一些搜索引擎只支持批量的索引,有时数据源有一点增加也需要重建索引,大部分的搜索(数据库)引擎都是用B树结构来维护索引,索引的重建会导致大量的IO操作,导致了搜索效率的下降, 而LUCENE可以通过对索引的文件进行增量索引,LUCENE不是维护一个索引文件,而是在扩展索引的时候不断创建新的索引文件,然后定期的把这些新的小索引文件合并到原先的大索引中(针对不同的更新策略,批次的大小可以调整),这样在不影响检索的效率的前提下,提高了索引的效率,我在开发自己的搜索引擎时也用到了增量索引,使我的搜索更加准确而高效。 5.2优化索引 LUCENE中提供了索引优化的方法,Indexwriter.optimize()方法可以为查询优化索引(index),优化主要是减少index文件数,这样让查询的时候少打开文件,优化过程中,LUCENE会拷贝旧的index再合并,合并完成以后删除旧的index,所以在此期间,磁盘占用增加, IO符合也会增加,在优化完成瞬间,磁盘占用会是优化前的2倍,在optimize过程中可以同时作search。 表5.1优化索引前后对比
以上这些数据是我从我们项目中的数据库里面的数据,从上面的表格中可以看出优化索引前后搜索时间的变化,另外当搜索数据量越大,优化索引的优势体现的越明显。另外索引文件的大小也变小为原来的一半左右。 目 录 1.绪论... 1 1.1课题背景... 1 1.2课题目前研究情况及存在问题... 2 1.3论文组织结构... 2 2.全文检索与LUCENE. 3 2.1全文检索与全文检索简介... 3 2.2全文检索系统与数据库比较... 4 2.3 LUCENE简介... 8 2.4 LUCENE的应用、特点及优势... 9 2.5互联网搜索引擎的研究... 10 2.6中文分词的简单介绍... 11 3.LUCENE系统结构... 12 3.1 LUCENE系统结构组织... 12 3.2 数据流分析... 12 3.3 LUCENE索引文件格式分析... 14 3.3.1 LUCENE源码实现分析的说明... 14 3.3.2 LUCENE索引文件格式... 14 3.4 LUCENE的倒排序原理... 17 3.5 LUCENE搜索结果排序... 20 4.系统设计与实现... 21 4.1系统需求... 21 4.2开发环境与工具... 22 4.3系统组织结构... 24 4.4流程实现... 25 4.4.1根据网站中不同模块建立生成动态索引... 25 4.4.2搜索界面... 26 4.4.3 搜索结果界面... 27 5.关键技术... 28 5.1 LUCENE增量索引... 28 5.2优化索引... 28 5.3 LUCENE文件格式的通用性... 29 5.4对于私密文件的处理... 31 总 结... 32 致 谢... 33 参考文献... 34 附录A 主要源程序... 35 | |||||||||||||||||||||||||||||||||||||||||||||||||
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT | |||||||||||||||||||||||||||||||||||||||||||||||||
本文选自计算机毕业设计http://myeducs.cn |