参考:
http://wenku.baidu.com/view/4fd7ea22bcd126fff7050b5d.html
GoldenGate
TDM(交易数据管理)软件是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志或归档日志获得数据的增删改变化,再将这些变化应用到目标数据库,实现源数据库与目标数据库同步、双活。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位加密和数据压缩功能。
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 兼容数据库
GoldenGate的应用场景-容灾和应急备份
其中一主一备,快速恢复和切换,最小化数据损失,重新同步主备两端数据。主库数据变化能够实时的同步到备库,用途主要是在非计划性停机时候保持业务的连续性。
GoldenGate的应用场景-减少计划内停机
主要是保障业务零或近似零停机,在滚动升级中降低业务中断带来的损失。主要用途是保障系统/应用/数据库在升级,移植和维护期间业务的可用性。
GoldenGate的应用场景-双业务中心
主要是实现负载均衡(需要考虑全局多点的负载均衡,既提高性能,又避免业务中心的整体单点故障),提供系统整体性能。保障连续可用,快递的容灾接管,实现冲突的监测和处理。