在重复数据删除系统中恢复被去重的数据

日期: 2010-07-25 作者:W. Curtis Preston翻译:冬瓜头 来源:TechTarget中国 英文

问:如何在重复数据删除系统中恢复被去重的数据?   答:从一些重复数据删除系统中将被去重的数据恢复出来的过程可能要比直接从流行的磁带驱动器中恢复来的慢。在其它一些重复数据删除系统中,人们总是希望恢复过程快于磁带。本文将让你了解到,如何才能够确保你的重复数据删除系统是处于这两个极端情况中的正确的位置。   为了解释所谓的“去重开销(dedupe tax)”为什么存在,我们需要回溯到重复数据删除技术还未出现的时候。

在重复数据删除技术出现之前,我们直接把连续的数据块写入磁带或者磁盘。(将连续的需要备份的数据块写入磁盘的话,要么需要一个空文件系统空间,要么使用一种专门为这个目的而特殊设计的磁盘系统,比……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

问:如何在重复数据删除系统中恢复被去重的数据?

  答:从一些重复数据删除系统中将被去重的数据恢复出来的过程可能要比直接从流行的磁带驱动器中恢复来的慢。在其它一些重复数据删除系统中,人们总是希望恢复过程快于磁带。本文将让你了解到,如何才能够确保你的重复数据删除系统是处于这两个极端情况中的正确的位置。

  为了解释所谓的“去重开销(dedupe tax)”为什么存在,我们需要回溯到重复数据删除技术还未出现的时候。在重复数据删除技术出现之前,我们直接把连续的数据块写入磁带或者磁盘。(将连续的需要备份的数据块写入磁盘的话,要么需要一个空文件系统空间,要么使用一种专门为这个目的而特殊设计的磁盘系统,比如虚拟磁带库。)对于一次备份,所有对应的数据块都在临近的位置上被保存起来。

  数据备份系统会偶尔执行一次全备份,或者从以往的增量备份中合成一份全备份,或者将形成一份完整备份的所需文件归纳并行放置起来(比如IBM TSM的活动数据池)。这些备份系统的典型行为意味着,对于一个指定系统,待恢复的数据对应的数据块会被物理上连续的放置在磁盘或者磁带中,这样就可以让恢复工作变得容易。

  大多数人都同意,要达到快速恢复数据的目的,最好有一份最新的全备份,或者类似IBM的活动数据池中包含了最新的数据,并且让这些数据都在磁盘上,任何接下来的备份也都在磁盘上。这也就是为何当他们听说从重复数据删除系统中恢复数据(数据一般都位于磁盘上)竟然会比传统的方式慢,甚至比从磁带恢复都要慢的时候,会如此惊讶。

  导致这个问题的原因就是,不管你用怎么样的方式将数据备份到重复数据删除系统中,被保存的数据几乎都不是物理上连续的被存放到磁盘中的。在一个重复数据删除系统中,最后一次备份的数据块可能是早已存在于系统当中的冗余数据块,实际上这些数据块已经存在很长时间了。根据它们存在的时间,它们可能会被分布到系统中的各个位置。所以,从一个重复数据删除系统中恢复数据,实际上底层执行的是一个从包含有大量数据碎片的磁盘中读数据的过程,也就是随机读。相比于连续读,即一次磁盘寻道可以读出成百上千的数据块,随机读对应的情况则可能是:你需要从数百个磁盘中经过数百次的磁盘寻道才能读出与之前同样多的数据。

  分析重复数据删除系统的性能

  为何有些重复数据删除系统所表现出来的性能强于其他重复数据系统呢?这取决于一系列因素。首要因素就是系统每天对数据的存储方式以及系统对数据的分布随机到什么程度。第二个因素就是一个给定的重复数据删除系统使用了多强的技术来缓解这个问题。最终,某些重复数据删除系统为了保证数据恢复时的性能,可能就只允许同时执行一个恢复任务。

  不是所有的重复数据删除系统都会在保证恢复速度方面做足够的平衡考虑的。你需要做好调查。

  决定一个重复数据删除系统如何存储数据的一个首要因素就是,当系统发现当前处理的数据段与已经保存的某数据段内容相匹配时,系统的具体做法是怎样的。比如,系统是否会保留之前被存储的旧数据段,同时在旧数据段处写入一个新指针,而不是将新数据写入磁盘。(这种处理方法被称为“反向引用”);或者,系统是否会将新数据段写入磁盘,然后将旧数据删除同时将旧数据替换成一个指向新数据段的指针。(这种做法称为“前向引用”)。 对于前者,也就是不断为新的冗余数据段写入指针的做法,可能会导致新数据碎片不断增加。对于后者,也就是系统不断的写入新数据而删除旧数据同时替代为指针的做法,则可能会使最新备份的数据物理上保持连续,但是旧备份对应的数据在物理上却变得越来越随机。前向引用模式只在后处理模式的重复数据删除系统中能够被使用,(译者注:因为牵扯到更大的磁盘写入数据流,所以在前处理模式的重复数据删除系统中使用的话,会严重影响性能。)这种模式的数据存储方式可以让最新的备份数据恢复起来更快,这也是最常见的情况。

  需要考虑的另外一个要素是,系统是否会将一些在逻辑上有关联的数据段进行重新排布以求物理上的连续。当一个系统接受了一个备份流之后,它可能会对某些特定的数据段有所感知,这些数据段与其他的一些数据段是逻辑上相关的,那么系统就可以将这些数据段在物理上尽量连续的存放。

  影响数据分布的另外一个要素是一个重复数据删除系统是否会有所谓的“垃圾收集(garbage collection)”动作。随着数据的过期和作废,有一些数据段将不再被使用,所以可以将这些数据段删除掉。有一些厂商虽然可以实现这个功能,只是将无用的数据删除掉,但是它们并没有顺带考虑这个动作的一个副作用就是导致了剩余数据出现了更多的碎片。一些其他厂商则在执行垃圾收集的过程中考虑了这个问题,它们会进行碎片整理,但通常只是每天一次。

  缓解去重开销

  厂商正在进行一系列的努力来缓解“去重开销”。有些厂商在进行垃圾收集的过程中顺带将相关联的数据段进行了重新排列,特别是那些与其他备份集的数据没有重叠内容的数据块,使其在物理上连续分布,可以认为这个过程就是一个碎片整理过程吧。还有些厂商则将最新的备份数据以其原有的格式存放在磁盘上,不进行去重操作,这样,当某人需要恢复或者拷贝这份备份数据的时候,那么系统就可以以最快的速度来提供数据,从而避免了性能问题。虽然这种做法充分考虑了重复数据删除系统在恢复数据时候的性能,但是这种做法也只能够在后处理模式的重复数据删除系统中被使用,这种做法需要一个所谓的landing zone,即着陆区,数据备份首先进入这个着陆区,着陆区中的数据不进行去重操作。着陆区需要额外的磁盘空间,而前处理模式的重复数据删除系统中并不需要着陆区以及对应的额外磁盘空间。

  最后,有些厂商确实对只能够单流备份的限制感到头疼,即它们的系统架构无法做到在单流的情况下,系统整体吞吐量达到nMBPS。如果你打算从一个重复数据删除系统中将数据拷贝到磁带,那么系统的单流恢复速度此时就是至关重要的,因为拷贝到磁带的过程是一个非常苛刻的数据恢复过程。系统不但需要对数据中的每个bit进行重新组装以转换成原来的格式,而且在单流情况下,这个动作还必须很快的完成。对于一个LTO-5磁带驱动器来讲,其最大速度为240MBps(1.5:1的压缩比情况下),而如果你的重复数据删除系统所能达到的最大恢复速度仅为90Mbps的话,那么你想让它能够撑满磁带驱动器的流量,是不可能的。

  最后,一句话,不是所有的重复数据删除系统都会在数据恢复速度方面平衡考虑的,你需要调查清楚。

作者

W. Curtis Preston
W. Curtis Preston

TechTarget存储执行编辑

相关推荐

  • 简单可靠的平面备份技术

    在过去,很少有人认为平面数据备份可以成为传统备份方式的靠谱的替代者。而到了现在,随着快照技术的不断增强,趋势正在改变。

  • 评估数据备份与恢复过程的正确姿势

    数据丢失已是一种极为常见的难题,因此企业或组织会考虑将数以百倍的数据量进行备份,而在恢复时却远没有这么多。换而言之,这种备份定会产生些许商业价值;又或者是我们是否可以在保证商业价值的同时,减少些许工作量。

  • 无代理备份有哪些好处?

    无代理数据备份比基于代理的备份提供了一些主要优势。应尽可能使用该技术,对VM备份尤其有用。

  • 你的存储灾难恢复计划考虑到了天气威胁吗?

    硬盘驱动器或是固态闪存、本地存储或是云端站点,不论数据存放在哪里,它都面临着风险。身处沿海区域的企业机构在夏季会密切关注天气的变化,从中预感到即将发生危险,IT规划师同样如此。