时间:2022-12-21 04:30:01 | 来源:信息时代
时间:2022-12-21 04:30:01 来源:信息时代
分布式数据库产品 : 具有较强分布式数据库管理功能的一些知名的大型商用数据库管理系统产品,典型的如Oracle、DB2、Sybase、Informix、SQL Server等,这些产品都支持多异构数据库共存,可实现企业内外的信息集成。它们的分布式数据处理机制同分布式数据库的思想一致,但在具体实现方法上有很大的差别。
1. Oracle分布式数据库
Oracle支持异构的分布式数据库系统,即在系统中存在有非Oracle数据库。对应用来说,该异构分布式数据库系统呈现为一个单一的、本地的Oracle数据库,由本地的Oracle数据库服务器隐含数据的分布和异构特性。Oracle数据库服务器通过连接于一个代理(agent)的异构服务(heterogeneous services)来访问非Oracle数据库。
(1)异构服务(heterogeneous services,HS): 是集成于Oracle服务器内的组件,是Oracle透明网关产品套件中的使能技术。HS为Oracle网关产品及其他的异构访问工具提供了通用的体系结构和管理机制。
(2)透明网关代理(transparent gateway agent):异构服务使用透明的网关代理连接指定的非Oracle系统,并且,不同类型的系统需要不同的代理。
(3)数据库链(database links): 是一个指针,定义从一个Oracle数据库服务器到另一个Oracle数据库服务器的单向通信路径。该链指针实际是数据字典表中的一个入口,必须与包含该数据字典入口的本地数据库连接,才能访问该数据库。
数据库链或是私有的或是公有的,私有的数据库链只允许创建数据库链的用户访问,而公有的允许所有的数据库用户使用。
2. DB2分布式数据库
DB2分布式数据库支持数据分区功能和基于DB2 Connect访问异构数据库功能。数据分区功能主要指数据分区特性和表分区特性。
(1)数据分区特性(data partitioning feature,DPF): 用于将数据库分成多个数据库分区。每个数据库分区有它自己的一组计算资源,包括CPU和存储。在DPF环境中,根据CREATE TABLE语句中指定的分区键,将表中相应的行分布到一定的分区上。当处理一个查询时,请求也相应地被划分成多个部分,以便让各个数据库分区各自处理其负责的那些行。DPF通过增加数据库分区来提高处理能力,并且随着表的增长,仍然可以保持较高的查询性能。
(2)表分区(table partitioning,TP): 将所有行放在同一个数据分区的一个指定范围的维中,通过添加和删除整个数据分区,实现增加和删除大量数据。
DB2 Connect由编程接口(被实现为JDBCTM、SQLJ、 ODBC、 DB2 CLI、 OLE DB、 .NETⓇ和Embedded SQL驱动程序)和一个通信基础设施组成。DB2 Connect可以在同一个事务中执行一个DB2 for z/OS数据库和Windows数据库上的InformixⓇIDS之间的分布式连接(join),可在同一个提交范围内使用内建的两阶段提交(two-phase commit,2PC)更新这些数据源。另外,DB2 Connect附带了一个内建的基础级联邦数据库功能,当在Linux、Windows和UNIX服务器上部署了DB2Connect服务器时,就可以创建一个联邦数据库。这样,应用程序就可以连接到这个联邦数据库,把请求路由到真正的数据源。
3. Sybase数据库
Sybase数据库基于中间件为分布异构环境提供全局数据访问和事务管理控制。Sybase的分布式处理技术支持用户对不同地域的数据访问和数据移动,并实时维护数据的一致性。中间件产品有OmniCONNECT、OpenClient及Open Server等。
(1) Replication Server: 可以简便地实现跨企业之间的数据移动和同步。它能让DBA快速设置数据冗余的灾难备份系统和异构数据库平台的数据同步,如Sybase ASE、Oracle、IBM DB2和Microsoft SQL Server。通过方便的数据移动和同步,应用程序可以在需要的时候、需要的地点得到其他应用的数据,企业可以从数据共享中获得更多的经济价值。
(2) Sybase复制服务器(Sybase replication server):采用基于事务的复制技术,可在分布环境下实现多厂商数据库间的数据复制。replication server manager(RSM)是一个功能性很强的系统管理工具,用于实现和管理分布复制环境。
(3) OmniCONNECT: 是支持异构、分布数据库系统全局透明访问和数据集成的数据库网关。它使用全局存储过程,以一致的方式访问多个数据源。全局存储过程作为命名的数据库对象保存并共享,改善了服务器间通信以及分布应用的透明性。
(4) DirectCONNECT产品: 是用于与非Sybase数据源建立联系的“访问服务器”,是Sybase的中间件模块,用于实现客户与企业数据源的连接。Direct CONNECT为各类数据源提供基本的Sybase Transact-SQL透明性。它支持以DB-Library及ODBC应用程序接口(API)编写的客户应用。
4. SQL Server SQL Server采用 Microsoft分布式事务处理协调器(MS DTC)实现一个事务中访问多个数据库,并基于OLE DB实现多异构数据库的访问。
Microsoft分布式事务处理协调器(MS DTC)是一个事务管理器,它允许客户端应用程序在一个事务中包含多个不同的数据源。MS DTC服务正确协调完成分布式事务,以确保所有服务器上的全部更新永久化,或在发生错误时删除所有更新。SQL Server应用程序也可以直接调用MS DTC,显式启动分布式事务。然后,指示一台或多台运行SQL Server的服务器在此分布式事务中登记,并在MS DTC的协调下正确完成此事务。
OLE DB实现从多异类数据源中访问数据。这些数据源可以存储于一台或多台计算机。通过使用OLE DB、Microsoft SQL Server实现分布式查询,查询存储在多个SQL Server实例中的分布式数据。查询存储在各种可以使用OLE DB接口访问的关系和非关系数据源中的异类数据。