存储基础详解:重复数据删除最佳实践

重复数据删除技术是一种通过减少备份环境中的冗余数据来降低对存储需求的技术。仅有一份数据的副本保留在存储介质上,冗余的数据被替换为指向唯一数据的指针。重复数据删除技术通常将数据集分成更小的数据块,并且使用某种算法给每一个数据块分配一个哈希标示值,通过将其与之前存储的标示值对比决定数据块是否已经存储了。一些厂商使用德尔塔差分(delta differencing)技术,即在字节层次上将当前的备份数据与之前的数据对比,以删除冗余的数据。

重复数据删除技术给存储和备份管理员提供了许多便利,包括降低了存储空间需求,更加有效的使用磁盘空间,以及减了少在远程备份、复制和灾难恢复时通过WAN发送的数据量。Taneja集团的高级分析师Jeff Byrne表示,重复数据删除技术可以带来快速的投资回报(ROI),“在你的环境中,如果可以做到减少70%到90%的备份容量需求,你可以很快的得到这些重复数据删除解决方案的投资回报。”

虽然总体上数据重复删除技术的概念相对来说比较容易理解,但是有许多不同的技术用来完成消除冗余备份数据的任务,而且很可能其中的某种技术更适合你的应用环境。因此,当你准备对重复数据删除技术进行投资时,考虑下面的技术差异和数据重复删除技术的最佳实践,以确保你对你的需求使用了最佳的解决方案。

在本重复数据删除技术最佳实践指导手册中,学习相关知识来选择可以满足你的数据备份和恢复需求的重复数据删除技术。了解源端、目标端重复数据删除技术,在线(联机)与后处理重复数据删除技术,以及全局重复数据删除技术的优点和缺点。

重复数据删除最佳指南:选择合适的重复数据删除技术

源端重复数据删除VS.目标端重复数据删除

重复数据删除可以由运行在服务器(源端)上的软件或者备份数据存储位置的设备(目标端)来执行。如果在源端进行数据的重复删除,冗余数据就会在传输到备份目标端之前被删除。“如果你在源端进行了合适的重复数据删除,你就会获得让更小的图像,更小的数据集通过网络传输到目标端的好处,”Byrne说道。源端重复数据删除技术使用客户端软件来对比主存储上的新数据块和先前备份过的数据块。先前存储的数据块不会被传输。基于源端的重复数据删除技术占用更少的带宽进行数据传输,但是它增加了服务器的负载并且可能会增加完成备份任务所需要的时间。

企业战略集团(ESG)的高级分析师Lauren Whitehouse说,源端重复数据删除技术非常适合对较小的和远程的站点进行备份,因为CPU利用率增加不会对备份过程产生较大影响。Whitehouse还说,由于在虚拟机磁盘(VMDK)文件中有着大量的冗余数据,虚拟化环境同样是进行源端重复数据删除的“优秀用例”。然而,如果你有多个虚拟机共享一个物理主机,同时进行多个哈希运算可能会使得主机I/O资源过载。

现在大多数知名的数据备份软件包含了源重复数据删除功能,包括赛门铁克公司的Backup Exec 和 NetBackup,EMC集团的Avamar,CA公司的ArcServe Backup,以及IBM的Tivoli Storage Manager (TSM) 和 ProtecTier。

目标端重复数据删除在备份设备上——通常是一个NAS设备或者虚拟磁带库(VTL),删除冗余数据。目标端重复数据删除降低了备份数据对存储容量的需求,但是没有减少在备份时通过LAN或者WAN发送的数据量。“一个目标端重复数据删除解决方案是一个特制的设备,因此需要将硬件和软件堆栈调整到最佳的性能,”Whitehouse说道,“因此,当你有大量的备份集或者小备份窗口时,你不希望降低备份操作的性能。对于一定的工作负载,一个基于目标端的解决方案或许更加适合。”

如果你使用多个备份应用程序和一些没有内置重复数据删除功能的软件,目标端重复数据删除或许更适合你的环境。基于目标端的重复数据删除系统有昆腾的DXi系列,IBM的TSM,NEC的Hydrastor系列,飞康软件的File-interface Deduplication System (FDS),以及EMC的Data Domain系列。

联机重复数据删除VS.后处理重复数据删除

另一个选择是考虑何时对数据进行重复删除。联机重复数据删除在数据被写入到目标存储时实时地删除冗余数据。纯软件产品往往使用联机处理,因为备份数据在进行重复数据删除前不会被写入磁盘。如源端重复数据删除,联机处理在生产环境中增加了CPU负载,但是限制了最终传输到备份存储上的数据总量。Asigra公司的云备份系统和慷孚系统公司的Simpana都是使用联机重复数据删除技术的软件产品。

后处理重复数据删除在进行重复数据删除之前将数据写入到磁盘缓存中。没有必要在启动之前将完整备份写入磁盘;一旦数据开始接触磁盘,重复数据删除进程就开始了。重复数据删除进程和备份进程是分开执行的,因此你可以在备份窗口外进行重复数据删除而不会降低您的备份性能。后处理重复数据删除还可以让你更快的访问上次备份的数据。“因此,在恢复上,可能会起到重要作用,”Whitehouse说道。

然而,全备份数据集是在冗余数据消除之前通过网络传输到重复数据删除磁盘分区或者目标存储的,因此你必须具备数据传输的带宽和容量来满足全备份数据集和重复数据删除过程。惠普公司的StorageWorks StoreOnce技术使用了后处理重复数据删除,而昆腾公司的DXi系列备份系统同时使用了联机和后处理技术。

内容感知型或者应用感知型的重复数据删除产品使用德尔塔差分技术,可以比较当前的备份数据集与之前的数据集。“它们了解备份流的内容,而且当备份程序将数据发送到目标设备时,它们知道数据的格式,”Whitehouse说道,“它们可以对比当前备份的工作量和之前的备份工作量,以找出在块级别或者字节级别上的不同。”Whitehouse表示,基于德尔塔差分技术的产品是有效率的,但是它们可能必须逆向备份流来了解它是什么样的数据以及怎样进行德尔塔差分。Sepaton 公司的 DeltaStor 系统 和 Exagrid公司的DeltaZone架构是使用德尔塔差分技术的产品例子。

全局重复数据删除

如果你使用基于目标端的设备和多个使用基于源产品的客户端,全局重复数据删除技术可以跨多个设备删除冗余的备份数据。它允许你在多个位置添加可以相互通信的节点,来扩展性能和容量。若没有全局重复数据删除功能,每一个设备只会对其接收到的数据进行重复数据删除。一些全局系统可以配置在两个节点的集群中,例如飞康软件的FDS高可用集群。其他的系统使用网格架构可以扩展到几十个节点,如Exarid系统公司的DeltaZone和NEC公司的Hydrastor。

你拥有的备份数据越多,全局重复数据删除技术越能提高你的重复数据删除比率并降低你的存储容量需求。全局重复数据删除还可以将负载均衡和高可用技术引进到你的备份策略中,而且让你有效地管理你的整个数据备份存储环境。有着大量备份数据或者多个备份地点的用户将会从这种技术中获得最大收益。大多数备份软件提供商会提供带有全局重复数据删除功能的产品,包括赛门铁克NetBackup和EMC Avamar,以及重复数据删除的设备,如IBM的ProtecTier和Sepaton的DeltaStor,都提供全局重复数据删除功能。

如同所有的数据备份和存储产品,采用的技术只是在你评估潜在的重复数据删除系统时应该考虑的一个因素之一。事实上,根据Whitehouse,厂商采用的重复数据删除的技术类型,并不是许多管理员在对重复数据删除方案进行投资时查看的第一因素。价格,性能,以及易用性和集成度都在重复数据删除购买者的清单上,Whitehouse解释道。Whitehouse 和Byrne一致建议,首先找出你目前的备份产品是否具有重复数据删除功能。如果没有,分析你的长期需求并了解厂商的产品架构以决定它们是否适合你的负载量和扩展需求。