毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

C#+Ajax站内搜索引擎系统的设计与实现+Lucene(2)

时间:2016-12-21 10:55来源:毕业论文
目前已经有很多应用程序的搜索功能是基于 Lucene 的,比如 Eclipse 的帮助系统的搜索功能。Lucene 能够为文本类型的数据建立索引,所以你只要能把你要索引


目前已经有很多应用程序的搜索功能是基于 Lucene 的,比如 Eclipse 的帮助系统的搜索功能。Lucene 能够为文本类型的数据建立索引,所以你只要能把你要索引的数据格式转化成文本,Lucene 就能对你的文档进行索引和搜索。比如你要对一些 HTML 文档,PDF 文档进行索引的话你就首先需要把 HTML 文档和 PDF 文档转化成文本格式的,然后将转化后的内容交给 Lucene 进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后根据用户输入的查询条件在索引文件上进行查询。不指定要索引的文档的格式也使 Lucene 能够几乎适用于所有的搜索应用程序。
3系统的设计与实现
3.1需求分析
1、功能需求
本设计要实现的功能:
能够对Internet上的网页内容、标题、链接等信息按链式收集。
能够实现一定链接深度的网页收集,也就是在Internet上实现一定的URL级的数据收录。
对收集到的数据存入MSSQL Server 2000等关系型数据库中、或者存入文本文件中。
网站信息库中的信息会不断的变动,对收集到的数据需要定期的自动文护,做到定期的删除、从新收集。
对收集到的数据进行关键词的检索。
对检索出的数据要可定位性,即可以显示对数据的出处的链接。
实现中英文分词功能,能够按中文或者英文单词检索数据。
实现无刷新的显示搜索结果,对搜索用时的计算、显示,关键字高亮显示等。
2、性能需求
(1)精度:
对收集到的信息需要一定的完整性,即对链接层次里的每个链接页面都能够收集得到,并写入收集的存储区里。
对搜索出的内容需要包含有关键字信息
(2)时间特性要求:
数据收集时,因为是对Internet网上Web信息的收集,并且采用URL级链式的网页收集。收集数据时不能够出现无响应的等待。
搜索时响应时间应不超过3秒,无论搜索的记录多少。
(3)灵活性
具有良好的中文切词功能。
3.2方案设计
1、搜索引擎模型
模型包括爬虫、索引生成、查询以及系统配置部分。爬虫包括:网页抓取模块、网页减肥模块、爬虫文持模块。索引生成包括:基于文本文件的索引、基于数据库的索引。查询部分有Ajax、后台处理、前台界面模块。如图1所示。
 
图1 系统模块
2、模块设计
该模型按照功能划分为三个部分,一是爬虫抓取网页部分,二是从数据库建立索引部分,三是从前台页面查询部分。系统实现的主要业务(如图2)。
 
图2 功能流程图

3.3系统主要功能实现    
1、网页爬虫搜索页面模块    
在网页爬虫Console端应用程序里输入一个有效的URL后这部份就开始从第一个URL开始遍历相关的链接并把相关的信息写入到网页数据存储数据库里,然后就由索引生成程序读取网页数据存储数据库,对每条记录生成索引记录,存放于生成的索引库文件里。生成索引需要调用Lucene.Net类。索引生成后查询部分就能够在网页上输入关键字,对刚才抓取的信息查询。并可以定位到信息的出处。如图3所示。
                        写入             读取        

                                       生成
 
                                        生成 C#+Ajax站内搜索引擎系统的设计与实现+Lucene(2):http://www.youerw.com/jisuanji/lunwen_1379.html
------分隔线----------------------------
推荐内容