
一、OGG的各个组件解析(Oracle GoldenGate)
1、Manager:
Manager进程是GoldenGate中进程的控制进程,用于管理Extract,Data Pump,Replicat等进程
在Extract,Data Pump,Replicat进程启动之前,Manager进程必须先要在
源端和目标端启动,在整个Golden Gate运行期间,它必须保持运行状态
监控与启动Golden Gate的其他进程
管理trail文件及Reporting
在windows系统上,Manager进程是作为一个服务来启动的,在Unix系统下是一个进程
2、Extract
Extract进程运行在数据库源端上,他是Golden Gate的捕获机制,可以配置
Extract进程来做如下工作:
初始数据装载:对于初始数据装载,Extract进程直接从源对象中提取数据
同步变换捕获:保持源数据与其他数据集的同步,初始数据同事完成后
Extract进程捕获源数据的变换,比如DML变换(增删改),DDL变化(drop,create,alter)
3、Replicat
Replicat进程是运行在目标端系统的一个进程,负责读取Extract进程提取到的数据(变更的事务或者DDL变化)
然后应用到目标数据库
配置Replicat进程完成如下工作:
- 初始化数据装载:对于初始化数据转载,Replicat进程应用数据到目标对象或者路由
它们一个高速的Bulk-load工具上
- 数据同步,将Extract进程捕获到的提交了的事务应用到目标数据库中
4、Collector
Collector是一个运行在目标端的一个后台进程
接收从TCP/IP网路传输过来的数据变化,并写道Trail文件里
- 动态Collector:由管理进程自动启动的collector叫做动态collector,用户不能
与动态collector交互
- 静态Collector:可以配置成手工运行Collector,这个就是静态的
5、Trails
为了持续的提取与复制数据库变化,Golden Gate将捕获到的数据变化临时存放在磁盘上
的一系列文件中,这些文件叫做Trail 文件
这些文件可以在source DB上也可以在Target DB上,也可以在中间系统上,这依赖
于选择哪种配置情况
在数据库源端上叫做Local Trail或者Extract Trail
在目标端的叫做Remote Trail
6、Data Pumps
Data Pump是一个配置在源端的复制的Extract机制
Data Pump是一个可选组件,如果不配置Data Pump,那么由Extract主进程
将数据发送到目标端的Remote Trail中
如果配置了Data Pump,会由Data Pump将Extract主进程写好的本地Trail文件通过网络发送到
目标端的Remote Trail文件中
使用Data Pump的好处:
如果目标端或者网络失败,源端的Extract进程不会意外终止
需要在不同的阶段实现数据的过滤或者转换
多个源数据复制到数据中心
数据需要复制到多个目标数据库
7、ADG的解释
所谓的ADG,就是在备份库,应用redo log的同时,避免资源的浪费
OGG侧重于数据备份,ADG侧重于高可用
OGG可以异构,也就是不仅可以用在Oracle,ADG只有oracle可以用