goldengate介绍

摘要:
同时,OracleGoldenGate可以实现多种灵活的拓扑结构,如一对一、广播(一对多)、聚合(多对一)、双向、点对点、级联等。它主要用于启动、监视和重新启动Goldengete的其他进程、报告错误和事件、分配数据存储空间以及发布阈值报告。GoldenGate引入了跟踪文件的概念。前面提到,GoldenGate将在提取数据后将提取的交易信息转换为GoldenGate专有格式的文件。

Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。Oracle Golden Gate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾、数据库升级和移植、双业务中心等多个场景下应用。同时,Oracle Golden Gate可以实现一对一、广播(一对多)、聚合(多对一)、双向、点对点、级联等多种灵活的拓扑结构。

 和传统的逻辑复制一样,Oracle GoldenGate实现原理是通过抽取源端的redo log或者archive log,然后通过TCP/IP投递到目标端,最后解析还原应用到目标端,使目标端实现同源端数据同步。以下是OracleGoldenGate的技术架构
 

goldengate介绍第1张

1:Manager进程:
Manager进程是GoldenGate的控制进程,运行在源端和目标端上。它主要作用有以下几个方面:启动、监控、重启Goldengate的其他进程,报告错误及事件,分配数据存储空间,发布阀值报告等。

2:Extract进程:
Extract运行在数据库源端,负责从源端数据表或者日志中捕获数据。

3:Pump进程:
pump进程运行在数据库源端。其作用是如果源端使用了本地的trail文件,那么pump进程就会把trail以数据块的形式通过TCP/IP协议发送到目标端,这通常也是推荐的方式。pump进程本质是extract进程的一种特殊形式,如果不使用trails文件,那么就是extract进程在抽取完数据以后,直接投递到目标端。

4.Trail文件:
为了更有效、更安全的把数据库事务信息从源端投递到目标端。GoldenGate引进trail文件的概念。前面提到extract抽取完数据以后Goldengate会将抽取的事务信息转化为一种GoldenGate专有格式的文件。然后pump负责把源端的trail文件投递到目标端,所以源、目标两端都会存在这种文件。trail文件存在的目的旨在防止单点故障,将事务信息持久化,并且使用checkpoint机制来记录其读写位置,如果故障发生,则数据可以根据checkpoint记录的位置来重传。

5.Replicat进程:
Replicat进程,通常我们也把它叫做应用进程。运行在目标端,是数据传递的最后一站,负责读取目标端trail文件中的内容,并将其解析为DML或DDL语句,然后应用到目标数据库中。

6.GGSCI:
GGSCI是GoldenGate Software Command Interface 的缩写,它提供了十分丰富的命令来对Goldengate进行各种操作,如创建、修改、监控GoldenGate进程等等

GoldenGate应用的拓展结构、支持平台和数据库

goldengate介绍第2张

本文所有内容来自互联网,感谢作者分享!如有雷同,不胜荣幸!

免责声明:文章转载自《goldengate介绍》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Storm常见模式——分布式RPCUbuntu基于zsh自定义设置shell主题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

dbstart和dbshut启动、关闭数据库报错ORACLE_HOME_LISTNER is not SET解决办法

dbstart启动数据库报错,如下: [oracle@wen ~]$ dbstartORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net ListenerUsage: /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart ORACLE...

1.Oracle10g安装

1.1 下载安装包 我们可以到ORACLE的官方网站去下载它的安装压缩包,不过得详细看相关的软件声明,废话少说,以下就是Oracle10g的链接地址和站点截图http://www.oracle.com/technology/global/cn/software/products/database/oracle10g/index.html     1.2.安...

mysql 关于 不可重复读与幻读的解决方案【del】

http://www.cnblogs.com/itcomputer/articles/5133254.html 不可重复读和幻读的区别  当然,   从总的结果来看,   似乎两者都表现为两次读取的结果不一致.但如果你从控制的角度来看,   两者的区别就比较大对于前者,   只需要锁住满足条件的记录对于后者,   要锁住满足条件及其相近的记录 ------...

sqlserver 数据库区分大小写设置

SQL SERVER 2000/2005中默认不区分大小写,可以通过collate Chinese_PRC_CS_AS来要求区分大小写,可以通过collate Chinese_PRC_CI_AS恢复默认的不区分大小写 默认情况下,SQL Server不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”, 如果使用查询语句:sel...

Flask之Sqlalchemy

Sqlalchemy 开发文档:https://www.jianshu.com/p/0ad18fdd7eed 创建数据库 安装 pip instal flask-sqlalchemy 两种配置方法 # 两种配置数据库方法 第一种app.config from flask import Flask import pymysql from flask_sq...

Redis--模糊查询(转)

创建一条测试 数据 查询 (默认是 DB0) 创建:set name xiaoming 查询: get name 1、模糊搜索查询 (redis 默认有16个DB , 0-15 ) Redis 模糊搜索 1、keys *   匹配数据库中所有 key 2、keys h?llo   匹配 hello , hallo 和 hxllo 等。 3、keys...