虞俊杰
(常州纺织服装职业技术学院图书馆,江苏 常州 213164)
目前的数字图书馆在发展过程中不可避免地存在分布性和异构性的特征,这既是因为不同的图书馆信息资源的侧重点和信息组织模式不尽相同,也是因为不同数字图书馆在数字技术实现的平台、协议和技术结构有很大差异。数字鸿沟的存在使得用户访问不同类型的数字图书馆时往往需要不同的模式,且图书馆之间数据的交流与整合也存在困难,这给用户的使用和数字图书馆的进一步发展制造了技术上的瓶颈。在这样的背景下,互操作技术开始在数字图书馆的实现方案中受到广泛重视。
关于互操作技术,目前业界并没有一个统一的定义,但是大致上可以将其认定为:交换和共享文档、查询及服务的能力,由技术、组织和内容3方面组成。[1]就目前的数字图书馆发展情况而言,信息的查询、资源的共享、信息搜索管理以及图书馆的付费服务管理等,都和互操作技术紧密相关。
在现有的数字图书馆互操作实现方法中,基本上都没有考虑网络因素(如网络低带宽、高延迟、负载重和不可靠网络连接等)对数字图书馆互操作服务质量的影响。而基于移动Agent技术的互操作方案,在这些方面却有较为突出的优势,具有重要的理论与现实意义,关于其系统框架的构建,可以从以下几个方面进行分析。
分布式搜索和OAI元数据Harvesting是两种常用的数字图书馆互操作实现方法。利用分布式搜索方法实现数字图书馆互操作的基本思想是:将用户提交的查询实时地送往参与互操作的所有数字图书馆站点,收集每个数字图书馆返回的查询结果,综合整理后交给用户。在这种互操作方法中,由于查询被实时地送往远程数字图书馆站点,所以查询响应时间往往难以得到保证,其服务质量通常由参与互操作的数字图书馆中最差者决定。
利用OAI元数据Harvesting方法实现数字图书馆互操作的基本思想是:从参与互操作的各数字图书馆站点收集并提取元数据,经过合并处理后集中保存在数字图书馆门户(portal)站点的一个元数据仓储中,用户对保存在门户站点仓储中的元数据进行访问。这种方法在门户站点维护了一个所有参与互操作的数字图书馆馆藏元数据的副本,因此能够保证有较好的查询响应时间,并且具有较好的可扩充性。基于OAI元数据Harvesting的数字图书馆互操作服务的质量主要取决于从各数字图书馆站点采集到的元数据,而元数据的采集在很大程度上受到网络方面因素的影响,因此需要在数字图书馆的门户站点与各数字图书馆站点的服务器之间保持可靠的网络连接。显然,这在网络连接不稳定或不可靠的环境下是很难得到保证的。
将移动Agent引入数字图书馆领域,则可以利用移动Agent技术解决上述数字图书馆互操作方法中存在的一些问题,以提高低带宽、负载重、高延迟和不可靠网络连接等环境下数字图书馆互操作服务的质量。
Agent(包括智能Agent、多Agent系统和移动Agent)的技术、理论和方法为建立大规模异构、分布式应用提供了一种典型的范例,已经得到了学术界和企业界的广泛关注。而A-gent技术之所以受到如此重视和快速发展,其中一个主要原因是它能够为网络管理、Internet信息服务以及电子商务等应用领域提供关键的支撑技术。移动Agent技术可以实现资源的互换与交流,然后移动到网络中的其他地方继续其执行,最后以异步方式返回结果和消息。移动Agent技术是A-gent技术与分布式计算技术相结合的产物,它的出现不仅为分布式计算技术增加了智能性和动态性,而且进一步扩展了Agent处理事务的功能。
传统的远程过程调用(RPC)客户与服务器之间的交互需要保持连续的网络通信连接,直到客户得到所需要的结果。而移动Agent可以迁移到服务器端直接与服务器上的程序进行本地通信,这种本地通信不再占用网络资源。位于主机A上的移动Agent在执行期间可以根据需要,分别迁移到主机B和主机C上执行,分别与主机B上的数据源和主机C上的Agent交互,完成所需要的操作任务。
移动Agent技术将计算移向数据,而不是像传统的客户——服务器方法那样将数据移向计算,从而避免了大量数据的网络传输,降低了系统对网络带宽的依赖。在网络应用中,移动Agent可以派到数据源端执行,并且直接与数据源交互,可以有效减少网络负载。
由于移动Agent能够迁移到服务器端访问资源,直接带(传)回最终结果,所以避免了中间数据的网络传输延迟。
一旦移动Agent从客户端迁移到服务器端,它可以自主地执行,此期间不需要在客户机与服务器之间保持持续的网络连接,甚至可以断开网络连接,直到想回收Agent或再次传送Agent。这一特性非常适合于应对网络连接断续或不可靠环境(如无线网环境)。
由于移动Agent所具有的这些优越性,使其在数字图书馆的分布式信息检索、并行处理、个人助理、安全服务中介以及网络管理等方面有着广泛的应用。
将传统的分布式搜索技术与移动Agent技术进行集成,通过移动Agent将用户提交的查询动态地送往参与互操作的数字图书馆服务器端执行,不仅可以大大减轻网络负载,消除网络延迟,而且可以不受网络连接的限制。
在分布式搜索技术与移动Agent技术集成的互操作系统中,数字图书馆元搜索引擎是其核心部分,它集成了移动A-gent的基本设施(如创建和发送Agent等)。此外还必须增添以下功能:①根据用户提交的查询创建移动Agent;②将携带用户查询的移动Agent派往到参与互操作的远程数字图书馆服务器端执行;③接收移动Agent发送的查询结果。
移动Agent执行环境是支持Agent运行的关键部分,移动Agent与静态Agent的交互以及静态Agen对本地数字图书馆的访问均由它来控制并提供支持。静态Agent负责接收移动Agent送来的查询请求,执行数字图书馆的查询操作,并将查询结果交给相应的移动Agent。被派往远程数字图书馆服务器端的移动Agent成功地发送查询结果后,自行销毁。具体工作过程如表1所示。
表1 集成移动Agent和分布式搜索的数字图书馆互操作流程
OAI技术实际上是通过在数据提供者和服务提供者之间定义一个简单的协议(OAI-PMH)来实现数字图书馆的互操作,主要通过OAI元数据Harvester程序定期地向参与互操作的数字图书馆站点发送协议请求(如选择性Harvesting)来采集元数据。然而,这种获取元数据的方式往往受到网络方面因素(如网络负载过重和不可靠网络连接等)的影响。
将OAI技术与移动Agent技术集成,通过将移动Agent派往参与互操作的数字图书馆站点采集元数据,可以弥补这一缺陷。基于移动Agent的OAIHarvester程序负责从参与操作的数字图书馆站点采集元数据,它主要完成以下工作:①定期为要发送的协议请求创建相应的移动Agent,并填写好迁移计划表,然后将其派往到指定的数字图书馆站点(如DL1);②接收移动Agent发送的元数据记录;③将接收到的元数据存入元数据仓储(如MySQL数据库)中,供高层搜索服务访问。
静态Agent负责接收移动Agent送来的协议请求,并根据该协议请求采集相应的元数据交给移动Agent。移动Agent再将采集到的元数据发送给OAIHarvester程序,然后迁移到下一个数字图书馆站点(如DL2)执行同样的操作,直到全部数字图书馆站点访问完成后自行销毁。具体工作过程如表2所示。为了支持移动Agent的运行,要求参与互操作的所有数字图书馆站点必须安装移动Agent执行环境。
表2 集成移动Agent和OAI技术的数字图书馆互操作过程
操作的交互性和资源信息的流动性与共享性是未来数字图书馆发展的重要方向,互操作技术作为这一发展的重要技术支撑,应当受到足够的重视。Agent技术目前日趋成熟,凭借其良好的交互性和自主异步性,以及对网络的优化必将成为未来数字图书馆互操作技术的研究热点。虽然目前我国在Agent技术研究方面还处于起步阶段,但只要能积极学习与创新,一定可以在数字图书馆互操作技术层面有更大的突破。
[1] 耿广利.关于现代数字图书馆建设的几点思考[J].郑州工业高等专科学校学报,2008(1).
[2] 胡玫艳.论互操作技术的建设与发展[J].现代管理,2009(9).
[3] 咸修斌,唐文龙.互操作模式下数字图书馆发展的思考[J].数字技术探索,2011(2).
[4] 曾文雄.Agent技术的实施方法[J].河南教育学院学报:社会科学版,2007(1).