Change Data Capture Service for Oracle by Attunity 系统体系结构

Oracle CDC 服务将对一个或多个源 Oracle 数据库中所选表的更改捕获到 SQL Server 实例上的 SQL Server CDC 数据库中。 下面的关系图显示构成 Oracle CDC 服务的各组件。

服务体系结构

下图阐释使用的四个平台。 在许多情况下,这些平台可以重叠,但此关系图表示一个标准用例。 例如,Oracle 和 SQL Server 数据库分别运行在单独的计算机上并且不与 Oracle CDC 服务平台或用于设计 CDC 服务的平台共享是有意义的。 在此图中阐释的平台是:

  • Oracle CDC 服务:可以是安装和运行了 Oracle CDC 服务的任何支持的 Windows 计算机。 此平台还可以表示 Microsoft 故障转移群集中的某一群集节点(在本文档的后面将论述高可用性配置)。

  • Oracle 数据库:可以是运行支持的 Oracle 数据库版本的任何计算机。 这包括运行 Windows、Linux 或所安装的 Oracle 数据库版本支持的任何其他操作系统的任何计算机。 请注意,该关系图以复数形式显示此平台,因为单个 Oracle CDC 服务可以从多个源 Oracle 数据库捕获更改。

  • SQL Server:可以是运行目标SQL Server数据库 (受支持的 SKU SQL Server 2019 (15.x) ) 的任何计算机。 一个 Oracle CDC 服务支持用于存储更改表和服务配置的一个 SQL Server 目标。 SQL Server 平台还可以表示使用 AlwaysOn 功能的 SQL Server 2019 (15.x) 的群集实例,或表示 SQL Server 2019 (15.x) 的镜像实例。

  • Oracle CDC 设计器:可以是能够访问源 Oracle 数据库和目标 SQL Server 数据库的任何支持的 Windows 计算机。

下表描述了在上述四个平台上运行的组件。

组件/说明 组件由以下项构成:
Oracle CDC 服务:这是发生了变更数据捕获活动的 Windows 服务。 Oracle CDC 实例:Oracle CDC 服务的子进程,用来处理单个源 Oracle 数据库(每个源 Oracle 数据库有一个 Oracle CDC 实例)的变更数据捕获活动。

Oracle 日志读取器:使用 Oracle 客户端读取 Oracle 事务日志。

Oracle 客户端:用于与 Oracle 进行通信的 Oracle 即时客户端。 这是应从 Oracle 获取并在安装 Oracle CDC 服务之前安装的必备组件。

SQL Server 更改编写器:它将对捕获的 Oracle 表的提交的更改写入 SQL Server更改表。 此组件还在目标 SQL Server 数据库中维护该捕获状态。

SQL ServerODBC 客户端:适用于 SQL Server 2019 的 Microsoft Native Client (15.x) 。 这是应从 Microsoft 获取并在安装 Oracle CDC 服务之前安装的必备组件。
Oracle CDC 服务配置:这是一种 Microsoft 管理控制台管理单元,它创建 Windows 服务并且设置其配置。 SQL Server 客户端:.NET framework 的版本 4 随附的 SQL ADO.NET 客户端。
Oracle 数据库:从其捕获对所选表的更改的源 Oracle 数据库。 日志挖掘器:通过其读取 Oracle 事务日志的一种 Oracle 组件。

事务日志:联机并存档的 Oracle 重做日志,Oracle 使用这些日志来确保数据库可以回滚事务并且从失败中恢复(在该情况下,Oracle 数据库必须在存档日志模式下操作)。
SQL Server 实例:承载 CDC 数据库的 SQL Server 实例。 这可能是群集SQL Server实例 (故障转移群集) ,也可以是 alwaysOn) (镜像数据库。 MSXDBCDC 数据库:一种数据库,使用此 SQL Server 实例的 CDC 服务的有关信息保存在此数据库中。 它还保存与每个 CDC 服务处理的 Oracle CDC 实例有关的信息。 该数据库作为 CDC 服务创建进程的一部分创建。

CDC 数据库:存储对源 Oracle 数据库之一进行的更改的 SQL Server 数据库。 将为 SQL Server CDC 启用 CDC 数据库,以便它们具有 SQL Server CDC 表和函数,从而轻松地使用来自 Oracle 的更改。
Oracle CDC 设计器:可帮助创建 Oracle CDC 实例的一种 Microsoft 管理控制台管理单元。 使用此管理单元可以选择要捕获的表和列,提供 Oracle 连接信息以及管理 CDC 实例的生命周期。 SQL Server 客户端:.NET framework 的版本 4 随附的 SQL ADO.NET 客户端。

Oracle 客户端:用于与 Oracle 进行通信的 Oracle 即时客户端。 这是应从 Oracle 获取并在安装 Oracle CDC 服务之前安装的必备组件。

Oracle CDC 服务及其子 Oracle CDC 实例只能与作为客户端的源 Oracle 数据库和目标 SQL Server 实例通信。 它们不主动侦听任何网络和其他协议。 Oracle CDC 服务监视 CDC 数据库中是否有配置更改,并且基于更新的配置更新其操作。