CORBA技术在数字信息资源整合方面的应用
2009-06-12邹凤杰
邹凤杰
摘要:对数字信息资源整合技术的研究许多领域具有很大的经济价值和广阔的前景。可以让用户更方便的获得有用信息,促进企业更好的发展。本文介绍了数字信息资源整合技术的发展和现状,并重点研究了CORBA技术在数字信息资源整合方面的应用。
关键词:数字信息资源;整合技术;CORBA
1 数字信息资源整合技术概述
1.1 数字信息资源整合概念
随着科技的发展,信息数据样式更加多样化,包括各种文本、音频、视频、图像、地理、遥感等数据,数据的组织方式不同,例如历史等级和网络数据。人类面对的各种数字信息资源数以亿计,面对如此数量众多、来源广泛的数字信息资源,采用传统的信息检索技术已越来越无法满足人们希望方便、快捷地搜索知识、获取知识的需求。需要产生新的技术将分布的信息的数据来源集成起来,进行统一地管理,并在此基础上实现高效的查询、检索,乃至数据挖掘、知识发现等应用,因此出现了数字信息资源整合技术的研究。数字信息资源整合就是要为Web 上分布的、自治的、异构的数据源提供统一的访问界面,并能回答那些需要从多个Web数据源抽取和合并数据的查询请求。
由于那些信息来源数据库的构建方式、支持平台、对数据内容的表现形式各不相同,产生了数据库间的异构性。因此数字信息资源整合的目的就是要屏蔽各个局部数据源之间异构性,把这些分布的、自治的数据源集成为一个整体,为用户提供统一的访问界面,满足用户从多个分布式数据源抽取和合并数据的查询请求。
1.2 数字信息资源整合技术的发展
80年代开始,数字信息资源整合主要采用紧密耦合的方法对异构数据库进行集成,由于这种方法采用集中控制分布数据库,每一次局部系统的改变都要引起对全局系统的修改和重新构造,使系统不但开发成本太高,而且后期维护困难。后来开始逐渐采用松散耦合的方法,出现了联邦式数据库集成框架和多数据库语言方法集成构架,每个本地数据库提供一个输出模式供其它数据库共享。每个数据库使用这些输出模式来定义一个输入模式,即表示能够本地访问的远程数据库信息的部分全局模式。到了90 年代初,随着网络技术的发展,伴随着各种数据库访问标准和数据库互连产品的出现又相继涌现了很多多数据库联合模型如:TSIMMIS、HERMES、theInternet Softbot、SIMS、the Information Manifold、Razor等,当前采用 CORBA技术来解决异构信息资源整合问题开始成为数字信息资源整合领域研究的热点。
2 CORBA技术
CORBA(Common Object Request Broker Architecture)是在面向对象的技术兴起,客户/服务器模式普遍得到应用的前提下,由对象管理组织 OMG 于 90 年代初为解决分布异构环境对象互操作而提出的一种开放的、分布式对象计算结构。CORBA 任何一个部分的制定都经过了800多个成员充分的讨论,因此该规范从一开始创建就是开放的、标准化的、广泛的。
CORBA 很好的结合了面向对象技术和分布式处理技术,弥补了传统分布处理系统的不足。它使用一种标准的通信模型,使运行在不同的操作系统、网络协议和硬件结构间的客户和服务器可以实现应用层间的交互,具有如下特点:
1)采用面向对象技术,CORBA 把分布式计算与面向对象的概念相结合,能够将冗余度控制在最低的程度。
2)提供了软件总线的机制,提供了独立于任何实现语言和环境这个接口,在不同的硬件平台、操作系统和网络上运行的任何应用程序、软件系统或工具只要具有与该接口规范相符合的接口定义,就能方便地集成到 CORBA 系统中,实现应用软件在“软件总线”上的“即插即用”。
3)具有良好的语言无关性,CORBA 定义了 IDL(接口定义语言)及映射。客户机与服务器可以用多种编程语言来编写应用,却不会影响相互之间的通信。
4)提供 ORB 对象请求代理,ORB 在不同对象之间建立链接,并对请求和返回值进行编解码,使之符合IIOP 协议,适合在网络中传输,因而数据传输与对象所在机器的操作系统的种类无关,具有平台无关性;ORB 完成对客户方提出的抽象服务请求的映射,自动寻找和定位服务器方的对象,自动设定路由,实现到服务器方的执行,这样用户在编制客户端程序时就可以避免了解过多的细节,只需要完整地定义和说明客户端需要完成的任务和目标;实现了客户端程序与服务器端程序的完全分离,这与面向过程调用机制为基础的客户/服务器模式有根本不同。
由以上特点可以看出,CORBA 规范提供了一种灵活的切实可行的抽象集,并且确定了一些服务从而在分布环境下实现应用的集成。与其他两种分布式对象计算主流技术EJB( Enterprise Java Beans)和 DOM 相比,CORBA 具有更高度的语言无关性、可扩展性、平台无关性,使得基于对象的软件成员在分布异构环境中实现可重用、可移植和可互操作。经过十年来的发展CORBA 日益成熟的技术和业界的广泛支持,使它已经在分布式异构环境下得到最为广泛的应用和研究,成为建立应用系统集成框架和标准构件的核心技术。从90 年代初期至今,出现了许多成功的CORBA 实现系统,在制造业、电信、金融、计算机等领域的分布式应用系统的开发中都得到了广泛的应用。因此在图书馆信息资源整合中可以利用 CORBA 开发出既具有面向对象又具有可重用性、可移植性、可扩展性、可伸缩性以及互操作性等的异构信息资源整合软件。
3 CORBA在数字信息资源整合方面的应用及优势
CORBA规范充分利用了现今各种技术发展的最新成果,使得CORBA在互操作、跨平台、IDL规范的方面具有很好的优势。CORBA可以提供一种灵活的切实可行的抽象集,使得基于对象的软件成员在分布异构环境中实现可重用、可移植和可互操作。因此CORBA在解决来源不同、运行环境不同的分布信息资源整合方面具有很强的技术优势:
CORBA的ORB能够屏蔽平台的异构,实现构件的互操作。使CORBA可以支持多中平台,多种语言,对 WWW 也具有良好的支持性,采用CORBA 技术可以方便的把各种平台下用各种语言编写的功能模块加以耦合。
CORBA能够更好地支持分布和组装构件,构件间通过接口以统一的IDL方式描述可以简单易行地实现互相通信。不同的应用数据源,只要提供IDL接口描述数据特征和提供的操作,就能很容易地与其它构件集成,实现数据源的“即插即用”。用户可以根据发展的要求,轻易增加其他功能,只要把这些功能做成一个组件,加在服务器的对象实现端就可以。使得资源整合系统具有良好的开放性、扩展性和集成性。
通过ORB调用的对象可以分布在不同的机器上,具有较高计算速度,可以把个人用户需要的功能对象放在距离用户较近的服务器上,从而减少服务器端的负载,提高运行速度和效率。
具有基于经典对象模型,支持多继承、封装和多态的特点,使得基于他的应用系统具有良好的可移植性、集成性和柔性等特点。
已有多个软件开发商提供了对CORBA 的支持。
电子资源来源广泛,包括本地资源、置放于异地的网上资源,信息资源不存储在同一个地方,而分布在不同的数据服务器上,信息存取网络化用户的访问一般通过网络获得信息服务。因此信息资源整合需要支持分布式,跨平台检索的技术来支持,而CORBA作为分布式环境下的理想体系结构,几乎支持所有的操作系统,而且支持多种编程语言。用CORBA创建的系统采用基于组件的思想,系统内的各组件可以轻易替换和修改,从而减轻了系统维护的负担。因此CORBA技术在实现构建异构平台,实现跨平台检索方面可以发挥重要的作用。
参考文献
[1]董丽,基于CORBA 的 Web 计算体系结构的研究,清华大学学报,2002.
[2]司汪芸,顾冠群.CORBA 技术综述.计算机科学,2001.
[3]郭瑞华,关于高校利用CORBA和XML集成虚拟图书馆的设想,图书馆杂志,2002.