ITPub博客

首页 > 数据库 > Oracle > GolgenGate原理说明

GolgenGate原理说明

Oracle 作者:yrsniper 时间:2014-01-24 00:57:53 0 删除 编辑

对于golgengate,它并没有dataguard那么普遍。ogg需要单独下载软件包安装,而且主库和备库都需要下载,而且要求ogg的版本一样。实现方式是通过分析源数据库的在线日志或者归档日志,来达到数据同步的目的,通过源数据库的捕捉进程将数据传送到目标数据库的投递进程,然后再转化为sql在目标数据库执行。捕捉进程每次读完log或者归档的数据信息后并转化为自己的格式,再通过tcp协议传送到目标端后,都会发生一个检查点,记录当前捕捉log的位置。带捕捉进程中止或者异常后,再次启动时可以继续接着捕捉。在数据传输过程中,可以达到9:1的压缩率来传送,速度很快。而且并不是单纯的传送日志或者归档文件,而且传送gg自己的格式的信息。大概是日志文件内容的1/4.
种类:可实现一对一单向,一对多单向,一对一双向,一对多双向,一对一对多。
如图所示:
 

capture:从redo或归档文件取得db的变更信息。输出到trail文件。
data pump将trail文件传输到远端机器。
trail文件:将db变更信息以逻辑形式存储的、gg中间文件。
备注:这里如果网络好的话,可以不使用trail文件来存储中间变更信息。extract和replicat可以直接实现日志信息的传输。但如果网络不好,或者由于一些小问题,导致日志信息没有在第一时间传递过去,那就需要有那么一个中间文件将日志信息存储起来,待以后传送。

 
获取:以一定间隔读取redo日志,获取变更信息。
  间隔可以用参数eofdelay或eofdelaycsesc设置。缺省1s最小10毫秒。
  变更信息输出到本地或者远程trail文件。
  满足extract缓冲区写满时或者达到设置的时间时。
 

data pump变更信息的发送:
另外启动发送专用的extract(即datapump),就是先保存到本地的trail文件然后发送
一个extract 兼capture和datapump之职,从redo获取信息然后直接发送到远端

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9514665/viewspace-1074766/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-01-24

  • 博文量
    11
  • 访问量
    16110