基于Lucene的垂直搜索引擎设计与实现

时间:2022-08-11 10:41:36

基于Lucene的垂直搜索引擎设计与实现

摘 要 为了提高人们在大数据时代能够快速的利用简单的搜索引擎去找到自己的信息,设计了一个使用方便的搜索系统。在通用搜索引擎的基础上,使用了比较先进的多线程的办法来管理多个线程来实现管理线程的办法,最后实现了利用信息的搜索去完成自己的方案。设计的系统,可以为搜寻特定的信息提供很好的支持。

【关键词】jsp 垂直搜索引擎 多线程

21世纪最最主要的发明是计算机的出现,而在由计算机组成的庞大的网络中最重要的是信息。有这样一种说法:在这个世纪,谁掌握的信息量大,谁就能够有一番作为;由此可见信息的重要性。但信息又是什么?信息是用来消除随机不定性的东西。那又如何在互联网的庞大的信息量中如何精确的找到自己想要的信息是我们迫在眉睫的事情。传统的通用搜索引擎已经不能够满足人们日益增长的需要;使得对于特定的信息用特定的搜索引擎如春日的竹笋般快速成长。基于这样的情况,结合compass,开发了基于Lucene的垂直搜索引擎。

对于搜寻特定的信息的搜索引擎的讨论一直是各个研究者的主要话题之一。特定的搜索引擎的出现使得我们解决了常规搜索引擎中出现的一些问题,提高了人们的查询质量。对于社会的进步有很大的帮助作用。

1 系统设计

1.1系统构建与业务流程

垂直搜索引擎系统以web应用系统为基础平台。利用Lucene实现的索引库和Heritrix网络爬虫来实现信息的定位与信息的查找,以及实现对搜索到的信息进行分析和存储;利用前台的web应用来实现信息的展现和分类,并实现对所得信息的分析显示以及结构化显示与界面的美观化。以多态性为核心,针对多个进程的查找的快速的、高效的实现信息的查找业务。如图1所示。

1.2 功能模块设计

(1)信息更新模块。该模型包括了网络爬虫会自动更新索引库中商品的信息内容。

(2)多线程抓取模块。改模块采取多个线程同时抓取网络中的资源,使得我们能够更快的更新索引库中的信息,并且有利于资源的管理。

(3)使用开源的compass的搜索引擎框架模块。改框架提供了一套开源的、高性能的、可灵活配置的搜索框架,从而为用户的应用程序提供搜索功能。

(4)排序、过滤和分页模块。对检索的结果进行排序,把优先度高的内容首先展现出来等。

(5)Word、excel、pdf的处理模块。网络爬虫通过对抓取的信息进行整理;使得我们的信息更加结构化。

(6)索引库模块。主要包括是否建立索引、是否存储、是否分词;另外要注意的是在索引的建立和索引的读取是使用的分词方式一定要一致;防止采用不同的分词方式所造成的分词展现不同。

1.3 数据库设计

为了提高搜索引擎的检索效率,将爬取到的数据格式化后存入数据库中。目前采用的数据库管理系统是MySql5.0,设计的实体表格主要有两个,一个是商品的详细信息列表,包括商品编号、商品名称、分类、价格、厂家、上市时间、品牌等31个字段。另一个是购买评价记录,包括系统编号、商品编号、评价信息等字段。

2 基于Lucene的垂直搜索引擎的实现

采用开源lucene组件以及eclipse开发环境对垂直搜索引擎系统进行开发。

2.1 数据基础

21世纪最重要的是信息。信息是用来消除随机不定性的东西。而目前的像百度等这样的大型的通用搜索引擎虽然可以解决一些信息的查询问题;但不能够很精确的查找到特定的商品;故使得社会上对于特定的搜索引擎的需求量急剧增加。为了使得本文有一个更加良好可行的应用环境,我们需要建立合适的索引库。首先对搜索到的信息是否建立索引、是否存储索引等问题有一个概念模型;并对索引搜索到的信息的存储在一个特定的路径下,方便下次的查找。其次,索引库的设计可以实现对jsp页面的查询提供一个可靠的服务。另外,在建立索引库之前需要做好一系列的准备工作,如寻找一两个主要的信息来源目标网站作为垂直搜索引擎的入口等。

2.2 系统运行实例

系统界面主要的功能是对特定商品的查询;通过爬取多个电子商务网站的同一类商品或同一种商品,给用户展示出商品贪信息的对比,尤其是对用户评价的对比,为购买者推荐出性价比最高的商品。通过测试10000条商品信息与15000条商品购买评价记录,基于Lucene的垂直搜索引擎可以很好地为用户推荐出性价比较高的商品。在搜索列表展示时,主要使用开源的compass的搜索引擎框架模块、排序、过滤和分页模块,并记录下用户的搜索行为,分析用户的个性特征,将用户对商品的浏览次数,购买情况作为修改化推荐列表(猜您喜欢)的排序权重,将与购买者最相关的商品排在前面,方面购买者定位,节约检索的时间。

3 结束语

通过使用开源的Lucene搜索引擎工具和j2ee技术开发的搜索引擎系统稳定易行;能够使人们在此搜索引擎中获得他们想要的精确的信息;可以减少他们的分析信息的时间;帮助他们在这个大数据时代中快速的利用信息。

垂直搜索引擎是基于Lucene的垂直搜索引擎的实现的具体实法,采用了多线程抓取网页的方法抓取信息,大大的增强了系统的处理信息的速度,研发的基于Lucene的垂直搜索引擎可以为购买者推荐出合适的商品。

参考文献

[1]文必龙,唐苏龙,张浩.主题搜索引擎征模型技术的研究[J].计算机技术与发展,2013.23(4):87-90.

[2]史宝明,贺元香,吴崇正.主题搜索引擎中爬虫搜索策略的研究[J].计算机工程与应用,2014,50(2):116-119.

作者单位

贵州师范学院数学与计算机科学学院 贵州省贵阳市 550018

上一篇:浅谈计算机网络安全及应对策略 下一篇:基于分布式并行关联规则的挖掘算法