这意味着已定义的数据库结构更改(比如创建新表)会自动添加到复制系统,无需任何管理或干预。当在主数据库中添加或更改表时,这不仅会取消或大大减少">管理工作,而且会极大地增加复制系统的可靠性,特别在作为一个活动的灾难恢复站点的同步机制使用时。本文是系列文章的第一部分,将通过一个灾难恢复使用案例,解释如何为 Q Replication 技术中提供的单向复制拓扑结构建立模式级订阅,该技术是 IBM InfoSphere Data Replication v10.1.3 for Linux®, UNIX®, and Windows® 附带的。我们鼓励您重现此场景。为了尽可能的方便,本文下载部分会提供各种脚本。请查看本系列的更多文章,其中包含双向拓扑模式级订阅等内容。
在当今的需求 市场中,企业越来越依赖电子数据和软件应用程序,利用它们为客户提供服务以及遵守政府和行业法规。这些企业不能承受由于计划或意外系统中断而造成的直接停机费用。更多停机造成的影响甚至可能是间接的、长久性的。
IT 部门通常运行各种(通常更多的)多个高可用性和灾难恢复解决方案来预防计划和意外停机。多数常用技术都基于硬件(要求主站点与辅助站点具有相同的硬件),需要提供一个闲置的大型主机(如果没有故障发生的话),还需要在近距离设置一个备用站点(这不能防止区域停机),不能预防应用程序故障,或者需要大量时间来激活辅助站点,以防止主站点停机。
带有 Q Replication 的主动/主动灾难恢复
IBM 使用 Q Replication 提供了一个基于近实时事务复制机制的软件,该机制可保证数据交付。从技术上讲,Q Replication 是一项异步日志捕获/事务重播技术,使用 WebSphere MQ 作为解决方案分散组件的运输和分段机制。Q Replication 可被配置成单向或多向的,因此所有数据都将从站点 A 流向站点 B,反之亦然。与物理 SR 解决方案相比,基于 MQ 的数据复制是一个有趣的替代或补充方案,因为:
主站点和辅助站点之间没有距离限制。 备用数据库是完全激活且可以访问(读和写)的,这允许执行以下操作: 工作负载平衡。 将专用任务(比如专用租户和实时报告)发送到辅助站点。 如果发生灾难,则会立即重新路由应用程序。 允许支持多个备用站点。 允许支持主站点和辅助站点上的异构硬件,甚至不同的操作平台。 允许数据构造子集。 允许延时复制。 允许支持地域上分散的应用程序,通常在本地数据库上运行,
但是,如果发生灾难,则会切换到远程站点。 辅助站点上没有闲置的大型主机。
DDL 复制和模式复制的优势
假设您使用一个数据复制解决方案将任务关键型 OLTP 数据库与一个远距离灾难恢复站点同步。此外,假设由于当地断电,您不得不将您的应用程序切换到远程站点。切换后您立即意识到,DBA 尚未添加 3 个重要的新表,这 3 个新表是新版本附带的用于进行复制设置的。通过使用 IBM Q Replication 技术引入的新模式级订阅,很容易避免这类可能出现的场景,IBM Q Replication 技术是 IBM InfoSphere Data Replication for Linux, UNIX, and Windows (IIDR) 的附带技术。模式级订阅和自动 DDL 复制将缓解破坏灾难恢复站点的风险(这种破坏是由于遗忘了一些检查清单项而导致的),而且为 DBA 留有一定的时间来关注更重要的任务。
解决方案的组成部分
IBM InfoSphere Data Replication (IIDR) 支持大容量低延迟的已更改数据的移动,范围从数据仓储和业务智能、数据库迁移、应用程序整合和主数据管理,到高可用性、业务连续性和双主动数据库。
InfoSphere Data Replication 为各种 IBM 和非 IBM 数据库管理系统提供了日志捕获支持,提供了三个主要数据复制技术,它们分别是 Change Data Capture、Q Replication 和 SQL Replication。InfoSphere Data Replication 用户可以选择独立使用或结合使用这些技术。
本文主要关注 IBM InfoSphere Data Replication (IIDR) 附带的 Q Replication 。Q Replication 解决方案的组成部分包括:相互独立的可操作的运行时组件、Q Capture 和 Q Apply、作为数据传输和缓冲机制的 MQ、基于图形和命令行的管理组件和一个基于浏览器的管理控制台 Q Replication Dashboard。
图 1 展示了 Q Replication 解决方案的分布式组件如何相互作用。
图 1. Q Replication 组件概述
Q Replication Capture
Q Capture 程序通过标准 DB2 日志界面处理 DB2 恢复日志,确定相关日志记录,并在事务层发送 MQ 消息。Q Capture 处理作为 DML 语句结果的所有日志记录以及某些 DDL 相关日志记录。
Q Replication Apply
Q Apply 程序使用 MQ 重新构建从 Q Capture 收到的事务,并将该事务应用在目标表或存储程序中。Q Apply 程序旨在通过并行应用事务语言紧跟技术快速发展的步伐,同时维护相关目标表之间数据一致性和引用完整性。
MQ 服务器
WebSphere MQ 是 IBM 的通用消息平台。对于 Q Replication 来说,MQ 基础架构主要用于将捕获的事务从 Q Capture 传递到 Q Apply。集群的 MQ 服务器可用于实现高可用性。您可以选择使用 Q Capture 或 Q Apply 将 MQ 客户端界面连接到 MQ 服务器。
MQ Explorer
WebSphere MQ Explorer 是一个可选组件,用于显示队列管理器、队列和通道状态。
Replication Center 和 ASNCLP
Replication Center 是图形前端用于交互式定义复制订阅。作为替代方案,订阅设置可使用 ASNCLP 命令语言轻松地实现自动化,特别在设置了大量复制对象的时候。Replication Center 和 ASNCLP 都可以填充存储在源和目标数据库中的复制控制表。
Q Replication Control Tables
Q Replication Control Tables 是一组 DB2 表(一些位于复制源数据库中,一些位于复制目标数据库中),其中包含复制配置、复制状态和统计信息,这些信息可用于监控和调优。可以将 Q Replication Control Tables 理解为开放式接口。每一列都记录在 Q Replication 文献中。
Q Replication Dashboard
Q Replication Dashboard 是一个基于浏览器的前端,可显示所有复制脚本及其状态、报警情况、性能指标等。如果发生故障,该仪表板会自动向管理员发出警报,而且提供具体场景向导。
什么是模式级订阅
模式级订阅是一个设置大量数据表的数据复制的新方法,只需使用一组简命令即可。在创建并激活模式订阅之后,所有表的表级订阅都会自动定义,与模式订阅命名模式相对应。您可以选择在目标数据库中创建目标表。
此外,当在复制源数据库中创建一个新表时,通常会自动创建一个新表级订阅(包括目标数据上的目标表)。首次插入源表时,复制机制甚至可以创建目标表的所有索引,目标表位于源数据库中。可以选择设置一个选项(通常推荐这样做),其中某些 ALTER TABLE 语句也可复制到目标数据库,无需任何管理干预。目前已经支持添加列 (ALTER TABLE ... ADD COLUMN) 和更改列数据的类型 (ALTER TABLE ... ALTER COLUM) 。模式订阅是 DB2 for Linux, UNIX, and Windows V10.1 和 InfoSphere Data Replication V10.1.3 首先引入的概念。