持续数据保护

  持续数据保护:Continuous Data Protection,简称CDP。CDP 保存所有的数据改变操作,能够将数据恢复到丢失前的任意历史状态。持续数据保护技术的关键词是“持续”,其主要功能是在故障瞬发生的瞬间完成对数据的快速恢复,保证业务的连续性。作为数据保护的一种形式,CDP技术已经成为存储行业关注的焦点。

概述

  持续数据保护技术是对传统数据保护技术的一个重大突破。系统管理者无须关注数据的备份过程,而是仅仅当灾难发生后,简单地选择需要恢复到的数据备份时间点即可实现数据的快速恢复。

  灾难恢复的对象主要有两个,其一是应用的业务数据,其二是应用的运行状态。通常的灾难恢复技术包括数据的备份、复制、应用的远程集群等。现在,一种新的灾难恢复技术――持续数据保护(Continuous Data Protection,CDP)又成为我们实现灾难恢复的新选择。

  SNIA数据保护论坛(DMF)的持续数据保护特别兴趣小组(CDP SIG)对CDP的定义是: “持续数据保护是一套方法,它可以捕获或跟踪数据的变化,并将其在生产数据之外独立存放,以确保数据可以恢复到过去的任意时间点。持续数据保护系统可以基于块、文件或应用实现,可以为恢复对象提供足够细的恢复粒度,实现几乎无限多的恢复时间点。”

  持续数据保护技术是对传统数据保护技术的一个重大突破。传统的数据保护解决方案专注在对数据的周期性备份上,因此一直伴随有备份窗口、数据一致性以及对生产系统的影响等问题。现在,CDP为用户提供了新的数据保护手段,系统管理者无须关注数据的备份过程(因为CDP系统会不断监测关键数据的变化,从而不断地自动实现数据的保护),而是仅仅当灾难发生后,简单地选择需要恢复到的数据备份时间点即可实现数据的快速恢复。

实现

  持续数据保护实现的关键技术是对数据变化的记录和保存, 以便实现任意时间点的快速恢复。 一般来讲,有 3 种实现方式。

  (1)基准参考数据模式

  基准参考数据模式是一种 AfterImaging 的策略,对要保护的数据建立一个初始的映像,然 后将其日志按数据请求到来的顺序记录。这种策略中每次数据请求最多只导致一次对磁盘 的实际写操作,因此实现简单,带来的额外开销较小。基准参考数据模式在数据恢复时,需 要从最原始的参考数据开始,逐步进行数据恢复,恢复点越靠近当前点,恢复所需要的时 间就越长。

  (2)复制参考数据模式

  复制参考数据模式是一种 Before Imaging 的策略,它维护的映像是数据的状态,因此它 克服了基准参考数据模式中数据读效率低的缺点, 适合于读请求较多的环境。 复制参考数据 模式通常利用 Copy onWrite 技术,即映像中的原始数据被覆写之前先将其拷贝到日志中。 这样记录的日志在恢复点越靠近当前点时所需时间越短, 但一次写操作能引发两次写操作, 因此,需要较多的系统资源。

  (3)合成参考数据模式

  合成参考数据模式是以上两种模式的折衷, 较好地实现了以上两种模式的妥协, 因此可以得 到较好的资源占用和恢复时间效果。 但需要复杂的软件管理和数据处理功能, 实现起来比较复杂。

  持续数据保护实现层次

  CDP 技术或解决方案可以在不同的层次实现,参考 SNIA 的存储共享模型,可以将当前实现 CDP 的产品或解决方案分为 3 类:

  基于应用的持续数据保护

  基于文件的数据保护

  基于数据块的持续数据保护

  (1)数据块级持续数据保护技术

  数据块级的持续数据保护技术可以直接在物理的存储设备上运行,也可以在数据块传输层 上运行。当发生数据块写入操作时,持续数据保护功能模块可以将原始的数据复制并传送 到另外一个存储设备中进行存储。 数据块级的持续数据保护需要将所有更改过的数据块按时 间顺序保存下来。每次写操作都会生成带有时间标记的数据块副本。由于每次数据写操作 都被完整的记录保存下来, 因此数据块级的持续数据保护技术能够动态地访问历史任意一个 时间点的数据。 数据块级的持续数据保护技术的优点是与应用的相关性比较小(因为运 作在块设备层,与文件系统、应用无关),性能以及效率都比较高(特别是对于数据库这类直 接访问块设备的应用)。其缺点是对备份存储空间的要求比较高,同时对于数据一致性的处 理也缺乏通用有效的机制。

  (2)文件级持续数据保护技术

  文件级的持续数据保护技术工作在文件系统之上。它可以跟踪文件系统中文件数据或者元 数据的改变, 及时备份这些变动信息并记录发现改变的时间, 以便将来能够实现文件历史任 意时间点的恢复。目前根据持续数据保护思想在文件系统级进行相关研究的公司不多,主 要包括:Symantec 的 Continuous Protection Server、XOsoft 的 XOsoft Engine、IBM 的 Tivoli Continuous Data Protection for Files、 Storactive 公司的 LiveBackup for Desktop/Laptops、 TimeSpring 公司的 TimeData 等产品。

  (3)应用级持续数据保护技术

  实现应用级持续数据保护技术时,需要在受保护的应用程序中直接插入和运行持 续数据保护功能程序代码。 持续数据保护程序代码可以由应用程序开发商将其直接嵌入在软 件产品中,也可以由应用程序软件开发商提供相关的应用程序接口(API),然后由第三方持 续数据保护软件开发商来完成持续数据保护的功能。在应用程序中实现持续数据保护的最 大优势是与能和应用程序无缝整合, 确保应用程序的数据在持续保护过程中的一致性, 同时 管理也比较灵活,用户容易部署和实施。目前在应用程序级实现的连续数据保护解决方案 大多是针对成熟的应用开发的。已经有一些公司的持续数据保护软件可以支持微软公司的 Office、Exchange,IBM 公司的DBZ,以及 Oracle 公司的数据库等。

  对于以上 3 种类别的持续数据保护技术, 数据块级和文件级的持续数据保护技术是一种通用 方法, 可以支持多种不同应用。 而应用级的持续数据保护技术则只为某种特定应用提供连续 数据保护能力,其通常的表现形式是与应用程序的一种更为深入的集成

特点

  持续数据保护技术是对传统数据保护技术的一个重大突破,和传统的数据保护技术相比,持续数据保护具有以下几个关键的技术特征:

  1 )  连续备份、持续捕捉数据变化;

  2 )  瞬间和即时的恢复,大大优化恢复的进程;

  3 )  多点的快照技术,历史数据瞬间可用;

  4 )  可以实现系统不间断连续运行的目标。

  传统的数据保护解决方案专注于数据的周期性备份,因此无法避免存在备份窗口、难以确保数据一致性以及会影响生产系统等问题。备份技术实现的数据保护间隔一般为 24 小时,因此用户会面临丢失多达 24小时所产生的数据的风险,采用快照技术,可以将数据的风险丢失量降低到几个小时之内,而持续数据保护是一种精细化多点跟踪技术,会不断监测关键数据的变化,捕获和保护数据中所有的变化,而非仅仅是某个预先选定的时间点,能将数据风险丢失量降低到几秒。实际上,在传统数据保护技术中采用的是对“单时间点(SPIT, Single Point-In-Time) ”的数据拷贝进行管理的模式, 而持续数据保护可以实现对“任意时间点(APIT,Any Point-In-Time)”的数据访问。这样就可以随时访问数据,减少数据损失并消除代价高昂的停机损失。持续数据保护不断地自动实现数据的保护,使我们无须关注数据的备份过程,当灾难发生后,我们仅简单地选择需要恢复到的数据备份时间点,即可实现数据的快速恢复。

  复制技术可以通过与生产数据的同步来获得数据的状态, 但无法防止由人为的逻辑错误或病毒攻击所造成的数据丢失。当生产数据由于以上原因遭到破坏时(例如数据被误删除) ,复制技术会将遭到破坏的数据状态同步到后备数据存储系统,使后备数据也受到破坏。

  持续数据保护系统可以使数据状态恢复到数据遭到破坏之前的任意一个时间点, 也就可以消除上述风险。

  持续数据保护技术侧重点不仅仅是在于备份,更重要的一点是瞬间恢复。持续数据保护的无缝恢复技术能够实现一定业务连续性指标,这是传统的备份技术所不具备的。持续数据保护技术能够确定恢复点目标指标,可以按照用户的要求,恢复到指定的时间点,能够为用户提供不同类型的数据保护机制和系统保护机制。

  传统的备份策略都是维护一个完全的数据拷贝, 而持续数据保护则跟踪那些变化的数据——通常对应到一些读/写事件。通过记录磁盘中的数据变化,存储管理员可以将服务器或者存储阵列(或者其它受持续数据保护的存储系统)恢复到前面的一个正常点;从前几秒到前几天都可以。 技术工人可以非常容易地平衡粒度来从一些可能由网络或者服务器错误引起的数据错误,比如丢失文件、病毒破坏或者数据损失中恢复数据。

  虽然持续数据保护可以支持各种粒度的重建, 但是它并不保护一个错误从产生到被发现中间所发生的变化以及事务。比如,持续数据保护不能够阻止一个病毒感染一个文件,但是它可以将感染的文件恢复到之前的点上——问题就是重建点之后的所有工作都会丢失了。 依赖于错误以及对数据的影响,一些数据的重建也许是必要的。从某种程度上说,持续数据保护和快照(snapshot)技术非常相似,但是两种方法又有所不同,不同点在于快照是以事件来对待,也许每天一次或者每天两次,或者每小时一次。当一个错误发生时,在快照和错误发生时刻中间产生的数据就会丢失了,这一点很像传统的数据备份;相比而言,持续数据保护是一个持续的过程,记录了实时的所有活动,并且可以回到之前的错误发生点上。快照通常可以看作是持续数据保护的一个“幻灯片(slice)  ” 。

应用

  对于持续数据保护的应用范围,目前大体可以归纳为三类:

  为数据中心内的文件服务器/ 网络附连存储(Network Attached Storage,NAS)提供普通的数据保护。在这种应用中,持续数据保护逐渐取代了以前那种夜间的磁盘或磁带备份任务。虽然,有些人认为持续数据保护只是为那些关键的数据而准备的。但是我们发现有些持续数据保护产品要比那些传统的备份方法更加易于使用,并且效果也更好。因此完全可以用于普通的文件服务器的备份。

  为远程的分支机构进行集中化的备份。 将持续数据保护用于远程分支机构备份应用的好处就是避免了远距离转移磁带介质的风险。 我们使用同总部一样的复制技术将分支机构的备份数据同步传输回来; 同时集中化的控制也让异地之间的数据安全管理工作变得更加主动、高效。

  帮助实现笔记本电脑上的数据备份。 也许我们曾经使用过很多方法来保护笔记本电脑上的数据,但都收效甚微。如今,我们可以使用持续数据保护来将数据的变化统统保留在笔记本电脑自带的硬盘上,然后在连接办公室网络的时候,自动地将它们发送到远端的中心服务器。不过,从技术定义上讲,这并不能成为持续数据保护。因为这类产品只有在笔记本电脑与网络连接的时候,才能上传改变的数据。不过,像 IBM Tivoli CDP这样的产品,即使在没有连接网络的时候,依然可以很好地对数据进行保护。

发展趋势

  目前,持续数据保护技术的未来发展主要体现在以下几个方面:

  1. 向新的保护范畴延伸。一方面扩展到更多的操作系统平台,例如从基于微软的各类操作系统平台延伸到更多企业级系统所采用的 UNIX平台; 另一方面拓展更多应用的持续保护技术,例如 Exchange 系统的恢复、数据库系统的恢复、以及单实例恢复等;

  2. 拉杆式的日志恢复。使精细点的恢复超越最近的快照点,而走向任何的历史点,为一些高端的、以秒级错误恢复为目标的应用带来一种真正的数据保护解决方案;

  3. 完善历史数据的存档机制。利用持续数据保护技术进行数据保护的同时,完善历史数据的存档机制,完善在线数据和离线数据的分级保护体系。

  随着持续数据保护技术的应用范围的扩大和人们认知的深入, 持续数据保护技术将会作为在线数据的重要保护手段而独立开辟一条通道,成为一种新的、贴近用户目标的数据保护方式,逐渐为人们所认同。

      更多精彩内容,请登录维库电子通(wiki.dzsc.com)

相关百科