在当今信息社会,数据库的重要性不言而喻。本文从普通用户而非厂商的角度(不谈RPO、RTO、MDT、MTBF、MTTR等)对各种数据库容灾技术进行考察和比较,希望能帮助用户在购买方案时少上当受骗,少走弯路,避免不必要的经济损失和系统事故。对于广大用户来说,最关心的是以下两点:A.是否有两个逻辑一致的数据:如果容灾方案有两个“逻辑一致”的数据,那么当发生故障时,用户数据是安全的是的,系统的可用性也得到了保证。拥有两个“逻辑上一致”的数据是一个合格的灾难恢复解决方案所必须的。请注意,我们谈论的是“逻辑数据”,而不是“物理数据”。什么是逻辑数据,什么是物理数据,请耐心阅读。B、是否有负载均衡读写分离:负载均衡读写分离,尤其是OLTP和OLAP的分离,是业界公认的提高数据库性能的有效手段之一。目前市场上与ORACLE和SQLSERVER相关的容灾技术一般有以下几种:1.RAIDI图1RAIDI原理示意图a.数据库实例(图中红色粗椭圆)b.一条逻辑数据(图中粗红色椭圆)c.两份物理数据(图中西红椭圆)d.无负载均衡读写分离2.双机热备图2双机热备示意图b.一条逻辑数据(图中红色中粗椭圆)c.物理数据两条(图中西部红色椭圆)d.无负载均衡,读写分离一个DB实例(图中红色粗椭圆)b.一个逻辑数据(图中红色中粗椭圆)c.两项物理数据(图中西部红色椭圆)d.无负载均衡读写分离4.存储双活4存储双活原理示意图a.一个数据库实例(图中红色粗椭圆)b.一个逻辑数据(图中红色中粗椭圆)c.两个物理数据(RAID)(图中西部红色椭圆)d.无负载均衡读写分离5.OracleRAC图5OracleRAC原理示意图a.两个数据库实例(图中红色粗椭圆)b.一个逻辑数据(图中红色中粗椭圆)c.两个物理数据(RAID)(图中红色细椭圆)d.读写分离带负载均衡6.OracleDG图6OracleDG示意图a.红色椭圆)c.两份物理数据(图中西边的红色椭圆)d.手动负载均衡读写分离,目标端可查询7.SQLServer镜像图7SQLServer镜像示意图a.红色椭圆)b.两个逻辑数据(图中中粗红色椭圆)c.两项物理数据(图中西部红色椭圆)d.没有负载均衡读写分离,无法访问目标数据库8.SQLServerAlwaysOn图8SQLServerAlwaysOn原理示意图a.两个数据库实例(图中红色粗椭圆)b.两个逻辑数据(图中中粗红色椭圆)c.两项物理数据(图中西部红色椭圆)d.手动负载均衡读写分离,目标可查询9.DBTwin双活集群图9DBTwin双活集群原理示意图a.两个数据库实例(图中红色粗椭圆)b.两个逻辑数据(图中中粗红色椭圆)c.两个物理数据(图中红色椭圆)d.全自动负载均衡读写分离10.综合对比如下:表A各种数据库容灾技术综合对比',这个方案无疑是最理想的;如果只有一个逻辑数据,虽然有两个物理数据,但是由于物理数据只保持扇区或者块甚至卷级别的“物理一致性”,缺乏数据库事务逻辑保护,所以最终的数据库完整性是仍然处于危险之中。从用户数据安全的角度,以下是从高到低的顺序:1.***:两个实时一致的逻辑数据。2、次高:逻辑数据两份,但有短暂的数据延迟。3.第三种:一个逻辑数据,但是有两个物理数据。4、***:只有一份逻辑数据,也只有一份物理数据。
