1、四川大学锦江学院毕业论文(设计) 元搜索引擎的设计与实现【摘 要】 我们处在信息大爆炸时代,互联网上的信息呈几何级增长,各式各样的搜索引擎也应运而生,以满足用户的不同需求。怎样通过这些搜索引擎高效率地获取所需信息是困扰人们已久的问题,而想要搜索到高质量的信息则更是难上加难。元搜索引擎的出现在一定程度上解决了此问题。元搜索引擎是一种建立在独立搜索引擎之上的搜索引擎。本文首先介绍了元搜索引擎的定义,讨论了元搜索引擎的基本工作原理及分类,并介绍了国内外具有代表性的著名元搜索引擎,以及面临的问题和将来的发展趋势。然后基于此提出了一个元搜索引擎模型,讨论了其基本体系结构,接下来较详细地介绍了它的各个功能
2、模块,最后讨论了可能用到的关键技术及后续工作。【关键词】搜索引擎 元搜索引擎 关键技术24Metasearch engines design and implement【Abstract】 We are in the era of information explosion, information on the Internet is geometrical type growth, all kinds of search engines also arises at the historic moment, to meet the different needs of customers.
3、 How these search engines efficiently acquire information is troubled people already a long time of problems, but want to search to high quality information is more even. Metasearch engines appeared in a certain extent, solved the problem. Metasearch engine is a built in independent search engine on
4、 search engine. This paper introduces the definition of the metasearch engine,discuss the basic working principles and classification, and introduces the representative of famous at home and abroad, and metasearch engine problems faced and future development trend. Then based on the proposed a metas
5、earch engine model, discusses the basic system structure, then it introduces in detail the various functional modules , and finally discusses the key technology and may be used.【Key words】Search engine Meta-Search engine Key technology目 录绪论11 元搜索引擎的原理21.1 元搜索引擎的概述21.2 元搜索引擎的详解21.2.1 元搜索引擎的定义21.2.2 元
6、搜索引擎的系统结构21.2.3 元搜索引擎的基本运行过程 31.3 元搜索引擎的主要指标及分析51.3.1 元搜索引擎的主要指标.5 1.3.2 元搜索引擎面临的问题.51.3.3 具体站点分析.62 元搜索引擎的分类122.1 多线索式搜索引擎122.2 all-in-one式搜索引擎132.3 桌面式搜索引擎 .132.4 元搜索引擎与传统搜索引擎的区别 .142.5 元搜索引擎的特点 .153 元搜索引擎的分析与设计163.1 开发工具选择163.2 项目设计(基本流程图)163.2.1 客户端设计163.2.2 系统结构框架173.2.3 功能模块介绍183.2.3.1 图形化用户接口
7、(GUI).183.2.3.2 查询预处理器.183.2.3.3 成员搜索引擎调度器.183.2.3.4 查询分发器183.2.3.5 查询代理.183.2.3.6 综合处理模块193.2.3.7 数据库. 194 实现中的关键技术204.1 用户提问转换204.2 检索机制设计与优化204.3 重复结果评判标准204.4 结果融合技术204.5 后续工作20结论22参考文献24致谢.25绪论在互联网发展初期,网站相对较少,网页数量亦较少,因而信息查找比较容易。随着Internet的飞速发展,互联网上的信息呈几何级增长,各式各样的搜索引擎也应运而生,以满足用户的不同需求。怎样通过这些搜索引擎高
8、效率地获取所需信息是困扰人们已久的问题,而想要搜索到高质量的信息则更是难上加难。元搜索引擎的出现在一定程度上解决了此问题。元搜索引擎是指在统一的用户查询界面与信息反馈的形式下,共享多个搜索引擎的资源库为用户提供信息服务的系统。元搜索引擎是一种建立在独立搜索引擎之上的搜索引擎。这里“元”为“总的”、“超越”之意,元搜索引擎就是对多个独立搜索引擎的整合、调用、控制及优化使用。相对于元搜索引擎,独立搜索引擎称为“源搜索引擎”,或搜索资源。元搜索引擎的实现一般有4个部分组成:“用户提问处理”、“检索机制”、“结果加工处理”及“结果页面定制”。开发元搜索引擎,主要的理由是:1)元搜索能够分散处理负载,增
9、加检索的范围。Web数据量太大,而且增长迅猛,单个引擎的容量,处理能力难以扩展到很大的规模,所以每个引擎只能包含一部分Web文档。2)元搜索具有较好的扩展性,可以加入多个成员引擎。它使得各个成员引擎规模变小,性能更好,这样成员引擎的检索响应时间短,还可以使得检索的内容保持最新。3)有些web站点的内容不能用数据采集器抓取,只有用该站点提供的API访问。4)检索更有效,用户为了找到满意的检索结果可能访问多个搜索引擎,直到找到结果位置,而元搜索引擎可以帮助用户自动完成这个任务。 本文首先介绍了元搜索引擎的定义,讨论了元搜索引擎的基本工作原理及分类,并介绍了国内外具有代表性的著名元搜索引擎,以及面临
10、的问题和将来的发展趋势。然后基于此提出了一个元搜索引擎模型,讨论了其基本体系结构,接下来较详细地介绍了它的各个功能模块,最后讨论了可能用到的关键技术及后续工作。1 元搜索引擎的原理1.1 元搜索引擎的概述元搜索引擎首先对用户的查询请求进行预处理,分别转换为若干个底层搜索引擎能处理的格式,并将其发送给各个搜索引擎。例如MetaCrawler,同时检索Yahoo,LookSmart等九个主要的搜索引擎。在各个搜索引擎返回检索结果后,元搜索引擎进行组合,并向用户返回最终的检索结果。由于元搜索引擎建立在搜索引擎的基础之上,因此对于设计人员而言,不需要建立和维护庞大的索引数据库,也不需要使用复杂的检索机
11、制;对于用户而言,元搜索引擎提供了一个能够同时查询多个搜索引擎的集成界面,将各个搜索引擎的位置,接口等细节屏蔽了起来,同时也有可能获得更好的检索效果,于是元搜索引擎便应运而生。1.2 元搜索引擎的详解1.2.1 元搜索引擎的定义元搜索引擎(Meta Search Engine 简称MSE)也称为集合式的搜索引擎,是将多个搜索引擎集合在一齐,提供一个一致的界面,也可分为关键词检索和目录检索。当用户发出检索请求后,该引擎自动利用多种其它的搜索引擎同时进行检索。元搜索引擎是对搜索引擎进行搜索的搜索引擎。元搜索与一般搜索引擎的最大不同在于它可以没有自己的资源库和机器人,它充当一个中间代理的角色,接受用
12、户的查询请求,将请求翻译成相应搜索引擎的查询语法。在向各个搜索引擎发送查询请求并获得反馈之后,首先进行综合相关度排序,然后将整理抽取之后的查询结果返回给用户。1.2.2 元搜索引擎的系统结构元搜索引擎包括Web服务器、结果数据库、检索式处理、Web处理接口、结果生成等几个部分,其中用户通过Web服务器访问元搜索引擎,而元搜索引擎则通过Web处理接口访问其它外部的搜索引擎。其系统结构如图1.1所示。 图1.1系统结构用户通过WWW服务访问元搜索引擎,向Web服务器提交检索式。当Web服务器收到查询请求时,先访问结果数据库,查看近期是否有相同的检索,如果有则直接返回保存的结果,完成查询;如果没有相
13、同的检索,就分析检索式并转化成与所要查找各搜索引擎相应的检索式格式,然后送至Web处理接口模块。Web处理接口通过并行的方式同时查询多个搜索引擎,把所有的结果集中到一起。根据各搜索引擎的重要性,以及所得结果的相关度,对结果进行抽取并排序,生成最终结果返回给用户。同时,把结果存到自己的数据库里,以备下次查询参考使用。元搜索引擎主要运用于网页信息搜索,而现有各种电子资源数据库都提供相应的客户端接口,因此可利用元搜索引擎的原理对各个异构数据库进行统一检索。元搜索引擎是通过对多个全文数据库按一定标准(如DC)进行标引后,组成一个元数据集,通常用数据库方式储存。通过一个发布系统(WEB服务器)与客户端进
14、行交互。元搜索引擎是一种集合其他搜索引擎的搜索结果为一体,方便用户同时参考多个搜索引擎提供的搜索结果的搜索引擎。元搜索引擎的这种网络搜索方式侧重于过滤冗余无关的搜索结果,从而试图将最相关的搜索结果展示给搜索用户。但是另一方面,根据搜索请求关键词的普遍度,也可能给用户造成被上百万搜索结果页面淹没的后果。 1.23 元搜索引擎的基本运行过程根据分布式数据库系统的原理,我们可以用图1.2初步描述元搜索引擎基本运行过程的概念模型:用户元搜索引擎搜索引擎目录选择搜索引擎全局/局部格式字典全局指令解析局部指令发送局部结果接收局部结果转换全局结果组织全局/局部指令字典3图1.2运行过程的概念模型根据该模型,
15、元搜索引擎的主要功能有:(1)搜索引擎的选择:元搜索引擎一般允许用户选择合适的搜索引擎集合具体进行检索,选择方式包括选择一个搜索引擎、选择全部搜索引擎、选择满足一定条件的若干个搜索引擎(例如最快的或最好的三个)。有些元搜索引擎只能使用固定的搜索引擎集合。(2)检索指令的转换:由于每个搜索引擎都有自己的查询语言,因此元搜索引擎需要将用户通过统一界面以统一形式输入的全局检索指令转换为各个成员搜索引擎的局部指令语言,这可利用“全局/局部指令字典”来实现。但指令语言转换并不是异形指令的简单、机械互换,应做到:对应指令的功能性质一致性;对应指令的功能作用范围一致;对应指令的逻辑结构和构成一致;对应指令的
16、逻辑结果一致。全局指令既要准确地表达所有成员搜索引擎指令语言的共同特点和指令形式,又要能够以一定方式执行有关成员搜索引擎指令的特殊功能。目前,指令转换尚有较多不足之处。(3)局部结果转换和全局结果组织:从各搜索引擎返回的结果具有自己的数据格式,元搜索引擎需要依照用户要求或系统设置值将各个局部结果转换为全局结果要求的形式,并构成逻辑上统一的整体结果集合和格式呈交用户。全局格式转换与检索指令转换一样,要在数据项数量、逻辑内容、名称、长度、位置等方面准确地表达所有成员搜索引擎局部格式的共同特点和要求,又要能根据全局模式的要求对数据进行处理,还要协调不同的局部格式可能存在的差异,对某些搜索引擎特有的信
17、息段要适当处理,保证对每一个命中记录具有尽可能详细的描述资料。元搜索引擎还应对全局结果进行剔重、排序等处理。1.3 元搜索引擎的主要指标及分析1.3.1 元搜索引擎的主要指标目前,元搜索引擎的研究、开发十分活跃。它用到了信息检索、人工智能、数据库、数据挖掘、自然语言理解等领域的理论和技术,具有综合性和挑战性。又由于搜索引擎有大量的用户,由此衍射出许多商机,具有很好的经济价值,据估计现在已有几十亿美元的全球市场,所以引起了世界各国计算机科学界、信息产业界和商界的高度关注,已投入了不少的人力、物力,也取得了不俗的成绩。 一个理想的元搜索引擎应该具备以下功能要求如表1.1:表1.1功能要求功能要求举
18、例涵盖较多的可选择性搜索资源如可随意选择和调用独立搜索引擎具备尽可能多的可选择功能如资源类型选择、等待时间控制、返回结果数量控制、结果时段选择、过滤功能选择、结果显示方式选择等强大的检索请求处理功能如支持逻辑匹配检索、短语检索、自然语言检索等不同搜索引擎间检索语法规则、字符的转换功能如对不支持NEAR算符的搜索引擎,可自动实现由NEAR向AND算符的转换详尽全面的检索结果信息描述如网页名称、URL、文摘、源搜索引擎、结果与用户检索需求的相关度等支持多种语言检索如提供中英文搜索等对结果进行自动分类如按照域名、国别、资源类型等分类1.3.2 元搜索引擎面临的问题 虽然目前Internet上面有很多
19、元搜索引擎,但是良莠不齐。在功能实现上,各有侧重点,能做到理想的尚不多见。一些元搜索引擎在某些方面做得很好,但是在其他功能上却存在着缺陷或尚需改进:如大多数的元搜索引擎不支持自然语言检索,不支持中文检索等。元搜索引擎的功能受着源搜索引擎和元搜索技术的双重制约:一方面,源搜索引擎的各具特色的强大功能在元搜索引擎中受到限制而不能充分体现,而另一方面,任何一种元搜索技术都不能发掘和利用独立搜索引擎的全部功能。随着新技术的不断涌现,会使元搜索引擎做得更好,取得更好的用户满意度,这些技术有:1提高搜索引擎对用户检索提问的智能理解,体现为对自然语言查询请求的支持。2确定搜索引擎信息搜集范围,提高搜索引擎的
20、针对性,体现为主题搜索,多媒体搜索。3基于智能代理的信息过滤和个性化服务。4重视交叉语言检索的研究和开发,提供多语言检索的支持,提供本土化的搜索服务。5提高信息查询结果的精度,提高检索的有效性。1.3.3 具体站点分析(1) 万纬搜索引擎 网址:万纬搜索引擎是最有名的中文元搜索引擎。万纬中文集成搜索引擎包括了8个英文搜索引擎如AltaVista、Argos、directHit、Fast、Google、hotbot、northernLight、Yahoo和12个中文搜索引擎如网典、新浪、雅虎(中文)、搜狐、搜索客、天网、悠游搜索、好多、找到啦、欧姆龙、飞华、Excite(中文)。用户可根据需要自
21、由选择其中最多6个引擎进行同步搜索,搜索结果可按相关度、时间、域名和引擎分类。万纬搜索引擎作为第三代中文搜索引擎更注重智能化和用户使用的个性化,其采用了中文自动分类、自动聚类、机器人学习等人工智能技术,而且使用了中文内容分析技术,以及区域智能识别技术,增强了搜索引擎的查询能力。图1.3和1.4是主页和反馈结果。图1.3主页图1.4反馈结果(2) Mamma(英文元搜索引擎) 网址:Mamma自称为搜索引擎之母的并行元搜索引擎,可同时调用7个最常用的独立搜索引擎,其特点是检索界面简洁舒适,检索选项人性化,主要包括:可选择调用的独立搜索引擎、可选择使用的短语检索功能、并可设定检索时间及每页可显示记
22、录数等。另外,Mamma支持常用检索语法在不同搜索引擎中的转换,同时提供了专门检索页面文件标题的特殊检索服务,以及通过Email传输检索结果等人性化功能。检索结果以相关性排序,内容包括网页名称、URL、文摘、源搜索引擎。 Mamma主页中栏有检索选择及输入框,搜索类型缺省为Web(万维网页),也可选查News(新闻)、Images(图画)、Video(视频)、Twitter(推特)等。图1.5和1.6是Mamma主页及查寻“computer”的反馈结果。图1.5Mamma主页图1.6查寻“computer”的反馈结果(3) Dogpile(英文元搜索引擎) 网址:http/Dogpile199
23、6年12月由美国人Aaron Flin 创制的杰出的并行式和串行式相结合的混合式元搜索引擎。收录范围:目前四个。Google,yahoo,live search,ask主要功能:Dogpile具有Web(网页)、Images(图片)、Audio(音频)、Video(视频)News(新闻)、Yellow Pages(黄页)、White Pages(白页)等主要搜索功能。1)Web(网页搜索)网页搜索从源搜索引擎调取与查询词语相关度最高的结果。结果页面显示搜索结果统计、网页标题、网页摘要、网页URL、提供结果的源搜索引擎(Found on)、相关搜索(Are you looking for?)等信
24、息。页面上端默认列示Google、Yahoo、MSN 、Ask Jeeves四个源搜索引擎按钮,点击“More Engines”增加LookSmart和About索引擎按钮,可以分别点击查看各自的前10个以上的结果列表。如果有与搜索词语相关的图片,在结果页上端以“View Images Search results”指示查看图像结果。如果有与搜索词语匹配的网站,则以“WEBSITE MATCH”指示网站链接。其高级搜索(Advanced Web Search)可进行搜索词语控制和网页语言、日期、站内或某域名内搜索、成人内容过滤等多项选择设置。2)Images(图片搜索)图片搜索主要由Yahoo
25、! Images、Ditto等支持。结果显示图片缩略图和标题、像素、大小、所在网页的URL、结果来源(Found on)、相关搜索(Are you looking for?)等信息。可以点选“View Results by”后面的Relevance或Source,按相关度或按提供结果的源搜索引擎查看图片。其高级搜索(Advanced Image Search)可进行搜索词语控制和图片色彩、格式(所有格式、JPEG、GIF、PNG)、尺寸、每页显示数量、显示结果来源引擎、成人内容过滤等多种项选择设置。 3)Audio(音频搜索)音频搜索主要由Yahoo! Audio、Singingfish等支持
26、。结果显示文件名称、格式、所在网页的URL、播放时长、结果来源(Found on)、相关搜索(Are you looking for?)等信息。可以在 “View Results by”的后面点选Relevance或Source,按相关度或按提供结果的源搜索引擎查看音频文件。其高级搜索(Advanced Audio Search)可进行搜索词语控制和播放时长(所有长度、1分钟以下、1分钟以上)、文件格式(所有格式、Realmedia、Windows、MP3)、每页显示数量、显示结果来源引擎、成人内容过滤等多项选择设置。 4)Video(视频搜索)视频搜索主要由Yahoo! Video、Sing
27、ingfish等支持。结果显示文件名称、格式、所在网页的URL、文件大小、播放时长、结果来源(Found on)、相关搜索(Are you looking for?)等信息。可以在 “View Results by”的后面点选Relevance或Source,按相关度或按提供结果的源搜索引擎查看视频文件。其高级搜索(Advanced Video Search)可进行搜索词语控制和播放时长(所有长度、1分钟以下、1分钟以上)、文件格式(所有格式、Realmedia、Windows、MPEG)、每页显示结果数量、显示结果来源引擎、成人内容过滤等多项选择设置。 5)News(新闻搜索)新闻搜索主要由
28、Yahoo! News、Topix, FOXNews, ABCNEWS等支持。结果显示新闻标题、摘要、发布时间、结果来源(Found on)、相关搜索(Are you looking for?)等信息。可以在“View Results by”的后面点选Relevance或Date,按相关度或按发布时间(倒排序)查看新闻。其高级搜索(Advanced News Search)可进行搜索词语控制和新闻类别、各地新闻(各大洲新闻、各国新闻、美国各州新闻与各个城市新闻)、新闻来源(AFP News法新社、Canadian Press加拿大通讯社、PC WorldPC世界、Associated Pres
29、s澳大利亚联合新闻社、F、Reuters路透社、BusinessWeek Online商业周刊在线、Los Angeles Times洛杉矶时报、New York Post纽约邮报)、回朔检索(1990年1月1日至今)、每页显示新闻条数、按新闻发布日期倒排序等多项选择设置。6)Yellow Pages/ White Pages(黄页与白页搜索)提供多种途径查找美国工商机构和个人信息。搜索主页下部有多种辅助的实用功能,其中“Maps”可以查看包括中国在内的多国地图,“Weather”可以查看包括亚洲在内的世界主要地区的卫星云图照片。7)辅助功能相关搜索(Are you looking for?)
30、,在结果页右侧列表提示与查询提问相关的词语。最近查询(Recent Searches),在结果页右侧列表提示最近提交过的所有搜索词语。个性设置(Preferences),通过“Preferences”可以进行成人内容过滤、搜索词是否以黑体字标示、是否提示“Recent Searches(最近查询)”、每页搜索结果显示数量、是否在新窗口中查看搜索结果、搜索结果语言等多项个人搜索习惯设置。源搜索引擎提示,通过Web、Images、Audio、Video、News的高级搜索设置,可以显示提供搜索结果的源搜索引擎的信息。图1.7和1.8为dogpile主页及反馈截图。图1.7dogpile主页图1.8
31、反馈截图2 元搜索引擎的分类在可以检索的目标搜索引擎、检索提问的处理方式以及如何编译和显示结果方面,元搜索引擎有着很大的差异。有些元引擎一个接一个的搜索目标搜索引擎,另一些则同时进行搜索。有些搜索引擎将检索提问转变成目标搜索引擎的提问语言,而有一些则原封不动的发送给目标引擎。按功能划分,元搜索引擎包括多线索式搜索引擎和All-in-One式搜索引擎;按运行方式的差异可分为在线搜索引擎和桌面搜索引擎。2.1 多线索式元搜索引擎多线索式元搜索引擎,指利用统一的检索界面,实现对多个独立搜索引擎索引数据库进行检索,并将检索结果以统一格式显示的网络检索工具。这类元搜索引擎一般具有以下特征:统一检索界面:
32、元搜索引擎提供统一界面,提供对各搜索引擎特点介绍和选择机制,但所有目标搜索引擎构成一个逻辑整体,元搜索引擎检索界面构成唯一的全局外部检索模式,用户通过这个全局界面实现对多个或任意一个搜索引擎的检索。检索指令转换:在具有唯一全局外部检索模式情况下,系统可提供统一的全局指令语言,并自动地实现元搜索引擎指令与其目标搜索引擎指令的转换,用户使用同一指令语言检索不同的搜索引擎的索引数据库。统一结果集的组织与显示:元搜索引擎提供全局组织器,对各目标搜索引擎返回的结果进行处理,形成全局结果集,并以统一格式显示,主要涉及数据格式转换、去重、统一排序等。图2.1为Metacrawler主页。图2.1Metacr
33、awler主页2.2 All-in-One式元搜索引擎AllinOne方式,是指元搜索引擎界面以任意顺序或分类罗列多个(一般都是数十个)搜索引擎,元搜索引擎本身主要提供各类搜索引擎的介绍信息和物理连接机制。用户可通过这类元搜索引擎了解有关的搜索引擎、联入所选择的搜索引擎。但元搜索引擎没有统一的全局外部模式,而是以各搜索引擎的检索模式和数据格式直接面对用户。这种Allinone方式的元搜索引擎确切地说只是搜索引擎的罗列,它们具以下特点:仅仅提供一个简单的界面来帮助用户选择和使用各搜索引擎。只能选择一个搜索引擎进行检索。对各目标摸索引擎检索界面的复制可能是部分的或全部的。直接利用所选搜索引擎的显示
34、格式呈送给用户。图2.2为好东西搜索界面。图2.2好东西搜索界面2.3 桌面搜索引擎以上各类元搜索引擎都是通过网上调用方式在线使用,还有另外一类元搜索引擎可直接在用户计算机上运行,相当于用户自己拥有一个元摸索引擎,称之为桌面元搜索引擎。这些桌面元搜索引擎以程序的方式提供给用户,运行在用户的机器上。如飓风搜索通,整合了近百个各类搜索引擎,包含简体中文,繁体中文,软件,音乐MP3,股票,新闻,购物搜索,购书搜索等的全方位互联网信息检索工具,完全兼容及嵌入IE,符合浏览及搜索习惯,搜索结果可以单个或全部分类保存。图2.3为飓风搜索通使用界面。图2.3飓风搜索通使用界面2.4 搜索引擎与元搜索引擎的区
35、别我们可将元搜索引擎看成具有双层客户机服务器结构的系统,用户向元搜索引擎发出检索请求。元搜索引擎再根据该请求向多个搜索引擎发出实际检索请求;搜索引擎执行元搜索引擎检索请求后将检索结果以应答形式传送给元搜索引擎,元搜索引擎将从多个搜索引擎获得的检索结果经过整理再以应答形式传送给实际用户。当然,某些元搜索引擎具有略微不同的机制。 搜索引擎与元摸索引擎的主要区别在于搜索引擎拥有独立的网络资源采集标引机制和相应的数据库,而元搜索引擎一般没有自己独立的数据库,却更多地是提供统一联接界面(或进一步地提供统一检索方式和结果整理),形成一个由多个分布的、具有独立功能的搜索引擎构成的虚拟整体,用户通过元搜索引擎
36、的功能实现对这个虚拟整体中各独立搜索引擎数据库的查询显示等一切操作。元搜索引擎中各独立搜索引擎被称为“目标搜索引擎”,或者“成员搜索引擎”,它们各自保持其原来的局部数据模式和自己的检索指令;元搜索引擎给出一个全局外部模式,用以接受用户检索输入和结果输出。不过,有些元搜索引擎给出的全局外部模式不够完善。具体区别如图2.4所示:图2.4具体区别 2.5 元搜索引擎的特点(1)虚拟索引数据库(2)信息搜索代理:请求提交代理、检索接口代理和结果显示代理存在问题: 元搜索引擎也存在较大技术缺陷。许多单个的搜索引擎提供独特的检索方式,检索语法差异很大。元搜索引擎递交用户查寻请求时,受语法词法、逻辑组配、位
37、置关系、运算控制等限制,难以实现单个搜索引擎的高级搜索功能,又可能产生新表达差异问题。因此,元搜索引擎在请求理解、查询分派、数据库选择、文本选择和结果处理等方面还有待于进一步开发与完善。优势特点: 检索效率高(查全,查准率) 扩展性强 服务多样化3 元搜索引擎的分析与设计基于前文对元搜索引擎的讨论和进一步的分析,我提出了一个元搜索引擎的设计构想,并实现了其中一部分功能。3.1 开发工具选择工具:Microsoft Visual Studio 2008; 运行环境:Windows系列操作系统。3.2 项目设计(基本流程图)3.2.1 客户端设计一个良好的查询界面非常重要,例如谷歌就以她简洁的查询
38、界面而闻名。我在设计的时候也充分考虑了实用性和简洁性。一个良好的名字同样很重要,不管是谷歌还是百度,其名字都达到了形声义兼备的完美效果,基于以上考虑,我为此款设计取名为Sosoon,so同中文“搜”谐音,soon则表达了速度很快。查询界面如图3.1:图3.1查询界面3.2.2 系统结构框架元搜索引擎是建立在已有的搜索引擎服务之上的一种搜索引擎,它利用下层多个搜索引擎提供的服务向上提供统一的检索服务,自身不采集文档,也没有索引,只是维护它所管理的搜索引擎的参数信息,如每个引擎的查询参数、引擎的内容表示。当一个查询到来时,元搜索引擎自身并不处理,而是按照各个成员引擎的查询格式作相应的转换之后再分发
39、到各个成员引擎,有关成员引擎的参数信息可以帮助元搜索引擎进行引擎的选择和协调,各个成员引擎返回结果之后,元引擎进行结果合并,重新排序输出给用户。图3.2为系统体系框图:图3.2系统体系框图3.2.3 功能模块介绍3.2.3.1 图形化用户接口(GUI)这部分是程序和用户的交接面,主要用来接受用户的原始查询请求和将最终结果显示给用户。实现的时候采用图形界面。这部分不牵涉到数据的处理,可以很好地实现对一份数据的多个视图。3.2.3.2 查询预处理器这部分接受GUI传来的原始查询请求,并对原始查询请求进行预处理,设计时用到的查询语法和操作规则如表3.1和表3.2:表3.1查询语法运算符含义代替符号A
40、ND搜索结果中会包含所有的关键词使用+和空格来代替OR搜索结果中会包含至少一个关键词使用,来代替NOT搜索结果中会排除NOT之后的关键词使用-或!来代替()用来限制优先级()说明:搜索A NOT B,则结果中就只包含A,而不包含B;(),作用和数学运算中的()运算符相似。表3.2操作规则通配符含义*代表任意多个字符?代表当前位置上的字符可以是任意字符3.2.3.3 成员搜索引擎调度器 此款设计的默认成员搜索引擎有谷歌,百度,搜狐和雅虎,用户不满意还可以自己设定成员搜索引擎列表。由于成员搜索引擎的信息(特别是查询串的格式化信息)经常发生变化,如果将它们的代码固定在元搜索引擎得主程序中显然是不合理
41、的,因此我们采用了成员搜索引擎描述文件,以xml进行描述,采用形式化描述,对于每个新加入的成员搜索引擎,只要按照这个形式为其建立一个描述文件,就很容易将其加入到系统中。3.2.3.4 查询分发器 接收由成员搜索引擎调度器产生的成员搜索引擎调度列表,连接数据库,读取这些成员搜索引擎的信息,包括主机信息、连接信息、查询参数串格式化信息等等。根据这些信息,同步启动若干线程,分别进行连接相应的成员搜索引擎。向它们发送经查询预处理器处理过的查询信息。3.2.3.5 查询代理 提供元搜索引擎和特定成员搜索引擎的交互接口。它首先接收从查询分发器送来的查询格式串。然后向查询分发器索取自己的查询参数化信息,再根
42、据查询参数化信息,将查询格式串进行本地化,也就是转换成自己的要求格式。接下来就把本地化的查询请求发送到成员搜索引擎,等待返回结果。接收到返回结果后,使用html解析器从结果页面中提取检索结果,需要包含以下若干信息:链接信息、得到此链接的成员搜索引擎、结果类型(包括网页、网址或图片)、目标网址等。3.2.3.6 综合处理模块 这是元搜索引擎实现的核心模块,一个元搜索引擎的执行效率的好坏与这个模块的实现紧密联系在一起,它需要使用若干功能模块。完成搜索结果的提取、去重、排序、格式化处理和分页显示。 综合处理模块负责将最终结果提交给GUI,由GUI把结果呈现给用户。3.2.3.7 数据库 这里的数据库
43、是一个比较笼统的概念,既包括实际的数据库,也包括一些配置文件和设置信息等,用来保存系统运行中需要使用的数据如表3.3:表3.3需要使用的数据信息举例成员搜索引擎的信息主机信息、功能信息、参数化信息、检索性能信息用户信息搜索历史信息、个性化设置信息、个人信息等词汇表同义词,反义词,翻译信息,领域信息、主题信息等4 实现中的关键技术元搜索引擎的实现中关键技术在查询前的处理(检索请求提交机制和检索接口代理)及结果的去重和融合。4.1 用户提问转换元搜索引擎定制查询界面供用户输入查询词,需要根据不同的搜索引擎转换成可以进行检索的查询表达式,不同的搜索引擎有不同的检索语法和操作符使用技巧,需要对提问进行
44、处理。同时要对搜索引擎不能处理的检索方式进行排除,并选择一种合适方式来匹配。4.2 检索机制设计与优化对于搜索引擎初始化方式、各个搜索引擎结果平衡处理等问题,都需要在检索机制的设计初期进行规划,这主要受到检索反馈速度、检索结果满意度等因素的影响。4.3 重复结果评判标准基于下面的策略进行判断:(1)首先判断两个结果的连接是否相同,若相同则认为是同一结果。(2)比较URL的相似性,如果主机IP地址、路径、文件名完全相同,也认为是同一结果。4.4 结果融合技术 从元搜索引擎的工作原理可以看出,结果融合技术是至关重要的,因此人们也提出了很多种方法来实现。较为简单的方法有:将响应速度最快的搜索引擎的结果呈现给用户;分别显示各个搜索引擎的返回结果,不做任何处理。较为复杂一些的就是根据一定的策略来实现结果融合了。此款设计采用第一种处理方式。4.5 后续工作目前已实现了其中部分类的功能,定义了若干接口,接下来的工作是实现整个系统,对其中的部分算法作进一步的优化和改进。还可以根据需要,增加若干功能模块,使系统功能更加强大,系统更健壮。元搜索引擎
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922