Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92355703
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-12 13:35:45

     来源:赛迪网技术社区    作者:yuehew

联合数据库具有两个与其他应用服务器不同的特点:

联合服务器可以被配置为接收全部或接收部分针对数据源的请求。联合服务器把这些请求分散到数据源。

与其他应用服务器一样,一个联合服务器用 DRDA 通信协议(例如 SNA 和 TCP/IP)与 DB2 家族实例通信。然而,与其他应用服务器不同的是,与非 DB2 家族实例通信时用其他协议。

图2描述了联合数据库系统的设置流程:

WebSphere II 包括两种包装器(Wrapper),一种为关系型包装器,负责DB2 UDB, Informix, Oracle, Microsoft SQL Server, Sybase, ODBC, OLE DB 等数据的复制。另一种为非关系型包装器,负责 Flatfile, Excel, XML 等非关系型数据的复制。

包装器定义了一个负责本地数据库与远程数据库通信的库。包装器执行很多任务,比如:它可以连接到数据源,包装器应用了数据源的标准连接API。它还可以给数据源提交请求。联合数据库系统可以操作远程联合系统的表。远程表在本地联合数据库中虚拟存在,客户应用程序可以操作这些虚拟表,但是它们真正存在于远端数据库中。每个远程虚拟数据库,把联合数据库当作数据库客户端,他们只对数据库客户端的请求有回应。因此联合数据库需要下载各种远程数据库的客户端。

一个联合系统的构造,需要一个作为联合服务器的 DB2 实例,一个作为联合数据库的数据库,一个或多个数据源,和可以存取数据库和数据源的客户(用户和应用)。如果要完成远程不同数据库之间的复制,还需要应用DB2的数据复制功能。

IBM DB2 复制(在一些平台上被称为数据传播)是一个从一个位置到另一个位置复制 DB2 和/或其他数据库厂商数据的强大的,灵活的工具。IBM的复制支持数据转换,数据连接和过滤数据。可以在不同的平台之间搬运数据,也可以把数据分散到不同的地点或从分散的地方把数据聚合到一个地方。可以在不同的系统之间交换数据。

IBM复制由四个主要部分组成:管理 (Administrator),Capture,Apply,警报监视器 (Alert Monitor)。

管理的部分主要通过复制中心的图形界面来实现。通过复制中心可以定义复制源,定义从数据源到目标数据的地图。它也用来管理和监控本地和远程的 Capture 和 Apply 进程。从图3中可以看出复制中心图形界面对其他几个部分的支持关系。

在源数据服务器上运行的 Capture 程序可以获取 DB2 源数据表中的变化。DB2 的源数据服务器可以为 DB2 在 z/os, os/390 上的版本 6,7和8,也可以是 iseries 在 os/400 V5R2,或 DB2 在 Windows, Unix 系统中的版本 8。当定义数据源的时候会自动生成相应的触发器 (Triggers),可以用来捕获数据源的变化。要复制的数据可以在 Capture 进程中通过选择列来进行过滤。被捕获的更改信息首先存放到本地的源数据所在的数据库的表中并且当更改应用到目标数据中之后会自动删除。

当对源表进行改动时,DB2 把相关的记录写入日志。这些日志服务于数据库发现和复制。Capture 程序通过数据库自动连接并获取日志记录。每个源表都有相应的 CD (change data) 表来获取数据的变化。当定义一个复制数据源时,复制中心自动生成 CD 表。

阅读(206) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~