转:Oracle GoldenGate学习之Goldengate介绍
转自:http://blog.sina.com.cn/s/blog_a32eff28010136d9.html
日志或归档日志获得数据的增删改变化,再将这些变化应用到目标数据库,实现源数据库与目标数据库同步、双活。GoldenGate TDM 软件能够在异构的IT基础结构(包含差点儿全部经常使用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制。其复制过程简图例如以下:
如上图所看到的,GoldenGate TDM的数据复制步骤例如以下:
利用捕捉进程(Capture Process)在源系统端读取Online Redo Log或Archive Log。然后进行解析,仅仅提取当中数据的变化如增、删、改操作,并将相关信息转换为GoldenGate TDM自己定义的中间格式存放在队列文件里。再利用传送进程将队列文件通过TCP/IP传送到目标系统。捕捉进程在每次读完log中的数据变化并在数据传送到目标系统后,会写检查点,记录当前完毕捕捉的log位置,检查点的存在能够使捕捉进程在中止并恢复后可从检查点位置继续复制;
目标系统接受数据变化并缓存到GoldenGate TDM队列其中。队列为一系列暂时存储数据变化的文件,等待投递进程读取数据;
GoldenGate TDM投递进程从队列中读取数据变化并创建相应的SQL语句,通过数据库的本地接口运行,提交到数据库成功后更新自己的检查点。记录已经完毕复制的位置,数据的复制过程终于完毕。
由此可见,GoldenGate TDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量仅仅有日志的四分之中的一个左右)。GoldenGate TDM将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,并且能够通过高达9:1的压缩率对数据进行压缩,能够大大减少带宽需求。
在目标端,GoldenGate TDM能够通过交易重组,分批载入等技术手段大大加快数据投递的速度和效率。减少目标系统的资源占用。能够在亚秒级实现大量数据的复制,并且目标端数据库是活动的
GoldenGate TDM提供了灵活的应用方案,基于其先进、灵活的技术架构能够依据用户需求组成各种拓扑结构,如图所看到的:
GoldenGate TDM 能够提供可靠的数据复制,主要体如今以下三点:
保证事务一致性
GoldenGate TDM 在灾备数据库应用复制数据库交易的顺序与在生产中心数据库上的顺序同样,而且依照同样的事务环境提交,确保在目标系统上数据的完整性和读一致性,为实时查询和事务处理创造了条件。
检查点机制保障数据无丢失
GoldenGate TDM的抽取和复制进程使用检查点机制记录完毕复制的位置。对于抽取进程,其检查点记录当前已经抽取日志的位置和写队列文件的位置;对于投递进程。其检查点记录当前读取队列文件的位置。检查点机制能够保证在系统、网络或GoldenGate TDM进程故障重新启动后数据无丢失。
可靠的传输数据机制
GoldenGate TDM 用应答机制传输交易数据,仅仅有在得到确认消息后才觉得传输数据完毕,否则将自己主动又一次传输数据。从而保证了抽取出的全部数据都能发送到备份端。传输数据过程中支持128位加密和数据压缩功能。
GoldenGate TDM 能够提供可靠的数据复制。主要体如今以下三点:
保证事务一致性
GoldenGate TDM 在灾备数据库应用复制数据库交易的顺序与在生产中心数据库上的顺序同样,而且依照同样的事务环境提交,确保在目标系统上数据的完整性和读一致性,为实时查询和事务处理创造了条件。
检查点机制保障数据无丢失
GoldenGate TDM的抽取和复制进程使用检查点机制记录完毕复制的位置。
对于抽取进程,其检查点记录当前已经抽取日志的位置和写队列文件的位置;对于投递进程,其检查点记录当前读取队列文件的位置。检查点机制能够保证在系统、网络或GoldenGate TDM进程故障重新启动后数据无丢失。
可靠的传输数据机制
GoldenGate TDM 用应答机制传输交易数据,仅仅有在得到确认消息后才觉得传输数据完毕,否则将自己主动又一次传输数据,从而保证了抽取出的全部数据都能发送到备份端。
传输数据过程中支持128位加密和数据压缩功能。
Oracle 公司的GoldenGate产品,能够在异构的IT基础结构之间实现大量数据的秒一级的数据捕捉、转换和投递。GoldenGate能够支持差点儿全部经常使用操作系统如和数据库平台。例如以下表所看到的:
|
操作系统 |
数据库 |
|
MS NT, 2000, XP, Linux, Sun Solaris, HP-UX, IBM AIX, HP NonStop, TRU64, IBM z/OS,OS/390 |
Oracle, DB2, MS SQL Server, MySQL, Enscribe, SQL/MP, SQL/MX, Sybase, Teradata, 其它ODBC 兼容数据库 |
转:Oracle GoldenGate学习之Goldengate介绍的更多相关文章
- Oracle GoldenGate学习之Goldengate介绍
Oracle GoldenGate学习之Goldengate介绍 (2012-10-02 17:07:27) 标签: 检查点 数据传输 队列 进程 分类: Goldengate Goldengate介 ...
- Oracle Database 11g Express Editon介绍及安装
一.Oracle Database 11g Express版本介绍 公司项目开发中,使用的数据库是Oracle 10g和MySQL 5.5,最新因为开发需要,需要从后台读取一些数据.使用的客户端是PL ...
- Asp.Net MVC4 + Oracle + EasyUI 学习 序章
Asp.Net MVC4 + Oracle + EasyUI 序章 -- 新建微软实例 本文链接:http://www.cnblogs.com/likeli/p/4233387.html 1. 简 ...
- 人工智能深度学习Caffe框架介绍,优秀的深度学习架构
人工智能深度学习Caffe框架介绍,优秀的深度学习架构 在深度学习领域,Caffe框架是人们无法绕过的一座山.这不仅是因为它无论在结构.性能上,还是在代码质量上,都称得上一款十分出色的开源框架.更重要 ...
- 数据库事务隔离级ORACLE数据库事务隔离级别介绍
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted.Read committ ...
- iOS学习之NSBundle介绍和使用
iOS学习之NSBundle介绍和使用 http://blog.csdn.net/totogo2010/article/details/7672271 新建一个Single View Applicat ...
- Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
- oracle 12c 学习系列(1)–12c初体验
详见原文博客链接地址: oracle 12c 学习系列(1)–12c初体验
随机推荐
- Install opencv on Centos
研究centos 有很长一段时间了,一直没有写过这方面的感觉,今天在看到网友的一篇文章时,结合亲身体会就下面安装opencv的一些步骤与大家共享. CentOS OpenCV已被广泛应用但是也在不断的 ...
- BZOJ1060: [ZJOI2007]时态同步(树形dp 贪心)
Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 3285 Solved: 1286[Submit][Status][Discuss] Descript ...
- Sql Server 连接池
在看缓存的一篇文章中,看到连接池的三个字,来充充电. 原文连接 这篇讲了关键字 其实我们一直在使用SqlServer的连接池.在连接字符串中,Pooling为是否启用连接池,默认值为true,表示启用 ...
- 发现被坑了,从来没看到说java的Date一旦实例化时间就不会变了
java中使用Date对象获取系统当前时间,然而我就没看到哪篇教程告诉我说Date创建对象之后其中的时间是不会变的!!! 一开始我写了类似于下边这样的代码,希望每隔一段时间显示一次时间 Date d= ...
- sublim Text3 配置python3环境
一.安装Sublime Text 3 1.双击下载的.exe文件安装,安装路径不要有中文目录 2.安装Sublime Text 3时,勾选“Add to explorer context menu”, ...
- hibernate中session的get和load方法的区别和联系:
1. get:及时加载,调用到get方法时立即向数据库查询(在没有session缓存的请况). 2. load:默认使用懒加载,当用到数据的时候才向数据库查询(在没有session缓存的请况). 3. ...
- Disconf使用简单Demo
创建配置文件 在敲Demo之前,需要在Disconf上创建自己的APP,然后在APP的某个环境下创建配置文件,如下面截图中的流程,这里就简单创建了一个redis.properties,内容是redis ...
- Performance Co-Pilot
Install Performance Co-Pilot 提前安装依赖 [root@iZrj97j6t7ih9hgz1me35hZ ~]# cat install.sh yum install -y ...
- 基于BootStrap,FortAweSome,Ajax的学生管理系统
一. 基于BootStrap,FortAweSome,Ajax的学生管理系统代码部分 1.students.html <1>html页面文件 <!DOCTYPE html> & ...
- 数据结构(1) 第一天 算法时间复杂度、线性表介绍、动态数组搭建(仿Vector)、单向链表搭建、企业链表思路
01 数据结构基本概念_大O表示法 无论n是多少都执行三个具体步骤 执行了12步 O(12)=>O(1) O(n) log 2 N = log c N / log c N (相当于两个对数进行了 ...