关于并行复制

Parallel Replicat 是 Replicat 的另一个变体,它并行应用事务以提高性能。

它考虑事务处理之间的相关项,类似于 Integrated Replicat。相关性计算、映射和应用的并行性在数据库外部执行,因此可以卸载到其他服务器。在此过程中维护事务处理完整性。此外,并行复制还支持通过将大型事务拆分为块并并行应用大型事务来并行应用大型事务。

并行复制支持以下两种模式:集成模式和非集成模式。只有 Oracle AI Database 在集成模式下支持并行复制。

要使用并行复制,您需要确保具有以下值,这些值也是默认值:

使用集成的并行复制,复制会将 LCR 发送到入站服务器,该服务器将数据应用于目标数据库,在常规并行复制中,Oracle GoldenGate 将 LCR 作为 SQL 语句直接应用于数据库,类似于其他非集成复制的工作方式。注:为了获得 OLTP 工作负载的最佳性能,建议在非集成模式下使用并行复制。

并行复制的组件包括:

并行复制的优点

以下是使用并行复制的优点:

并行复制体系结构

并行复制进程利用在集成模式下 Oracle AI Database 中可用的应用处理功能。在单个复制配置中,多个入站服务器子进程(称为应用服务器)并行执行事务处理,同时保留原始事务处理原子性。

下面的体系结构图描述了从线索文件到目标数据库的并行复制(对于非集成的并行复制)的各个进程中的更改记录流。

下面是 para_rep_arch.png 的说明

下面是上面给出的体系结构图的说明:

并行复制的基本参数

下表列出了基本并行复制参数及其说明。

参数 说明

MAP_PARALLELISM

配置映射器数。这将控制用于读取线索文件的线程数。最小值为 1,最大值为 100,默认值为 2。

APPLY_PARALLELISM

配置供应商数。这将控制目标数据库中用于应用更改的连接数。默认值为四个。

MIN_APPLY_PARALLELISM

MAX_APPLY_PARALLELISM

应用并行性是自动优化的。您可以设置最小值和最大值以定义复制自动调整其并行性的范围。没有默认值。不要同时与 APPLY_PARALLELISM 一起使用。

SPLIT_TRANS_RECS

指定应将大型事务处理分成指定大小的段并并行应用。各个部分之间的依赖关系仍然得到尊重。默认情况下处于禁用状态。

COMMIT_SERIALIZATION

启用提交完全序列化模式,强制按线索顺序提交事务处理。

高级参数

LOOK_AHEAD_TRANSACTIONS

控制在批处理事务处理时排程引擎的显示距离。默认值为 10000。

CHUNK_SIZE

控制并行复制要将其视为大事务处理,事务处理必须有多大。当并行复制遇到大于此大小的事务处理时,它将对其进行序列化,从而导致性能下降。但是,增加此值也会增加并行复制占用的内存量。

参数文件示例

REPLICAT repe USERID ggadmin, password ***
MAP_PARALLELISM 3
MIN_APPLY_PARALLELISM 2
MAX_APPLY_PARALLELISM 10
SPLIT_TRANS_RECS 60000
MAP *.*, TARGET *.*;