【ogg模式】集成与非集成模式下的Replicat模式

4.3.1 About Nonintegrated Replicat

在非集成模式下,Replicat进程使用标准SQL将数据直接应用到目标表。
在该模式下,Replicat的操作如下:

  • 读Oracle GoldenGate的踪迹。
    执行数据筛选、映射和转换。
    构造表示源数据库DML或DDL事务的SQL语句(按提交的顺序)。
    通过Oracle调用接口(OCI)将SQL应用于目标。

The following diagram illustrates the configuration of Replicat in nonintegrated mode.

【ogg模式】集成与非集成模式下的Replicat模式
Description of the illustration nonintegratedapply.png

使用非集成副本时:

  • 目标Oracle数据库是Oracle 11.2.0.4之前的版本。
    你想要大量使用在集成复制模式下不支持的功能,see About Integrated Replicat.

You can apply transactions in parallel with a nonintegrated Replicat by using a coordinated Replicat configuration.

Parent topic: Deciding Which Apply Method to Use

4.3.2 About Integrated Replicat

在集成模式下,Replicat流程利用Oracle数据库中可用的应用处理功能。在该模式下,Replicat的操作如下:

  • 阅读Oracle GoldenGate的踪迹。
    执行数据筛选、映射和转换。
    构造表示源数据库DML事务(按提交的顺序)的逻辑更改记录(LCR)。DDL由Replicat直接应用。
    通过轻量级流媒体接口连接到目标数据库中的后台进程(称为数据库入站服务器)。
    将LCRs传输到入站服务器,后者将数据应用到目标数据库。

The following figure illustrates the configuration of Replicat in integrated mode.

【ogg模式】集成与非集成模式下的Replicat模式
Description of the illustration integratedapply.png

在单个副本配置中,称为apply servers的多个入站服务器子进程并行地应用事务,同时保持原始事务的原子性。在需要配置Replicat进程或动态配置时,您可以尽可能地增加目标系统所支持的并行度。下图演示了使用两个并行应用服务器配置的集成副本。

【ogg模式】集成与非集成模式下的Replicat模式
Description of the illustration integratedapply_detail.png

集成副本异步应用事务。不具有相互依赖关系的事务可以安全地执行和不按顺序提交,以实现快速的吞吐量。具有依赖项的事务保证以与源上相同的顺序应用。

入站服务器中的读取器进程根据目标数据库中定义的约束(主键、惟一键、外键)计算工作负载中事务之间的依赖关系。屏障事务和DDL操作也是自动管理的。协调进程协调多个事务并维护应用服务器之间的顺序。

如果入站服务器不支持配置的特性或列类型,Replicat从入站服务器退出,等待入站服务器在其队列中完成事务,然后通过OCI以直接应用模式将事务应用到数据库。在应用直接事务后,副本以集成模式继续处理。

以下功能是应用在直接模式下的副本:

  • DDL操作
    序列操作
    表或映射参数中的SQLEXEC参数
    EVENTACTIONS处理
    注意,如果提取使用USENATIVEOBJSUPPORT来捕获UDT,那么集成的Replicat将把它应用到入站服务器,否则将由Replicat直接处理。

由于事务是在直接应用模式下连续应用的,因此大量使用此类操作可能会降低集成副本模式的性能。当大多数应用处理可以在集成模式下执行时,集成副本执行得最好, see Monitoring and Controlling Processing After the Instantiation.

Note:

User exits are executed in integrated mode. The user exit may produce unexpected results, however, if the exit code depends on data in the replication stream.

Parent topic: Deciding Which Apply Method to Use

4.3.2.1 Benefits of Integrated Replicat

以下是使用集成副本和非集成副本的好处。

  • Integrated Replicat允许在并发应用多个事务的并行应用进程之间自动分区繁重的工作负载,同时保持源事务的完整性和原子性。可以使用并行度和MAX_PARALLELISM参数配置应用进程的最小和最大数量。当工作负载增加时,Replicat会自动添加额外的服务器,然后在工作负载减轻时再次向下调整。

  • 集成的副本需要最少的配置工作。所有工作都在一个Replicat参数文件中配置,而不需要配置范围分区。

  • 通过Replicat和入站服务器之间的轻量级应用程序编程接口(API),可以为集成的Replicat启用高性能应用流。

  • 屏障事务由多个服务器应用进程之间的集成副本进行协调。
    DDL操作作为直接事务处理,在DDL执行之前等待服务器处理完成,从而形成一个屏障。
    瞬时复制主键更新由集成的Replicat以无缝的方式处理。
    集成的Replicat使用单个或可插入的数据库。

Parent topic: About Integrated Replicat

4.3.2.2 集成Replicat需求

要使用集成副本,必须满足以下条件。

  • The target Oracle Database must be Oracle 11.2.0.4 or later.

  • 必须在源数据库上启用补充日志记录,以支持计算表之间的依赖关系和调度目标上的并发事务。有关启用所需日志记录的说明,请参阅配置日志记录属性。在启动Oracle GoldenGate进程之前的任何时间都可以启用此日志记录。

  • Integrated Parallel Replicat is supported on Oracle Database 12.2.0.1 and greater.

Parent topic: About Integrated Replicat