分布式搜索引擎的研究
薛振华 杨艳娟
(南京理工大学计算机科学与技术系,南京 210094)
摘 要 介绍分布式搜索引擎技术,将分布式搜索引擎技术与远程教育相结合。针对当前教育领域内的信息资源进行集中、分类、整理,建立基于WWW的信息资源导航库,让用户根据自己的需求快速找到所需资源,提高远程教育中信息资源的检索效率和精度。
关键词 分布,搜索引擎,远程教育,HJ-YHS
随着Internet迅速发展,WWW(World Wide Web 简称WWW)已成为一个巨大的信息空间,为用户提供了极具价值的信息资源。而面对大量的信息资源,通过浏览器一步步浏览已十分不便,如何快捷、准确地从WWW上获取所需信息,成为至关重要的问题。搜索引擎的出现,大大提高了人们搜集信息的能力。然而,现有的搜索引擎在搜索效率、信息维护、信息重复、网络及站点、负载等方面还存在着问题和困难。
目前,从体系结构上看,大部分搜索引擎是集中式的。即从Internet上取回页面,经过分析、处理后将所有的索引信息集中存储在某个站点,用户通过访问该站点实现查询。它们之间通常没有什么协作,各自独立搜索和处理信息,造成了大量的重复工作和严重的带宽浪费,有时甚至能造成网络阻塞。这种体系结构难以适应网络规模的日益扩大,业界已纷纷提出建立分布式搜索引擎的策略。
1 分布式搜索引擎
分布式搜索引擎是根据地域、主题、IP地址及其它的划分标准将全网分成若干个自治区域,在每个自治区域内设立一个检索服务器,而每个检索服务器由信息搜索机器人、索引搜索软件数据库和代理三部分组成。信息搜索机器人负责本自治区域内的信息搜索,并建立索引信息存入索引数据库。代理负责向用户提供查询接口,并与其它代理进行互换,实现检索服务器之间的信息交换,且查询可以重定向,即如果一个索引数据库没有满足查询要求,它可以将查询请求发送到其它检索服务器上。
1. 1分布式搜索引擎体系结构
它与集中式搜索引擎相比有以下优点:
各检索服务器之间相互共享资源,站点只向本自治区域内的信息搜索机器人提供信息,减轻了网络及各站点的负载。
各代理之间的相互协作及查询重定向使得提供的服务更完善。
与Web本身的分布式特性相适应,具有良好的可扩充性,便于维护。
索引信息划分到各自的索引数据库中,使得各索引数据库相对较小,查询的响应时间相对较短。
部分检索服务器发生故障时,其它部分能正常工作。
Web服务器集群是一种典型的分布式处理系统。所谓Web集群就是采用高速网络,将原来独立的若干个服务器联结起来,作为一个整体提供服务,把到达的请求分配到集群中的各个后台服务器上,让它们分摊负载及I/O,通过并行处理提高性能。此时涉及到请求分配器及负载平衡的技术问题。
请求分配器集中所有用户的请求,然后将这些请求分配到各检索服务器中进行并行处理。目前此技术的实现方法主要有IP Translation、TCP Proxy、Dynamic DNS和HTTP Redirection,相应的典型产品有Cisco的Local Director、Distributed Director、IBM的Network Dispatcher、UIUC NCSA的Scalable Web Server等。目前请求分配器多采用TCP Proxy技术。每个请求都由客户程序发起建立一个独立的TCP连接,应答结束后由服务器拆除该连接。在TCP Proxy技术中,请求分配器主要完成以下任务
接收用户的信息请求,并将其转发给检索服务器;
接收检索服务器返回的查询结果,并将其转发给客户;
如果一端中断TCP连接,立即中断另一端的TCP连接。
为了提高请求分配器的效率和吞吐能力多采用多线程和多路阻塞式I/O技术,如Microsoft的Internet Information Server和Netscape的Enterprise Server就是采用这两种技术。请求分配器的连接监听进程接收到一个来自客户机的TCP连接后,立即在内存中生成一个Worker进程。此后的工作,包括建立与服务器的TCP连接、接收和发送数据、拆除连接等,均由该线程完成。应答结束后,请求分配器立即从内存中删除该线程。多路阻塞式I/O是通过调用Select原语实现的,每个Worker进程用这种方法同时监听与客户机和服务器的两个TCP连接。接收数据时,如果没有数据到达,Select使线程处于一种开销极小的休眠状态,一旦有数据到达,立即退出休眠状态,启动接收过程接收数据。发送数据也如此。
负载平衡一般是通过请求分配器选择目标检索服务器来实现的。目前常用的请求分配算法主要有“轮转法”、“最少连接法”和“最快连接法”三种。为有效提高请求分配器算法效率,并使算法能够适应异构服务器集群,应使请求分配器知道每台检索服务器的处理能力,并能够对接收的每一用户请求的内容进行分析,同时应能够准确地跟踪各个服务器的负载情况。
Web服务器的集群技术使得处理能力更强,I/O带宽加大,扩展性好,可靠性高,且容易管理,成本降低。常见的并行Web服务器集群主要有两种组成方式:
以Cisco的Local Director为代表的“隔离式”,采用“最少连接法”或“最快连接法”进行请求分配。
以NCSA的Scalable Web Server为代表的“非隔离式”,采用“轮转法” 进行请求分配。
无论哪种方式,都要求后台服务器上的Web信息的访问路径和内容要完全一样。二者的区别在于这些服务器在Internet上对用户是否可见。“隔离式”集群采用类似于Proxy技术,只有请求分配器具有一个对外的IP地址,所有的用户请求都发往请求分配器,然后再由请求分配器将请求发到集群中的各后台服务器去处理,返回结果也由请求分配器返回给客户。“非隔离式”集群中的每台服务器都有独立的IP地址,请求分配经过动态DNS等实现,对请求的应答不通过请求分配器,而直接由服务器传给客户。
2 分布式搜索引擎实例
以江苏省邗江中学远程教育信息资源搜索系统——远航搜索系统(简称HJ-YHS)为例。社会的不断进步和科学技术的发展,教育的各个方面包括教育思想、观念、教育手段及方式都应作出相应改革。传统的教育方式远远不能满足时代发展的需要。信息时代教学的一个重要手段就是引入基于WWW的交互式远程教育。而Internet上资源分散,数据类型多,地址变动大,要想迅速找到所需信息并不容易。因此,要将Internet上的信息资源进行集中、分类、整理,建立基于WWW的信息资源导航库,让用户根据自己的需求快速找到所需资源。HJ-YHS就是基于以上背景而进行开发设计,旨在通过建立分布式搜索引擎技术,提高远程教育中信息资源的搜索效率和精度。
1. 2. 1应用体系总体结构及功能实现
HJ-YHS系统以Windows NT 4.0为开发平台,采用ASP(Active Server Page)实现查询页面的动态生成及结果显示,后台的Web服务器采用IIS 4.0,数据库服务器采用SQL Server 7.0以提供数据服务,Web客户端安装95/98操作系统及IE 4.0等浏览器,开发工具使用Visual InterDev 6.0或VB 6.0等。HJ-YHS特点是:
以教育信息、学术内容为主,服务对象为各类中学和教育部门,信息资源也以学术水准为选择条件。
按预先定义好的专题,有选择性的搜索相关网页,避免无关的Web网页,并将索引信息存入索引数据库。
对产生的大量初步检索结果进行分析、归类,根据用户交互反馈信息进一步缩小检索范围,提高检索精度。
2.1.1 HJ-YHS体系结构:
2.1.2系统功能模块:
网页搜索模块:负责定期启动网页搜集系统,根据给定的站点名在指定的范围内搜集信息。
信息分析模块:对搜集到的网页进行分析、整理,提取关键字和摘要,将索引信息存入索引数据库。
资源上载模块:接收客户端的上载文件,并将文件上载至Web服务器端特定目录中,同时将有关信息添加到索引数据库中,该模块只允许拥有相应权限的用户使用。
ASP信息检索模块:由用户查询界面启动,提供三种查询方式:即基于关键字的查询、学科分类查询和按年级查询。基于内容的查询根据用户提交的信息产生二级查询界面,进一步明确搜索意向,然后综合所有用户信息对网页的全文进行查询;基于学科分类和年级的查询可根据用户的需求,在指定范围内进行检索。
动态页面生成模块:按相关度大小输出结果。动态生成的页面中给出查询产生的页面标题,URL地址,内容摘要等。
静态页面生成模块:按学科专业目录分类。静态页面生成模块根据目录生成不同分类的静态页面
综上所述,基于分布式搜索引擎技术的优点,及全球互联网上信息资源的迅速增加,在远程教育领域内,分布式搜索引擎技术将会得到更广泛的发展。
参考文献
1 朱义军,马范援,白英彩.分布式搜索引擎与Z39.50协议.世界网络与多媒体,Jan.1999
2 翁惠玉,马范援,朱义军.网络搜索引擎的现状分析.情报学报,Vol.18,1999
3 俞 阳,马范援,朱义军.基于WWW的网络搜索技术(上).上海微型计算机,No.21,Jul.1998
4 俞 阳,马范援,朱义军.基于WWW的网络搜索技术(下).上海微型计算机No.22,Aug.1998
注:原文地址为:http://www.bjx.com.cn/files/wx/jsjyxxjs/2002-7/11.htm
今天的文章分布式搜索引擎的研究意义_简述搜索引擎的原理分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/66051.html