分布式多搜索引擎系统的研究与实现 - 更专、更深、更强--从Scirus看搜索引擎的发展 刘海霞,李后卿,

更专、更深、更强--从Scirus看搜索引擎的发展 刘海霞,李后卿,
搜索引擎虽已成为互联网上最重要的工具之一,但目前的搜索引擎存在一定的不足.现介绍一种专业搜索引擎Scirus,分析其分布式多搜索引擎系统的研究与实现 A multi-search engine technology [微计算机信息 Control & Automation] 陈旭春
http://www.ilib.cn/Abstract.aspx?A=yxqbgz200406010

搜索引擎的Linkflux技术 Linkflux Technology for Search Engine-..
体现搜索引擎高度重视用户体验的发展倾向,Linkflux通过链系分析、Toolbar产品和搜索结果计数器三种方式实现,能够帮助搜索与< <搜索引擎的linkflux技术> >相似的文献。 分布式多搜索引擎系统的研究与实现 A multi-search engine technology [
http://www.ilib.cn/A-sztsglt200606011.html


摘要:随着Internet的迅速发展,传统的搜索引擎在覆盖度、查询精度、可扩展性和用户多样化需求等方面存在许多不足。本文详细介绍了多搜索引擎技术,以及在该技术基础上实现的多搜索引擎系统。多搜索引擎系统通过集成目前流行的多个搜索网站,提供更强大的搜索功能,帮助用户更快速更有效地获得所需信息。
关键词:多搜索引擎;搜索引擎集群;信息检索
 
1 引言
    近年来Internet的发展非常迅速。统计显示,WEB站点从最初1993年的600多个,发展到2004年1月已经超过了4600万多个。同时网页的数量和容量也迅速增长,据估计,2002年可以直接访问的静态网页的数量超过了100亿,容量超过了167TB;而动态页面总量在66800TB和91850TB之间。可以预见,Internet的这种高速发展必然还会延续下去。随着Internet的迅速发展,传统的搜索引擎技术面临着许多挑战,主要体现在覆盖度、查询精度、可扩展性、用户多样化需求几个方面。
    多搜索引擎集成目前流行的多个搜索网站,提供更强大的搜索功能。为解决传统搜索引擎的问题提供了许多新的方法:
    1) 多搜索引擎是多个搜索网络搜索引擎的集合,比传统搜索引擎的覆盖度更大;
    2) 多搜索引擎可以通过集成特定领域的专用搜索引擎,例如开放源代码网站内的搜索引擎等,大大提高特定领域的查询精度;
    3) 多搜索引擎本身不完成搜索引擎的功能,实际的搜索任务由各个搜索网站完成,这种系统不需要巨大的信息存储,设计简单灵活,具有很强的可扩展性;
    4) 多搜索引擎提供了可供用户选择的搜索网站列表,用户可以根据自己的需要,选择不同的搜索网站组合,这为实现用户多样化的需求提供了一种新的思想和途径。
    同时,多搜索引擎非常适合集成到各种应用系统当中,目前许多大型门户网站正在这方面进行很多新的研究和开发,多搜索引擎技术作为一种新型的信息检索技术正在迅速发展。
2 多搜索引擎的体系架构
    基于上述的思想,我们研究和实现了一个分布式多搜索引擎系统,该系统的体系架构如图1所示。



图1 多搜索引擎的体系架构
 
2.1 MultiSearch Portal模块
    MultiSearch模块负责系统与用户的交互。具体包括提取用户输入的关键字,并分析关键字之间的逻辑关系,构造出统一规格的关键字描述。目前普遍适用于各大搜索网站的关键字逻辑关系有“包含”和“不包含”,某些高级别的搜索引擎还会提供“全部包含”和“至少包含一个”等逻辑关系。该模块对这些逻辑关系进行统一的描述,并作为参数输入到搜索网站代理。
2.2 搜索网站代理
    搜索网站代理集群是多搜索引擎的核心模块之一。一个搜索网站代理代表着一个具体的搜索网站,多个代理组成代理集群,根据搜索引擎的功能分类,搜索引擎又可以分类,通用的搜索引擎,例如google,百度等;专门用于源程序领域的搜索引擎,例如Sourceforge,CodeProject等。目前我们的系统中已经实现了通用搜索引擎和源程序搜索引擎两个集群,包括10个具体的搜索引擎代理。搜索引擎代理不进行具体的搜索操作,而是把搜索任务发送到它所代表的搜索网站去完成。这个流程主要由两个部分组成。
2.2.1 从结果网页里提取有用的记录信息
    从搜索网站得到的结果网页并不是我们最终想得到的结果,这些网页里面包含了许多与具体搜索网站相关的特定信息,例如该网站的广告、说明等大量无用信息。搜索网站代理必须从这些网页里提取出统一规格的搜索记录。搜索网站返回的网页里包含了若干条记录,每条记录有题名、摘要、链接三个基本组成部分。如何设计算法,有效地提取出每条记录的完整信息,并且算法必须具有良好的稳定性,要尽量不受网站网页格式变化的影响,或者通过极少的改动就可以适应网页格式的变化,这都是我们研究中的关键问题。
    要从网页里提取信息,就必须先分析网页的结构。网页信息的载体是网页文本,用超文本标记语言编写。超文本标记语言(hypertext markup language)简称HTML。HTML标准定义了一组(大约116个)元素类型(element type),不同类型的元素分别描述文本、图像和超文本链接等等。一个元素的描述一般由开始标记、内容、结束标记三个部分所组成。元素名称出现在开始标记中,在HTML语言中标记为 <元素名称> ,对应的结束标记为 ,内容位于开始标记和结束标记之间。元素的内容可以是文本,也可以是某种类型的元素,这样元素之间就出现了嵌套,隶属于同一父节点的各子节点元素的先后顺序,由其在文件中出现的先后次序决定。我们使用树状结构来表示网页。例如图2是一HTML网页源代码及其树状信息结构表示,我们把这种树状结构称作为标记树。标记树的每个节点都是一个上面提到的一个元素。
 
图2 HTML文档的标记树
    搜索结果网页里面所有记录的信息都包含在一定的HTML标记之间,因此我们可以根据信息头尾的HTML标记,来定位和提取信息。例如在图2中,可以根据标记来提取text1、text2、text3、text4,根据标记来提取text5。同时,所有记录的信息都位于标记树的某个叶子上面,因此我们可以根据信息所在叶子的位置,来定位和提取信息。例如在图2中,所有的text信息都位于方形的叶子节点里面,根据这些叶子在整个标记树里面所处的位置,我们可以提取出所需的text信息。
    在具体算法的设计中,我们结合HTML网页的标记及其拓扑结构,可以很方便地提取信息。并且在网站网页经常改变的情况下,我们的算法具有很好的稳定性。
    同时,在多搜索引擎系统中,我们使用一个知识库来储存信息提取的算法相关的信息。每个搜索网站都对应知识库里面的一张表,表里储存着每个搜索网站返回的网页里有用信息所处的位置,以及提取信息所用到的HTML标记,当我们需要修改信息提取的算法的时候,只需要修改这张表里的内容,或者当我们想在多搜索引擎里增加一个新的搜索网站的时候,大部分工作就是在知识库里增加一张对应的新表。知识库的内容是以配置文件的形式加载到系统之中的,当我们需要增减和修改系统所集成的搜索网站的时候,只需要加载不同的知识库。这样的设计使得多搜索引擎系统非常简便,具有很好的可扩展性。
2.3 搜索结果的处理和融合
    从搜索代理输出的结果里面汇集了多个搜索网站的搜索结果,为了达到更好的用户体验,多搜索引擎系统对它们进行处理和融合,主要包括结果的去重和排序。
2.3.1 结果记录的去重复
    多个搜索网站返回的结果里必然含有很多相同的记录。判断记录是否相同,准则是该记录的链接是否指向同一个网页。为了去重复,在多搜索引擎系统里加入了数据库支持,用户每次搜索的记录信息和状态都会缓存到数据库里,根据数据库里的信息,可以对比不同搜索引擎之间的记录是否有重复,或者多次请求返回的记录是否有重复。
2.3.2 结果记录的排序
    评估不同搜索网站返回的记录之间的重要性,需要考虑多方面的因素。同一个搜索网站返回的记录已经经过该引擎自身的算法的排序,而不同搜索网站之间的重要性,对于不同用户的需求会有差别。在我们的多搜索引擎里,可以由用户指定使用某个搜索网站,这样就体现了用户对该搜索网站的评价。同时在多搜索引擎系统里,会根据每条记录的题名和摘要里出现的关键字次数,进行简单的排序。对于结果记录的融合问题,我们还在继续研究之中,以求获得更好的用户体验。


2.4 生成最终结果的网页
    最终的结果记录将被包装成一个HTML网页,返回给用户。用户从输入关键字,到返回结果页面,都是在网络浏览器中进行,用户就像访问通常的搜索网站一样来获得多搜索引擎系统的服务,这种服务模式是当前Internet发展的必然方向。


3 多搜索引擎系统的具体实现
    多搜索引擎系统的实现使用J2EE架构,各个模块间使用Web Service协议通信。系统的每一个模块,包括每一个搜索引擎代理,都是一个独立的模块,提供各自的功能,通过web service作为一个服务接入到系统中,它们中的每一个可以单独的运行一台服务器上面,组成整个分布式的系统,系统的各个部分都可以作为一个子系统运行来提供服务,并且可以动态的加载和扩展。具有良好的稳定性、兼容性和可扩展性。


4 结束语
    多搜索引擎技术提供了更强大的搜索功能和崭新的搜索思想,开拓了搜索引擎领域许多新的研究方向,而且非常适合用于实际应用当中,多搜索引擎系统的研究与实现具有重要的意义。本文分析了多搜索引擎技术里的各种研究方向和方法,实现了分布式的多搜索引擎系统。目前本文里阐述的多搜索引擎系统已经开发部署完毕,正在不断完善和研究更新的功能。


参考文献
[1] Steve Lawrence and C. Lee Giles. Searching the World Wide Web. Science, 280(5360):98–100, 1998.
[2] 肖诗源,一种基于Agent的分布式搜索引擎,计算机工程。2002年7月.
[3] 李绍华,Web信息的结构化及其查询视图研究,计算机工程,2001年7月,Vol.27 No7


本文转自
http://paidianying.cn/tzbz/31012.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值