您可以使用Oracle GoldenGate来:

  • 执行独立的批量加载以填充数据库表以进行迁移或其他用途。
  • 将数据作为初始同步运行的一部分加载到数据库表中,以准备与Oracle GoldenGate进行更改同步。

15.1.1提高初始负载的性能

除了使用数据库实用程序执行的所有初始加载方法外,您还可以通过使用并行Oracle GoldenGate进程更快地加载大型数据库。要使用并行处理,请执行以下步骤。

  1. 按照本章中的说明为要使用的每组并行进程创建初始加载提取和初始加载Replicat。
  2. 使用TABLE和MAP参数,为每对Extract-Replicat进程指定一组不同的表,或者可以使用TABLE的SQLPREDICATE选项对不同的Extract进程中的大型表进行分区。

对于所有初始加载方法,测试表明使用RMTHOST参数中的TCPBUFSIZE选项产生的吞吐量比没有它的加载速度快三倍。如果目标系统是NonStop,请不要使用此参数。

15.1.2初始加载的先决条件

验证您是否满足执行初始加载的先决条件,这些将在以下各节中介绍。

15.1.2.1禁用DDL处理

在执行初始加载之前,禁用DDL提取和复制。 DDL处理由Extract和Replicat参数文件中的DDL参数控制。

15.1.2.2准备目标表

以下是可以加快负载并帮助您避免错误的建议。

  • Data: 确保目标表是空的。否则,可能存在重复行错误或正在加载的现有行和行之间的冲突。
  • Constraints: 禁用外键约束并检查约束。外键约束可能会导致错误,并且检查约束会减慢加载过程。加载成功结束后,可以重新激活约束。
  • Indexes:从目标表中删除索引。插入索引不是必需的。他们将显着减缓加载过程。对于插入到表中的每一行,数据库将更新该表上的每个索引。加载完成后,您可以添加索引。

所有访问DB2 for z / OS目标表的应用程序都需要主索引。除主索引外,您可以从目标表中删除所有其他索引。

  • Keys: 为使Oracle GoldenGate协调复制的增量数据更改与加载结果,每个目标表必须具有主键或唯一键。如果您无法通过应用程序创建密钥,请使用TABLE和MAP参数的KEYCOLS选项将列指定为Oracle GoldenGate用途的替代密钥。一个关键字有助于识别要处理的行。如果您无法创建密钥,则源数据库必须停止加载。

15.1.2.3配置管理器进程

在源系统和目标系统上,配置并启动管理器进程。 One Manager可用于初始加载过程和更改同步过程。有关更多信息,请参阅配置管理器和网络通信

15.1.2.4创建一个数据定义文件

如果源数据库和目标数据库具有不同的定义,则需要数据定义文件。 Oracle GoldenGate使用此文件将数据转换为目标数据库所需的格式。有关更多信息,请参阅将复制数据与元数据关联。

15.1.2.5创建更改同步组

要准备在初始加载期间捕获和复制事务性更改,请创建联机提取和复制组。您将在加载过程中启动这些组。请参阅配置联机更改同步以获取更多信息。

如果从安静的源数据库执行加载并且不会连续更改同步,则可以省略这些组

除非在初始加载指令中指示这么做,否则不要启动Extract或Replicat组。变更同步会在加载负载时跟踪事务性变更,然后将目标表与这些变更协调一致。

首次提取在新的Oracle GoldenGate配置中启动时,将跳过所有打开的事务。只有在提取开始后才开始的事务被捕获。

15.1.2.6在进程组之间共享参数

在初始加载Extract和初始加载Replicat参数文件中,还需要在更改同步参数文件中使用的某些参数。您可以将这些参数从一个参数文件复制到另一个参数文件,也可以将它们存储在中央文件中,并在每个参数文件中使用OBEY参数来检索它们。或者,您可以为共享参数创建Oracle GoldenGate宏,然后使用MACRO参数从每个参数文件调用宏。

有关使用OBEY和使用宏的更多信息,请参阅Oracle GoldenGate Process Interfaces入门。

15.2经典架构中的初始加载

参考资料

https://docs.oracle.com/goldengate/c1230/gg-winux/GWUAD/instantiating-oracle-goldengate-initial-load.htm#GWUAD548

OGG初始加载过程概述的更多相关文章

  1. Linux内核启动过程概述

    版权声明:本文原创,转载需声明作者ID和原文链接地址. Hi!大家好,我是CrazyCatJack.今天给大家带来的是Linux内核启动过程概述.希望能够帮助大家更好的理解Linux内核的启动,并且创 ...

  2. (二)我的Makefile学习冲动&&编译过程概述

    前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 ...

  3. C编译过程概述

    转自:http://my.oschina.net/apeng/blog/105245 C 编译过程概述 目前Linux下最常用的C语言编译器是GCC(GNU Compiler Collection), ...

  4. [转贴]C编译过程概述

    http://my.oschina.net/apeng/blog/105245 C 编译过程概述 目前Linux下最常用的C语言编译器是GCC(GNU Compiler Collection),它是G ...

  5. HDFS启动过程概述及集群安全模式操作

    1.启动过程概述 Namenode启动时,首先将映像文件(fsimage)载入内存,并执行编辑日志(edits)中的各项操作.一旦在内存中成功建立文件系统元数据的映像,则创建一个新的fsimage文件 ...

  6. go语言编译过程概述

    go语言编译过程概述 总结自<go语言设计与实现> 名词解释: 中间代码 中间代码是编译器或者虚拟机使用的语言,它可以来帮助我们分析计算机程序.在编译过程中,编译器会在将源代码转换到机器码 ...

  7. C#、JAVA操作Hadoop(HDFS、Map/Reduce)真实过程概述。组件、源码下载。无法解决:Response status code does not indicate success: 500。

    一.Hadoop环境配置概述 三台虚拟机,操作系统为:Ubuntu 16.04. Hadoop版本:2.7.2 NameNode:192.168.72.132 DataNode:192.168.72. ...

  8. iOS设计 - 一款APP从设计稿到切图过程概述

    这篇文章站在GUI设计师的角度概述了APP从项目启动到切片输出的过程,相当于工作流程的介绍.这里写的不是一种规范,只是一种工作方法,加上技术的更新是非常快的,大家在具体工作中,一定要灵活运用. 这里我 ...

  9. 【转】android Apk打包过程概述_android是如何打包apk的

    最近看了老罗分析android资源管理和apk打包流程的博客,参考其他一些资料,做了一下整理,脱离繁琐的打包细节和数据结构,从整体上概述了apk打包的整个流程.   流程概述: 1.打包资源文件,生成 ...

随机推荐

  1. Flask简单学习

    一:安装 直接 pip install Flask,就可以安装好了 二:hello world 编写一个hello.py # coding: utf- from flask import Flask ...

  2. Collection 接口

    Collection 接口中的方法 ArrayList implements List List extends Collection 主要方法:toArray(); 集合转数组 clear(); 清 ...

  3. mysql批量插入简单测试数据

    mysql批量插入简单测试数据 # 参考网址: https://www.2cto.com/database/201703/618280.html 1.mysql创建测试表 CREATE TABLE ` ...

  4. Python对象的创建和赋值

    创建类 类的定义以关键字class开头,之后跟着一个名字(用户定义)来标识这个类,并且以冒号结尾.类的内容以缩进(4个空格)表示,如下例的pass表示什么事情也不做. Python命名规则(以字母或者 ...

  5. ResourceBundle读取properties配置文件

    package cn.rocker.readProperties; import java.util.ResourceBundle; import org.junit.Test; /** * @Cla ...

  6. 设计模式---接口隔离模式之中介者模式(Mediator)

    一:概念 在Mediator模式中,类之间的交互行为被统一放在Mediator的对象中,对象通过Mediator对象同其他对象交互.Mediator对象起到控制器的作用 二:动机 在软件构建的过程中, ...

  7. python 面向对象(六)MRO C3算法 super

    ########################总结################ 面向对象回顾 类:对某一个事物的描述,对一些属性和方法的归类 class 类名: var=123#类变量 def ...

  8. SpringMVC+Shiro不拦截静态资源配置

    最近在弄SpringMVC与Shiro整合,发现如果将DispatcherServlet拦截 *.do这样的URL,就不存在访问不到静态资源的问题.如果DispatcherServlet改为拦截“/” ...

  9. Docker记录-Docker部署记录

    1.Docker介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后 ...

  10. JavaScript深度克隆(递归)

    今天在深度理解JQuery源码时,剖析extend时: jQuery.extend = jQuery.fn.extend = function() { //... } 感觉该方法的一部分功能与深度克隆 ...