数据库复制技术与存储复制技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库复制技术与存储复制技术的架构差异分析
目前企业数据中心使用的数据复制技术大概可分为五类,分别是:基于应用的复制、基于数据库的复制、基于主机的复制、基于存储网关的复制和基于存储系统的复制。
每种复制技术的实现原理不尽相同,其中基于数据库的复制和基于存储系统的复制是目前业界最流行的选择,今天我们就来简单分析比较一下这两种复制技术的架构差异。
一、两种技术基本介绍
数据库复制技术是一种基于数据库log(日志)的结构化数据复制技术,它通过解析源数据库在线log或归档log获得数据的增、删、改变化,再将这些变化应用到目标数据库,使源数据库与目标数据库同步,以达到多站点间数据库可双活甚至多活,实现业务连续可用和容灾的目的。
存储复制技术是基于存储磁盘阵列之间的直接镜像,通过存储系统内建的固件(Firmware)或操作系统,利用IP网络或光纤通道等传输界面连结,将数据以同步或异步的方式复制到远端。
一般情况下是在等存储品牌的同等型号或者接近型号的存储系
统控制器之间实现。
目前各个主流品牌的高端存储都具备成熟的数据复制功能。
二、两种技术差异比较
数据库复制技术包括物理复制和逻辑复制两种方式。
逻辑复制是利用数据库的重做日志、归档日志,使用日志分析技术(log miner)将主本所在站点的日志传输到副本所在站点,通过重做SQL的方式实现数据复制。
逻辑复制技术的典型代表是Oracle Golden Gate软件,它可以抽取分析主库的日志中的SQL,然后传输应用到备库中去。
既支持同构数据库之间复制,也支持异构数据库之间复制。
数据库日志复制
物理复制不是基于SQL Apply操作来完成复制,而是通过redo log 日志或者归档日志在副本站点的同步或者异步持久化写(db recover)来实现复制功能,同时副本站点的数据可以提供只读功能。
物理复制技术的典型代表有Oracle Data Guard/Oracle Active Data Guard等,一般使用在同构数据库之间。
存储复制技术通常有两种方式:同步复制和异步复制。
同步复制可以做到主/备集群的数据同步更新,前端应用的I/O写入主集群的存储卷,主集群同时将写I/O写入备集群,备集群确认后,主集群才向前端返回“写完成”信息。
存储同步复制
异步复制是在应用系统的I/O写入主集群的存储卷后,主集群立即返回“写完成”信息,前端应用可继续进行其他的读写操作。
同时,主集群利用自身机制将该I/O写入备集群,实现异步的复制。
存储异步复制
下面以比较常见的同城双中心架构下oracle ADG和存储复制架构为例,比较两种复制技术的架构主要差异。
oracle adg同城容灾架构
(1)数据库复制技术依靠数据库软件实现;存储复制技术依靠存储设备实现。
(2)数据库复制技术主要使用IP协议在以太网中传输主备数据库之间的日志数据;存储复制技术通常是使用FC协议在SAN 网络中传输存储复制数据。
(3)数据库复制架构中的备库可以提供对外查询服务;存储复制架构的备端存储通常是不对外提供业务功能。
(4)数据库复制架构中主库抽取和传输日志需要消耗主端服务器一定资源,备端数据库需要重新执行和应用日志才能生产可用的备份数据,也需要消耗备端主机和应用的开销。
相对而言,存储复制架构不依赖于主机平台和应用,不消耗主机资源,并且部署相对简单和快速。
三、两种技术使用建议
数据库复制和存储复制这两种技术目前使用得都很广泛,各个企业需要根据自身业务系统的重要性等级、系统规模,结合对业务恢复RPO、RTO的要求进行选择。
数据库复制技术适合单个系统进行容灾设计时考虑,需要根据对应数据库产品在数据复制方面的功能是否全面、应用是否可以进行对应改造等方面去进行考虑。
存储复制技术的应用应该是当前选择较多的一种复制技术,
该方案不依赖于主机平台和应用,适用性强,非常适合主机或业务系统多且复杂的环境,实施难度小。
可以实现远距离容灾,适合数据中心在设计同城容灾或两地三中心的整体容灾架构时考虑使用。