查看原文
其他

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

2015-11-11 DBAplus社群





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,为企业提供备份和容灾一体化解决方案,实现快速的备份和恢复,同时降低数据存储成本。


演讲实录


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




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


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


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


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




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


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


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




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


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




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


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




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


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


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


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


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


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


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




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


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


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




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


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


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


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




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


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


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


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


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


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




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


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


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




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




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


以下是对Copy Data Virtualization的小结:


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


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


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


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




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


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


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


2、 VMware虚机资源池备份


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


3、数据库应急系统


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


4、开发/测试环境


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


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


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





最后,我给大家分享一个国内某运营商的案例,该案例通过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


点击【阅读原文】加入你所在的DBA+城市微群,一起讨论吧!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存