网络传输量的大小直接关系到容灾方案实施的可行性。在原理上,Data Guard只是传输一份日志文件,而磁盘镜像技术将传输数据文件、联机日志、归档日志、控制文件等所有发生变化的文件。例如,针对交易处理,Data Guard只传输相应DML语句的日志信息,而磁盘镜像技术将传输该交易所涉及的所有数据块,以及归档日志等数据。根据统计资料显示,磁盘镜像的网络传输量是Data Guard的7倍,而磁盘I/O次数是Data Guard的27倍。
以某银行业务系统为实例: 该系统日交易量达到高峰时,日志文件将有60GB,网络传输率要求6Mbps/秒。使用磁盘镜像技术,网络传输率则至少会达到6×7 = 42Mbps/秒。如果还要考虑DB2、CICS、MQ等系统对线路的复用,以及系统的扩充,即便采用155Mbps的线路,从广域网络建设和运行成本等考虑,磁盘镜像进行数据库容灾也难以实施。
远程灾备分析
远程磁盘镜像技术由于受底层通信技术(光纤、ESCON等)限制,一般都有距离限制,如几十或百公里,如果要在广域网实施远程磁盘镜像,则需要大量的网络中继和转发设备,这样,网络设备投入将大量增加,而且网络延时的增加,对生产系统的影响也将加大。
相比之下,Data Guard基于Oracle Net Services(即标准的TCP/IP协议) 传输数据。TCP/IP协议是ESCON之上的传输协议,由于在信息包转发、路由和拥塞控制等方面更为优化,同时TCP/IP与底层通信协议无关(以太网、ATM、SONET等),而且,TCP/IP可以并行地进行若干信息包的传输。因此,TCP/IP的效率更高、网络延时更低,对生产系统的影响也更小。
数据保护能力分析
在各种故障中,故障率最高的是磁盘故障(Corruption)。一旦出现磁盘坏块,磁盘镜像技术将忠实地将这种错误传播到备份数据库的磁盘中,导致备份数据库无法使用。而由于Data Guard传输的是日志文件,而且传输之前对日志文件的完整性进行了校验,因此,不可能发生因系统磁盘出现物理坏块,或磁盘控制器故障等,将数据块写坏而导致备份数据库出现坏块的情况。
投资回报率(ROI)分析
Data Guard软件对硬件没有特殊的要求,网络只要求TCP/IP。备份数据库可以建立在相对低档的系统和廉价的磁盘阵列中。而磁盘镜像技术不仅需要单独购买昂贵的磁盘镜像软件,而且对硬件要求也很苛刻。
此外,Data Guard具有备份数据库的查询统计功能,而磁盘镜像技术建立的备份数据库在正常情况下处于闲置状态,只有在发生故障时,才能投入应用;为降低生产数据库的负载,Data Guard还可以将物理备份功能移植到备份数据库进行,备份数据库产生的物理备份数据,同样可用于生产数据库的恢复操作。
互为补充的关系
在实际应用中,Oracle数据库与远程磁盘镜像技术应该是互为补充的关系。理论上,远程磁盘镜像可在存储层实现所有系统的容灾,而Data Guard则提供了更有效、可行、成本更低的Oracle数据库灾备方案。Oracle已推出了OSCP(Oracle's Storage Compatibility Program)计划,有关存储和硬件厂商可以与Oracle相关技术进行兼容性验证,用户也可通过验证名单选择全面的灾备技术。Oracle针对灾备系统的应用需求,提出了以下基本建议:
● 对Oracle数据库系统,选择Data Guard方案;