您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > Oracle_GoldenGate的HA解决方案
第1页Copyright@200OracleCorporationAllrightsreserved.OracleGoldenGate的HA解决方案第2页Copyright@200OracleCorporationAllrightsreserved.Oracle数据复制及灾难备份解决方案(HA)...................................................................3OracleGoldenGate技术原理简介........................................................................................5第3页Copyright@200OracleCorporationAllrightsreserved.Oracle数据复制及灾难备份解决方案(HA)2009年7月Oracle公司收购了GoldenGate,GoldenGate是全球最领先的实时数据整合的解决方案。GoldenGate最强大之处是对关键业务进行实时的数据整合和连续的数据捕获和更新,同时提供跨异构平台(不同硬件、不同操作系统、不同数据库品牌、不同版本)的连续数据同步,达到数据复制和灾备的目的。Oracle公司在收购了GoldenGate之后,对产品进行了重新整合,以提供跨企业的实时数据及灾难备份需求的解决方案,下图为OracleGoldenGate典型应用场景:同时OracleGoldenGate还包含了Oracle数据库企业版11g的重要选件ActiveDataGuard。1.广电行业的7×24小时高可用,建议主系统侧使用OracleRAC,通过GoldenGate(含ActiveDataGuard)同时将数据实时灾备到异地的数据库上(如果使用OracleRAC更好),在灾难发生时,远程的节点上有完全同步的数据,可以迅速切换到远程节点上提供原有服务,如下图所示。第4页Copyright@200OracleCorporationAllrightsreserved.2.广电行业,尤其是省网整合过程中存在的地市多中心,同样需要数据的“大集中”、集中灾备以及从主中心的数据回流。因此,我们推荐在各分中心和主中心(集中灾备中心)之间使用GoldenGate进行数据传输(单双向均可),如下图所示。这种架构既能解决其它高速复制产品无法实现的N+1模式,又能解决数据上传和回流的双向复制问题。3.广电行业的应用系统已经逐步发展成了大数据量、高并发、海量数据检索以及报表查询负载重的系统,因此经常需要对主系统的查询负载进行卸载。因此,我们推荐在主系统和查询分离服务器(如报表服务器)之间使用GoldenGate进行数据传输(通常单向即可),如下图所示。第5页Copyright@200OracleCorporationAllrightsreserved.OracleGoldenGate技术原理简介GoldenGateGoldenGate数据复制实现原理:GoldenGate公司的领先技术就是逐渐为大家所知的交易数据管理TransactionalDataManagement(TDM),可以在异构的IT基础结构(几乎所有常用操作系统如和数据库平台)之间实现大量数据的秒一级的数据捕捉、转换和投递。GoldenGate通过解析数据库日志并将数据传输和应用到目标数据库,实现数据同步复制,其复制的原理如下图所示:图三GoldenGate复制原理示意图如上图所以,GoldenGate的数据复制过程如下:1.利用捕捉进程(CaptureProcess)在源端数据库读取在线日志或则归档日志,然后进行解析,只提取其中数据的变化如增、删、改操作,并将相关信息传送到目标系统。捕捉进程在每次读完日志中的数据变化并将数据传送到目标系统后,会写检查点,记录当前完成捕捉的日志位置,检查点的存在可以使捕捉进程在中止并恢复后仍可从原来日志位置继续复制;2.目标系统接受数据变化并缓存到GoldenGate队列当中,队列为一系列临时存储数据变化的文件,等待投递进程读取数据;3.GoldenGate投递进程从队列中读取数据变化并创建对应的SQL语句,通过数据库的本地接口执行,提交到数据库成功后更新自己的检查点,记录已经完成复制的位置,数据的复制过程最终完成。由此可见,GoldenGate是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate将数据变化转化为自己的格式,直接通过TCP/IP网络传输,而且可以通过高达9:1的压缩率对数据进行压缩,可以大大降低带宽需求。通过128位的数据加密技术,保证数据在传输过程的安全性;在目标端,GoldenGate可以通过交易重组,分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,以实现秒一级大量数据的同步复制。GoldenGate可以提供可靠的数据复制,主要体现在下面三点:1.保证事务一致性第6页Copyright@200OracleCorporationAllrightsreserved.GoldenGate应用复制操作的顺序与在源系统上的顺序相同,并且按照相同的事务环境提交,确保在目标系统上数据的完整性和读一致性,为实时查询和事务处理创造了条件。2.检查点机制保障数据无丢失GoldenGate的抽取和复制进程使用检查点机制记录完成复制的位置。对于抽取进程,其检查点记录当前抽取日志的位置,下次复制3.可靠的数据传输机制GoldenGate使用应答机制传输交易数据,只有在得到确认消息后才认为数据传输完成,否则将自动重新传输数据,从而保证了抽取出的所有数据都能发送到备份端。(将英文换成中文)GoldenGate的数据传输机制GoldenGateTDM异常处理机制:GoldenGateTDM软件提供了完善的异常处理机制,可以自如应对各种异常,下面我们对常见的一些情况作具体分析:1.网络故障异常处理如数据传输过程中出现传输不稳定甚至中断等情况,GoldenGateTDM可以自动的处理网络中断,在网络恢复后重新启动复制,中断期间的数据可以在网络恢复后复制到备份端数据库,如下图所示:第7页Copyright@200OracleCorporationAllrightsreserved.在网络中断出现后,GoldenGateTDM的抽取进程会自动停止,此时共享阵列中的检查点记录最后一次成功复制数据的位置。GoldenGateTDM能够以用户自定义的间隔自动重新启动抽取进程,直到网络恢复进程重启成功。抽取进程重新启动后首先去读取检查点,找到中断位置从对应日志中重新开始读取,开始正常复制过程,整个过程无需人工干涉。2.数据库实例停止异常处理在日常维护中,经常会遇到需要停止数据库的情况,此时GoldenGateTDM抽取或者投递进程也会终止。GoldenGateTDM可以配置自动重起的功能,在自定义的时间间隔内监测进程状态,一旦发现其终止会重新试图启动该进程。因此,在数据库重新启动之后,GoldenGateTDM可以各进程根据自己的检查点自动继续数据复制,保证无数据丢失。3.生产中心当前节点停机异常处理在集群环境中,如果运行GoldenGateTDM当前节点停机,可以将GoldenGateTDM转移到其它节点继续运行,如下图所示:当节点1停机后,GoldenGateTDM进程终止,此时共享阵列中的检查点记录最后一次成功复制位置。我们可以通过GoldenGate网管软件Director监测到节点进程失败,然后通过脚本将GoldenGateTDM切换到另外一个活动的节点上重新启动。由于GoldenGateTDM安装于共享阵列,配置文件、断点信息等信息对此节点也是可见的,抽取进程可以正常启动。抽取进程首先去读取检查点,获取中断位置,然后继续从该位置解析数据库日志,恢复正常的复制过程。整个过程中目标端数据中心不受影响,投递进程会一直等待新数据的到来,直到复制恢复。4.备份中心当前节点故障异常处理如果目标端数据中心机集群环境中运行GoldenGateTDM的当前节点停机,类似于生产中心当前节点停机,可以将GoldenGateTDM切换到其他节点继续运行,如图所示:第8页Copyright@200OracleCorporationAllrightsreserved.同样,在当前节点停机后,可以通过网管软件或者人工切换GoldenGateTDM到其他节点继续运行,投递进程的检查点可以保证从队列的中断位置继续复制。需要注意的是此时生产中心的抽取进程也会停止,可以通过配置自动启动或者采用手动方式重启抽取进程即可继续复制。5.两端数据不一致异常处理方案GoldenGateTDM工作过程两端数据库处于活动状态,如果由于人为操作失误等原因造成了两端数据不一致,可以通过更改GoldenGate的复制起始点重新复制。GoldenGateTDM提供基于时间点的复制,只要日志(在线或归档状态均可)没有删除,复制可以从任意时间点开始。出现误操作以后,我们可以改变源数据库抽取进程的时间点,从错误操作之前的时间点重新进行复制,结合GoldenGateTDM冲突检测机制,恢复目标端数据库相关数据与源数据库的一致性。第9页Copyright@200OracleCorporationAllrightsreserved.
本文标题:Oracle_GoldenGate的HA解决方案
链接地址:https://www.777doc.com/doc-10699 .html