通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案

廖良茂 2015-11-11 18:05:54

 

11月10日,由Actifio中国区服务总监廖良茂老师在“DBA+上海群”进行了一次关于“通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案”的线上主题分享。小编特别整理出其中精华内容,供大家学习交流。

 

 

嘉宾简介
 
 

 

  • DBA+原创专家团成员;

  • Oracle9iOCP、10gOCM、Exadata认证专家;

  • 超过10年的Oracle数据库管理经验,曾在Oracle ACS工作5年,期间在Exadata白金服务工作一年;

  • 在微软工作两年,担任客户技术战略顾问,是微软Azure云平台认证专家;

  • 目前在Actifio(中国)负责服务工作,Actifio是一家专注于Copy Data Virtualization的公司,为Oracle数据库和VMware虚机提供备份容灾一体化解决方案,实现快速的备份和恢复。

 

内容摘要
 
 

 

经过近10年的发展,IT基础架构出现了重大变革,出现主机虚拟化、存储虚拟化、网络虚拟化,但对于数据,却没有太多的变革,Copy Data Virtualization的出现填补了这一块的空白,本次分享将介绍如何通过Copy Data Virtualization,为企业提供备份和容灾一体化解决方案,实现快速的备份和恢复,同时降低数据存储成本。
 

 

演讲实录
 
 

 

复制数据虚拟化,顾名思义,复制数据就是从生产系统复制出来的各种用途的数据。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-1

 

复制数据的用途包括备份、容灾、开发测试环境、数据的合规性、数据分析等,生产系统的复制数据可能多达10-20份,因此也带来了不少问题:

 

首先,这些数据通过不同的接口从生产系统获取数据,导致生产系统负载不断增加,对生产系统的影响很大。

 

其次,这些数据存储在各自独立的介质上,冗余度很高,管理很复杂,存储成本也逐年上升。

 

再次,使用这些数据很不灵活,某些数据甚至不可用,最近频繁听到生产系统出现故障后不能快速恢复的案例。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-

 

复制数据虚拟化出现就是要解决以上三大难题, 这些问题都是DBA们很熟知但却难以解决的问题。

 

最近十年,IT基础架构领域出现了重大的变革,主机虚拟化、网络虚拟化、存储虚拟化都日趋成熟,而数据虚拟化还是一个比较前沿性的课题,复制数据虚拟化的出现,让数据中心虚拟化更加的完整。

 

另外,随着大数据库,大存储池的出现,如何保护这些数据,也是IT manager困扰已久的难题,而复制数据虚拟化的出现,就是为了解决这些难题。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-3

 

复制数据虚拟化给我们带来了那些变革?

 

首先是数据获取架构的改变,通过复制数据虚拟化(Copy Data Virtualization)平台,使用唯一的接口从生产系统获取数据。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-4

 

通过该平台获取数据有个重要的特点,就是初次全量同步后,永远增量,最大程度的减轻生产系统的压力;而数据获取的频率,则取决于数据保护SLA策略的设定。

 

其次,该平台中的数据可以用于各种不同的用途,包括备份、快照、容灾、开发测试、数据分析。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-5

 

下面我将为大家介绍一下复制数据虚拟化的原理:

 

数据获取:有IN-BAND和OUT-OF-BAND两种方式,我们推荐使用OUT-OF-BAND,这样方式对生产系统的影响最小。

 

数据获取的格式为原始格式,比如Oracle为Datafile、Controfile、Spfile和Archivelog,通过调用RMAN接口来获取。

 

VMware 为vmdk文件,同样是调用VMware的vStoreage API来获取。

 

数据存储: 共有两个存储池 : 快照池和重删池。

 

快照池中存放近期快照数据,快照数据是如何产生的呢?每次增量备份后会和存量数据合成一份新的全量数据,并生成快照保存储在快照池中;重删池中存放重删和压缩后的快照数据,用于保存远期数据。

 

异地复制: 如果有容灾的需求,可以在灾机房也搭建一套复制数据虚拟化平台,通过内部机制进行同步或者异步复制,实现数据容灾保护。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-6

 

数据使用:快照池中的任何快照都可以直接mount使用,实现快速恢复,这是该平台最强大的地方。

 

比如,Oracle数据库增量备份会合成一份全量快照,任何快照都可以mount在原机或者异机上直接打开,无论数据库大小,都可以在分钟级内完成。

 

重删池中的快照也可以直接mount使用,但需要先和快照池中的数据进行合成,所以速度相对会慢一些。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-7

 

复制数据虚拟化:对于快照池中的快照数据,只有一份物理拷贝,但却可以有任意多份的虚拟拷贝,用于不同的目的,这就是复制数据的“虚拟化”。

 

举个例子,对于Oracle数据库,同一份快照可以mount到不同的主机,用于不用的用途,每份数据都是可读写的,而且不会修改原始的快照。

 

这也是该平台另一个强大的功能,该功能在做数据库Point-In-Time恢复时特别有用,日志前滚过头了也不要紧,重新指定一个新的时间点,通过mount实现快速的恢复。

 

而对于传统的数据库恢复,如果日志前滚过头,数据文件已经被修改且无法回退,需要重新restore数据文件后才能做恢复,耗时将非常漫长。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-8

 

大家可能会比较关注Oracle数据库的备份,我再详细描述一下数据获取的过程:

 

1、从复制数据虚拟化平台挂载一个卷作为Staging Disk到数据库服务器上;

 

2、通过Oracle RMAN Image Copy获取全量数据存储到Staging Disk上,并进行增量的Merge操作;

 

3、从数据库服务上unmount Staging Disk;

 

4、在复制数据虚拟化平台上对Staging Disk做快照保存在快照池中。

 

注意,这个快照可以保证数据库一致性,而传统的存储快照无法保证应用或者数据库的一致性。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-9

 

对于数据库归档日志,LogSmart可谓非常的智能,只要开启LogSmart,定义备份间隔,日志备份即自动运行。

 

归档日志备份完成后,可以指定任意时间点(到分钟)进行mount操作,后台自动完成日志应用。

 

有了这个强大的功能,DBA就可以轻松的准备任意时间点的数据库用于开发/测试环境了。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-10

 

对于VMware虚机的保护,和Oracle数据库的原理是一样,只是调用的是VMware的API。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-11

 

大致的原理已经介绍完毕。

 

以下是对Copy Data Virtualization的小结:

 

数据获取:一次增量,永远增量,对生产系统的影响降低到最小。

 

数据管理:一份黄金物理拷贝,任意多份虚拟拷贝,每份虚拟拷贝都是可读写的,可用于不通过的用途。

 

数据使用:通过Mount,即时读写快照数据,能在分钟级实现故障恢复,能快速搭建开发/测试环境。

 

管理界面:彻底简单(Radically Simple),备份和恢复基本都是一键操作。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-12

 

结合Copy Data Virtualizaton的特点,我总结了几个比较典型的应用场景

 

1、大数据库备份(比如单库超过20TB)

 

优势:初次全量后永远增量,减少备份时间,并能通过mount即时恢复。

 

2、 VMware虚机资源池备份

 

优势:应对存储级故障,并能通过mount即时恢复应用服务器数据。

 

3、数据库应急系统

 

优势:分钟级恢复数据库,保证业务的连续性。

 

4、开发/测试环境

 

优势:快速搭建开发/测试环境,仿真生产系统数据,缩短业务上线时间。

 

5、 数据库备份容灾一体化解决方案

 

优势:在一个平台同时实现数据库备份和容灾。

 

通过Copy Data Virtualization实现数据库备份和容灾一体化解决方案-13
 

最后,我给大家分享一个国内某运营商的案例,该案例通过Copy Data Virtualization平台,同时实现了数据库备份、容灾和开发测试环境。

 

数据库备份:通过Copy Data Virtualization来备份数据库,增量备份每天一次,归档日志每15分钟一次。

 

数据库容灾:Copy Data Virtualization搭建在容灾机房,如果生产系统出现存储故障,通过该平台直接将数据库快照mount到生产主机,实现快速恢复;如果生产系统出现站点故障,将数据库快照mount到容灾主机上,实现快速恢复。

 

开发测试环境: 容灾主机日常用于仿真测试环境,将数据库快照同时mount至四台不同的主机,用于四个不同应用系统的仿真测试。

 

通过Copy Data Virtualization平台,不仅实现了备份容灾一体化,同时用于仿真测试,缩短了业务上线时间。

 

Q&A 环节
 
 

 

1、生产数据坏了,切换到快照 中间会丢失多久的数据?解决方案能做到的最短时间呢?

答:取决于你备份的SLA要求。如果是数据库,就看归档日志能不能及时备份。

 

2、这种技术,灾备系统io性能应该比主端有较大损失吧?

答:如果容灾存储在200km以外,主机还在生产,那肯定io会慢。

 

3、这里的容灾和dataguard,ogg在丢失数据上有多大差异呢?

答:其实只要有归档日志,都不存在丢失的问题

 

4、带内主机需要安装代理吗?

答:如果是数据库需要,vmware不需要。

 

5、那个CBT,针对NAS的非结构化数据怎么做?

答:对于NAS,Actifio Agent有CBT的功能。

 

6、Merge操作耗费的时间怎么评估?

答:看数据量大小,Rman日志里面有记录详细的merge时间。

 

7、Agent是在driver驱动层还是在文件系统层捕获数据?

答:文件系统层。

 

8、这个功能对链路有啥要求?能做到同步么?

答:链路可以是IP网络,也可以是FC,FC的速度跟快。同步可以做,要用IN-Band方式。

 

9、一端mount到数据库,只做只读的查询吗?

答:mount的数据库是可读写的,而且可以mount多分。

 

10、Copy Data Virtualization平台,这是讲的一种备份容灾的工具吗?

答:备份容灾一体化,还可以当作开发测试环境等用途。

 

“DBA+社群”将陆续在各大城市群进行线上专题分享活动,以后的每周二、周四晚上都将成为【DBA+专题分享】的固定时间,欢迎大家积极加入我们。无论是内容还是形式,有好的建议我们都会积极采纳。想参与的小伙伴们可关注我们的微信号:dbaplus 

 

 

关注DBA+社群微信公众号:dbaplus

 

回复“上海沙龙”,获取DBA+社群数据库技术沙龙·上海站PPT;

回复“广州沙龙”,获取DBA+社群数据库技术沙龙·广州站PPT;

回复“OOW大会”,获取2015 Oracle OpenWorld大会PPT;

回复“2015GOPS”,获取2015 GOPS:全球运维大会·上海站PPT。

 

 


 

扫码关注

DBAplus社群

超越DBA圈子,连接的不仅仅是DBA

最新评论
访客 2024年04月08日

如果字段的最大可能长度超过255字节,那么长度值可能…

访客 2024年03月04日

只能说作者太用心了,优秀

访客 2024年02月23日

感谢详解

访客 2024年02月20日

一般干个7-8年(即30岁左右),能做到年入40w-50w;有…

访客 2023年08月20日

230721

活动预告