数据库容灾
容灾建设项目和业务连续性项目与用户的业务要求、应用现状密切相关,并涉及众多技术和产品以及繁多的供应商,因而属于建设复杂、风险较高的项目之一。为降低项目风险,保证容灾中心建设的成功,选择有经验的合作伙伴、并且有成熟实用的方法论指导对信息中心容灾建设非常重要。
容灾技术方案建设中,对于企业的业务平台的保护,主要表现为对业务处理能力的冗余和复用,其中牵涉:
· 支持应用系统运行的服务器和操作系统等系统软件
· 支持应用系统运行的存储器及存储器和服务器的连接(存储网络等)
· 连接服务器的IP网络系统
· 支持应用系统实现的中间件或数据库等
· 实现业务逻辑的应用软件系统
客户将需要在容灾中心应该配置与需要保护的生产中心相同厂家、相同版本、相同配置的应用服务器、中间件和数据库。要确保主数据中心和容灾中心的软件运行环境相同。
我们可以为客户对上述各方面进行调查评估,分析客户的当前生产中心业务平台当前的现状和特定技术要求,并提出建设容灾方案的具体要求。
1.业务状态数据的复制
在容灾系统中,对数据平台的保护主要表现为对业务状态数据的保护、备份和恢复以及复制,需要保护的业务状态数据包括:
· 业务交易状态(数据本身的数据属性为文件、数据库等)
· 系统状态-包括应用软件的初始数据、参数设置、以及系统软件的配置数据、参数设置等。
· 中间数据(或临时数据)
在容灾系统建设中,数据平台的保护是实现企业灾难恢复的核心。保证数据的安全永远是第一位的,只有支撑企业业务运营的数据能够及时、完整地复制到容灾中心,才可以在灾难发生时,在容灾中心恢复受灾难影响的业务应用。
对不同企业,我们将根据需求分析的结果,对企业的不同重要级别的应用或业务单元采取不同的数据复制方法,对不同类型的应用,根据其访问特点等也将采取不同的数据复制方法。
2.接入平台冗余和切换
接入平台在容灾备份系统里, 需要实现对外部接口的冗余及切换,其中牵涉:
o 应用数据接口的切换-包括文件传输、消息机制等
o 应用连接接口的切换- HTTP连接、数据库连接、远过程调用、对象的调用等…
o 网络连接的冗余和切换 – 包括城域网网络连接、拨号连接等等…
企业的“接入平台冗余和切换”的关键在于实现在容灾中心应该配置相同访问能力的网络设备,并在网络配置上确保能快速、方便地将网络访问从主生产中心切换到备份生产中心 。
3.容灾模式
根据业务恢复时间的长短可以将容灾建设划分为不同的层次:
只做数据的灾难保护,仅能保证数据的完整性,此类业务在容灾中心只需要配置存储平台,实现数据的远程复制和存储即可。这种方式可以降低投资,但业务恢复时间很长(一般在3天以上)。数据的灾难保护是仅将生产中心的数据完整地复制到容灾中心的容灾方式。数据的灾难保护是异地容灾的最低级形式,也是最基本的方式,是实现更高级容灾方式的基础。
在灾难发生时,仅有数据的灾难保护无法保证业务的连续性,仅可以保证数据是可用的,若技术策略选择得当,可以保证业务数据的完整性。
将根据项目启动前期的“现状评估、业务需求分析”等结果,可以从容灾层次、容灾范围、运营方式、容灾规模等多角度进行综合分析,我们会协助客户结合实际情况来选择相应的容灾模式。
4.容灾推荐
对于Oracle数据库的灾备技术,我们公司推荐使用的的是Data Guard,GoldenGate。
4.1 Data Guard
Oracle Data Guard提供了一种数据同步技术来实现Oracle的高可用性、增强的性能以及自动的故障转移方案,为主数据库创建和维护多个备用数据库,主数据库的改变能够自动将信息从主数据库传送到备用数据库,并保证在此过程中没有信息的丢失。
· 采用Oracle Data Guard建设容灾有以下优点:
· 完全通过Oracle数据库机制来实现,完全不依赖于其它软件和底层存储平台;
· 可以满足用户的不同性能、数据保护要求,提供多种不同数据保护模式;
· 可以实现一对多的数据复制,提供多重保护;
· 后备数据库可以在很短的时间内提升到生产状态(因为数据库已经在运行);
· 基于IP网络,没有距离限制;
4.2 GoldenGat
GoldenGate则是一种基于日志的结构化数据复制技术,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。GoldenGate 可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据的实时复制(大概5秒以内的延迟),从而可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾等多个场景下应用。由于GoldenGate是通过分析过滤日志来捕捉变化,因而可以实现跨平台的数据库复制以及非Oracle数据库的数据同步。
Oracle GoldenGate由于其实现方式,两端数据库都处在双活状态,备份端可以提供实时的数据查询及报表业务等,从而提高系统整体的业务处理能力,充分利用备份端的计算能力,提升系统整体业务处理性能。可以实现两端数据的同时写入。
5.对比
Data Guard在主备切换时需要改变数据库的状态才能使备用数据库达到可读写状态,Oracle GoldenGate在情况发生时,可以立即实现服务器的切换,切换的时效性更强。
Data Guard通过物理和逻辑的方式在备用机上还原数据库的日志,因此不支持异构数据库,也不支持异构的操作系统;GoldenGate通过分析主数据库的日志来完成tail文件,因此支持异构数据库,也支持异构的操作系统。
Data Guard在完成数据同步过程中需要占用数据库的一部份资源比如LGWR、ARCN和Net manger进程或服务等,对数据库有较大的影响,使数据库性能下降。GoldenGate是动态监控方式,对资源的消耗相对较少。
在构建实际的灾备系统过程中,还需要实际情况,比如Oracle GoldenGate虽然支持双向复制,但如果链路因为网络中断发生问题,一旦网络恢复,故障发生后导致的主备库的数据差异如何处理,这些都不是数据库能完成的工作。因此在实际的方案选择上,还是要根据实际情况以及用户的需求来完善Oracle的灾备方案,这样才能做到有的放矢。
基于应用的容灾方案、基于主机的容灾方案和基于存储(包括虚拟存储技术)的容灾方案都有各自的适用范围,适用于不同的灾难保护需要。用户需要根据具体的实际需求来选择合适的容灾保护方案。
不同的用户不同的业务系统、不同应用对容灾的要求不同,要求不同的容灾服务等级。我们在未来将按照科学流程和方法,利用我们的专业技能和经验为用户进行环境的评估和业务影响分析,发掘客户业务需求对容灾技术的要求,从而建议最合适的容灾方案。