有一定的终止标记。其系统都采用多个Spider协作的方式进行网页的下载,一般都要用非常复杂的算法来指导Spider的漫游,以尽可能的遍历更多的网页点之间的复杂链接关系。
4.1.2 网页索引器
[12]
。而在我们的系统中只要按站点下载即可,不用考虑各个站
索引技术的关键在于元数据的恰当选择,目前的搜索引擎中一般都采用全文检索,即文中每一个词汇都作为索引词,而用词频和位置信息确定索引词的重要性。我们也利用此方式进行网页的索引。而网页的标题,编码等其它信息也可作为索引项。我们也可选用一些更为复杂的技术如W3C的Ontology[13]语义模型来索引网页。
4.1.3 检索接口
检索接口的主要功能是处理检索结果并提供用户接口,如何进行检索结果的排序是此部分的关键所在。在这一层,我们采用基于词频统计的算法进行检索结果的排序。因为在这种情况下采集的网页仅仅限于一个很小的范围内如一个大学,而超链接分析则更适用于大范围上的网页排序。此外针对局域网网页集合的特点,IBM的研究院专门提出了一种名为“rank aggregation”[14]的局域网内网页排序方法,在提高网页检索准确率方面有一定改进。
4.2 第二层:元数据采集系统
此层的检索系统将提供二级域范围的信息检索服务,元数据采集系统用来构建此层的搜索引擎。一个第三层节点如一个大学内的网页数目都不会超过10万个,集中式系统可以很好的管理这种规模的数据。而一个第二层节点如“edu.cn”则包含了国内所有的大学,而网页总数可能超过千万。如果依然采用常规的检索系统就难以保证数据库的覆盖率和更新率,所以我们采用了元数据采集方式。
此层的搜索引擎包含两个部分,网页数据库和检索接口,而没有自己的数据采集器Spider。其数据直接从第三层的节点数据库中获得。如对应于“edu.cn”节点的服务器可从数千个大学中的第三层节点搜索引擎数据库中获得网页数据,而不是直接去下载上百万张网页,这种方法的数据更新效率更高。而由于仅仅采集的是元数据,其总的数据量也不会过大。具体的元数据采集方法将参照OAI系统设计。
一个值得注意的问题就是网页的重复存储问题,在第三层中,Spider下载某个站点的网页时也下载了一些不属于此网站的网页(终止标志链接),那么在采集整合元数据时一些网页可能出现多次。而根据第三层的下载规则,一个网页重复出现的次数就是其它站点指向此网页的链接数目,而这正是超链接分析技术中的网页排名权值。这是超链接分析技术较为直接的一种实现方式。在集中式体系中,出于成本等因素考虑,不可能将位于不同位置的同一个链接全部下载再统计被引用的次数,而在分布式框架下则可用这种简单的方式实现超链接分析技术的基本思想。
显然此层的检索接口应超链接分析的方式进行检索结果的排序。这里仅仅是基本原理的介绍,而如各层之间如何协调,最终的排名算法等问题将在系统的标准协议中制定。 4.3 最高层:分布式检索系统
在最高层将构建覆盖一个国家范围内的网页搜索引擎,如果依然按照第二层那样将全部的网页元数据进
6
行集中存储,那么可能要存储上十亿张网页数据,系统设计依然比较困难。由于第二层的节点一般对应于一个国家的主干网,数目较少,因此可以考虑将最高层的搜索系统将设计成分布式检索系统,那么系统将仅有一个部分,检索接口,没有Spider,也没有索引数据。
设计分布式检索系统一般要解决三个主要问题[15]。1 基本的数据传输协议,如TCP/IP。2 子系统和主系统具体的数据交换协议,如数据结构,检索语法等。3 从各个子系统获得检索结果的合并方式。具体如下所述:
1 传输协议。此系统中以SOAP协议为技术协议,SOAP协议基于HTTP协议设计,但在安全性等方面都有较大改进。
2 检索协议。系统的检索协议设计以Webservice为基础。Webservice以SOAP协议为基础建立了一种高效的分布式系统框架。在设计协议时我们参考了SDLIP[16]和Google的Webservice检索服务用来定义相应的数据格式和检索语法等。采用此方法则要求在第二层的节点都提供统一的Webservice检索服务,而在最高层对这些检索服务进行索引。
3 结果合并。结果合并的关键依然是排序问题。在第二层中我们用数据采集中网页重复的次数当作网页的排名权值,而在最高层依然采用此方法,在执行并行检索时只要把同一个网页在各个子系统的排名值简单相加即可得到一个最终的排名权值。
第三层的搜索引擎工作原理同元搜索引擎基本上是一致的,没有自己的网页数据库,而仅索引其它搜索引擎的检索接口。但在此系统中各个子系统都严格遵循一个相同的协议,而且组织有序,因此性能要比现有的元搜索引擎都要好。此层的搜索引擎将提供一个国家范围内的网页搜索,这已经是本系统的最高级,而由于语言的差异,其已经基本覆盖了大部分的检索请求,如果确要进行多个国家范围的并行搜索,只要设计一个简单的系统,调用多个最高层检索接口即可。 4.4 总体结构和特点分析
该系统的最主要特点就是根据数据量的大小将网页资源分为三个层次,即组织级别,主干网级,国家级,然后针对各自特点采用了不同结构的检索系统,构建了一套完整的网页信息检索系统,其整体结构图如图2所示。
7
Fig.2. whole structure of web search engine based on DNS
图3 系统整体结构
5 系统的应用
由于新系统的每一个节点都是完整的搜索引擎,怎样使用户能够找到需要的搜索引擎是系统应用的关键。作为一个应用软件系统我们一般用面向对象的模型对系进行描述,这里我们也利用此模型来描述此系统。我们为其选择一个了基本的命名空间“DRIS”,整个系统的类树如图3所示:
DRIS namespaceFirst layer classDRIS.ukDRIS.ruDRIS.cnDRIS.fr...Second layerclassThird layer classDRIS.cn.edu.hustDRIS.cn.edu.pku...DRIS.cn.orgDRIS.cn.eduDRIS.cn.com...Fig.3. OO model of web search engine based on DNS
图3 系统面向对象模型
8
所有的系统节点都位于命名空间“DRIS”下并视为其子类.这些子类及其实现都在不同的服务器上实现。为
了整个系统使用和管理的方便,我们定义了一下几个基本规则: 1 所有的节点都通过标准Webservice的形式提供检索服务。
2 所有的检索服务都按照“继承”的关系进行组织,但这种关系的实现和标准的面向对象模型略有不同。低层的节点通过引用高层节点的Webservice的形式进行继承。而对高层节点来说,其各个子类都位于不同的服务器上,高层节点并不知道其子类,因此其将有一个专门的模块用来索引低层节点的检索接口。
3 Webservice通过URL链接来提供服务,对用户来说如何发现相应搜索引擎服务的链接是应用中的关键问题。例如我们如果要找到一个高校的网页信息检索服务,但如何才能发现其URL?为了方便用户,我们对搜索引擎服务器的位置作一规定。每个DRIS服务器都通过链接“DRIS.域名”向外提供标准Webservice检索服务,而此服务器上Webservice的主类名为“DRIS.反顺序域名”。如华中科技大学的域名为 “hust.edu.cn”,则其DRIS服务器通过链接“DRIS.hust.edu.cn”向外提供校内各种资源的检索服务,而此服务的主类名为“DRIS.cn.edu.hust”。
这些针对检索服务的规则基本可以解决系统的使用问题,其事实上是构建了一种分布式的UDDI注册系统。在新系统中域名不仅起到DNS中的“导航”作用,还是资源集合的一种“标识”。
系统提供互联网不同范围的标准信息检索服务,这将为一些个性化信息检索系统提供高质量数据源。这些个性化搜索系统可以根据用户的兴趣爱好等信息自动选择合适的数据源并按照用户需求对检索结果进行相应的整理。由超链接分析等得到的排名权值仅作为一个参考值,检索结果的最终排序会根据不同用户的实际需求信息进行调整。
目前已经有很多关于个人搜索系统的研究。大多数类似的系统的数据一般都来源于商业化的搜索引擎或自行设计的小规模网页数据库。文献[17]中分析器可以根据用户信息来整理综合检索结果。在检索系统[18]中,用户浏览中产生的反馈信息可以用来构造一种有自适应性的网页搜索引擎。基于DNS的网页搜索引擎将为此类研究提供一个高效的基础数据平台。
6 新系统的特点和优势
为了使检索结果更加准确,新的系统完全分成了两个部分:网页信息检索基础平台和个性化搜索系统。而为了建立一个高效的信息检索基础平台,新系统采用了一种类似于DNS的分层式的分布式结构。从新系统的最高层看,其提供的服务和现有的商业搜索引擎一样,但实现方式上却是将搜索引擎的三个部分完全分离,并采用元数据采集等方式有机结合。其网页下载器位于最底层的各个局域网内,索引器位于第二层,而在最高层提供检索接口,整个系统是一种分层的分布式检索系统。事实上新系统的三层上每一个节点都是完整的搜索引擎,提供不同范围内的网页检索服务。一般有三个基本原则来判定一个搜索引擎的优劣。
1 覆盖率。一个搜索引擎包含的网页数目越多,其检索结果就越全面。由于本系统的下载器的工作是按域组织的,因此只要一个站点在域名系统中注册,其所有网页就可被新的系统索引,因而从理论上讲,基于
9
DNS的检索系统可以覆盖所有互联网的网页。
2 更新率。新系统的网页下载和更新都在底层的各个服务器上进行,一般都对应于不同的局域网,其更新时间非常短,而在第二层,元数据上载过程也不用花费很多时间,而顶层由于没有实际的数据,因此不需要更新。所以整个系统的更新速度较现有系统有大幅度的提高。
3 搜索结果的准确率。目前的搜索引擎一般都较少考虑用户的偏好等信息,每个用户的同一个检索获得的检索结果都完全相同,毫无个性化可言。由于新系统三层的每一个节点都是完整的搜索引擎,并可向外提供标准的检索服务接口,这就为很多个性化智能搜索系统提供了很好的数据源。在这样的个性化检索系统中,可以真正做到以用户为核心,这样的搜索结果显然会更精确。 该系统的特点可用下图描述: 对应系统结构 基本搜索范围 技术 第三层 组织集中式 全文检索 级 第二层 主干元数据采超链接分网级 集式 析 第一层 国家分布式 元搜索技级 术 整体中的作用 下载器 索引器 检索接口 存储内容 原始数据 索引元数据 检索接口描述数据 Table1 Characteristic of system
表一 系统特点图示
7 系统的实施和管理
采用DNS的基本结构可以解决分布式检索系统设计的结构确定问题,基本达到了分布式系统提高准确率和更新率的效果,但这并不能确保其实际地实施。先前很多类似的系统也都遇到这样的问题:究竟谁愿意建立这样的系统?发现一些具体的需求是解决此问题的关键。
新系统与众不同的基本框架恰恰保证了它是一个实际中可行的系统。由于系统是按域划分的,而第三层节点往往对应于某个机构组织,如在我们的实验系统中(CERNET范围内),此层节点的系统都对应于校园网范围内的网页搜索引擎,目前已有一些高校购买了一些商业化网页搜索系统,而一旦一个更好的公共免费系统问世,大部分都会采纳此系统。如果底层的系统建成,就有了建立高层节点的良好基础。当然作为一个公共的服务平台,更高层的节点若要顺利建立实施,得到政府和一些公共部门的协调和支持也是必不可少的。以“域”为基本划分单位基本可以解决以往以服务器为基本单位的分布式检索系统的实施激励机制问题。
新系统采用的技术都完全基于现有的成熟技术。系统底层的网页搜索引擎只需在局域网范围内进行网页下载和索引工作,目前的技术已经远远超过这个需求。而第二层的网页元数据采集系统基于OAI系统设计,目前OAI已经在很多图书馆系统中使用多年,并在不断的改进中。第三层采用的分布式系统基于目前已经比较成熟的Webservice分布式技术设计,具体协议的编制则参考了SDLIP等已经有一些实际使用的协议。
作为一个公共的信息检索平台,其管理模式将采用和DNS一样的形式,有各个单位管理自己的检索系统,而由一个公共组织协调整个系统的运行。而这样的管理模式也避免了当前搜索引擎在版权等问题上的纠纷,
10
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于DNS的网页搜索引擎(2)在线全文阅读。
相关推荐: