李晓辉
(承德石油高等专科学校计算机与信息工程系,河北承德 067000)
各IT部门为了保证生产、教学等日常行为正常运转,一般要求产生数据的系统必须以实时方式传输数据,但在实时共享数据的同时要求信息数据的准确性高,这就需要在选用实时性、同步性性能高的数据库。
本文中所介绍的OracleGoldengate系统就能满足要求实时同步系统开发,系统满足支持核心业务生产的同时,还能够建立备份库,保证生产系统顺畅运转的同时满足大并发量海量数据的查询需求。在数据库应用过程中可以将产生的实时的、数据日志的更新提供给目的端,以实现实时数据共享能力,另外对于核心业务采的N+1容错技术,尽量减少或消除停机带来的灾难;再次为使数据应用有可扩展性,可以实现一对多,多对一的数据复制[1-2];最后支持异构数据库环境下的数据复制。
GoldenGate软件是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志(Online Redo Log)或归档日志(Archive Log)获得数据的增删改变化,并实现过滤,并将相关信息转换为GoldenGate TDM自定义的中间格式存放在队列文件中,使用队列文件暂时存储数据变化;数据经过压缩和加密传送到目的地;发送数据,执行所需的数据变化,然后将数据的变化提交到目的数据库。与此同时目的数据库通过捕捉到的数据变化文件通过数据压缩和加密传送回源数据库。在源数据库与目标数据库之间实现大量数据亚秒一级的实时复制。工作原理如图1所示。
Oracle Goldengate在数据同步备份的优势有如下四点[3]:
1)保证实时数据传输
体育彩票销售过程中对数据的实时性要求特别高,任何临时停机都会对销售数据带来巨大的灾难。GoldenGate TDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。并将日志转换为TDM格式直接通过网络的TCP/IP协议传输,这一过程大大提高了数据的压缩率(9∶1),降低了对网络宽带的要求,在目的数据库GoldengateTDM采用重组及分批加载数据的方法提高数据的下载速度,从而实现秒级的数据传输、复制过程。
2)灵活的拓扑结构
体彩销售中心要求保证在各种灾难发生时数据的完整性,Oracle Goldengate提供了灵活、先进的数据拓扑结构,不同的拓扑结构有不同的应用场景,单向复制结构需要有一个备用的数据库。GoldenGate在体彩中心这个项目的实施中采用了N+1模式的容灾,将灾备中心选在北京,建立了一个双机组成的Oracle RAC,将所有省市的数据通过Oracle GoldenGate数据复制软件实时备份到此数据库,从而达到了容灾的目的,保证在各种灾难发生时数据的完整性。
3)支持异构环境
实现在不同平台和数据库环境下复制数据。体彩销售中心由于分散在不同地区、使用不同的硬件和软件设备,因此存在着不同版本的数据库表,在升级和使用新产品时旧的数据如何安全、完整的实现迁移是关键问题,通过Oracle GoldenGate的跨平台特性能够实现异构的数据复制。Oracle GoldenGate这种开放的结构使客户适应各种异构数据平台,用户在产品的软硬件选择上更加灵活。
4)可靠的数据复制
体彩的销售数据要求有完整可靠的数据备份。GoldenGate为了维护数据交易的一致性,保证数据的连续可用以交易为单位进行数据复制,并且采用了抽取和复制进程的方法使用检查点机制记录完成复制的位置以保证数据无丢失,数据传输过程中还支持128位加密和数据压缩功能。
OracleGoldengate提供了先进、灵活的技术架构,在实际应用的场景中确实有很多数据迁移与复制方面的需求,在严格限制停机时间的情况下,我们需要有这样一个经得起考验的工具来实现数据的同步备份,无论从资源的占用、执行的效率还是对系统的要求等方面,Oracle Goldengate都具有独特的优势,可以满足不同业务的发展。
[1] 俞凯晟.GoldenGate软件在数据迁移中的应用[J].微型电脑应用,2012(4):51-53.
[2] 龚艳.通过Oracle GoldenGate实现灵活实时的数据推送[J].信息与电脑(理论版),2012(3):116-117.
[3] 谭志远,杨剑,宫云平.基于GoldenGate技术实现业务平台异地容灾备份的解决方[J].移动通信,2011(14):69-73.