异种数据库集成的主要技术有哪些?
1)数据的迁移和转换
利用数据转换程序,对数据格式进行转换,从而能被其它的系统接收。这种方法处理简单,已为大多数用户理解和接受。许多数据库管理系统DBMS都自带有一些数据转换程序,也为用户提供了方便。但这种方式当数据更新时会带来不同步的问题,即使人工定时运行转换程序也只能达到短期同步,这对于数据更新频繁而实时性要求很高的场合是不太适用。
2)使用中间件
中间件(middleware)是位于Client与Server之间的中介接口软件,是异构系统集成所需的粘接剂。现有的数据库中间件允许Client在异构数据库上调用SQL服务,解决异构数据库的互操作性问题。功能完善的数据库中间件,可以对用户屏蔽数据的分布地点、DBMS平台、SQL方言/扩展、特殊的本地API等等差异。
使用中间件的异种数据库集成有以下几种方法
(1)通用SQL API 即在Client端的所有应用程序都采用通用的SQL API访问数据库,而由不同的DBMS Server提供不同的数据库驱动程序,解决连接问题。通用的SQL API又可分为嵌入式SQL(ESQL--Embedded SQL)和调用级SQL(CLI--Call Layer Interface)。ESQL是将SQL嵌入到C、Pascal、COBOL等程序设计语言中,通过预编译程序进行处理,因而SQL的所有功能及其非过程性的特点得到继承。CLI则采用一个可调用的SQL API作为数据存取接口,它不需要预编译过程,允许在运行时产生并执行SQL语句。由于CLI更为灵活,现在应用较广,如Microsoft的ODBC、IBM的DRDA、Borland的IDAPI、Sybase的Open Client / Open Server等等。 mda.com
(2)通用网关 网关(gateway)是当前流行的中间件方案。在Client端有一个公共的客户机驱动程序(Gateway Driver);在Server端有一个网关接受程序,它捕获进来的格式和规程(Format and Protocol,FAP)信息,然后进行转换,送至本地的SQL接口。
(3)通用协议 通用协议是指公共的FAP和公共的API,并且有一个单一的数据库管理接口。公共FAP支持适用于所有的SQL方言的超级设置或容忍全部本地SQL方言通过。
(4)基于组件技术的一致数据访问接口 例如,Microsoft推出的UDA(Universal Data Access)技术,分别提供了底层的系统级编程接口和高层的应用级编程接口。前者定义了一组COM(组件对象模型)接口,建立了抽象数据源的概念,封装了对关系型及非关系型各种数据源的访问操作,为数据的使用方和提供方建立了标准;后者是建立在前者基础上的,它提供了一组可编程的自动化对象,更适合于各种客户机/服务器应用系统,尤其适用于在一些脚本语言中访问各种数据源。
3)多数据库系统
在CIMS环境下,从系统和规模上来解决异种数据库集成的方法为多数据库系统。所谓多数据库系统就是一种能够接受和容纳多个异构数据库的系统,对外呈现出一种集成结构,而对内又允许各个异构数据库的"自治性"。mda.com
这种多数据库系统和分布式数据库系统有所不同。多数据库系统不存在一个统一的数据库管理系统软件,而分布式数据库系统是在一个统一的数据库管理系统软件的管理与控制之下运行的。多数据库系统主要采用自下而上的数据集成方法,因为异构情况在前而集成要求在后,而分布式数据库系统主要采用自上而下的数据集成方法,全局数据库是各个子库的并集。多数据库系统主要解决异种数据库集成问题,可以保护原有的数据资源,使各局部数据库享有高度"自治性",而分布式数据库系统是在数据的统一规划下,着重解决数据的合理分布和对用户透明的问题。当然,两者之间在技术上有很多交叉,可以互相借鉴。 多数据库系统一般分为两类
(1)有全局统一模式的多数据库系统。多个异构数据库集成时有一个全局统一的概念模式,它是通过映射各异构的局部数据库的概念模式而得到。
(2)联邦式数据库系统。各个异构的局部数据库之间仅存在着松散的联邦式耦合关系,没有全局统一模式,各局部库通过定义输入、输出模式进行彼此之间的数据访问。 到目前为止,没有商品化的多数据库系统,在CIMS环境中实施有一定难度。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>