阐述重复数据删除技术的两大特点和五大误区

首先,我简述一下两种方式的实现原理和过程。
联机重复数据删除技术(我觉得称之为同步方式更合适)
当大量的备份数据流到达具备重复数据删除技术的备份设备时,首先驻留在内存里,重复数据删除引擎开始对先到的备份数据进行辨识,判断是否存在已保存过的数据块。 如果有,则写入一个指针来代替实际数据块的写入过程。如果没有,则写入该新数据块。任务结束。
采用这种方式进行重复数据删除工作,可以显著降低I/O的开销,因为大部分工作是在RAM内完成的。只是在做哈希算法查找重复的数据块时产生了少量的磁盘操作(只有一家厂商声称他们的哈希查找也是在RAM内完成的)。
某些重复数据删除产品还需要花费额外的时间,对于在原有数据块中初步已判断重复的数据块进行读操作,在字节级别确认匹配后才会舍弃。假设重复数据删除比为10:1,那么95%的处理时间只是对于重复的数据块进行一次写操作,用来更新哈希表就可以了,对于冗余的数据块丢弃即可而无需对磁盘进行其他任何写操作。剩余5%的时间用来将那些唯一的数据块写入磁盘并更新哈希表。
后期处理重复数据删除技术(我觉得称之为异步方式更合适)
当备份服务器开始向备份设备传输备份数据流时,会将整个备份数据量作为一个整体来传送。 然后启动单独的进程开始读取已写入磁盘的数据块,开始重复数据删除处理过程(该过程通常由另外一个设备执行,访问备份数据已写入的磁盘),如读入的数据块和已存储的数据块重复了,则用指针替代该数据块,如果没有重复,则将该新数据块留在磁盘上,而无需任何其他操作。
这种处理方式比联机处理方式显然需要更多的I/O操作。首先,后期处理方式要求进行所有备份数据块的写入操作。 然后,还需要对写入的所有数据块进行再读入操作,并与哈希表记录进行对比查找重复的数据块,这就需要额外的磁盘读操作。某些厂商的产品还要求进行再次的读操作来确认数据块在字节级别的重复。如果确认了重复的数据块,需要进行删除重复的数据块的写操作,另外还需要发起更新哈希表的写操作,该过程占用了整个处理过程95%的时间。余下5%的时间用来处理那些不匹配的数据块,同样需要对哈希表进行更新写操作。
下表总结了两种处理方式的技术特点:
*某厂商宣称他们可以将哈希表保留在RAM内,这样就无需执行磁盘读操作来检查哈希表了。
各有长短的两种方式
所有的人都同意只有当重复数据删除处理过程结束后,整个备份任务才算完成。
从以上的技术对比表中,我们可以知道采用联机重复数据删除方式,整个处理过程所需的I/O操作最少。采用联机处理方式的厂商认为后期处理方式会导致备份时间延长。但是联机处理方式必须非常仔细地进行调优处理,保证它的重复数据删除速度足够快,从而不至于造成进入备份设备的备份数据流拥塞,而无法继续执行备份任务。
后期重复数据删除技术的强项在与它将整个处理过程进一步分解为两个独立的处理过程,而且在重复数据删除处理过程中可以利用更多的处理资源(添加额外的主机)来加快处理过程。但是,这种方式在整个处理过程中涉及到的I/O操作太多,这是它不利的一方面。
如果你的备份速度足够快,而且整个备份及重复数据删除过程所耗费的时间没有超过备份窗口的要求,你会介意采用何种重复数据删除技术方式吗?我认为不会。这也是为什么我认为争论何种方式更好没有实际意义的原因。关键是看哪种处理方式更适合你实际的备份需求。当然,我建议用备份环境中最大的备份负荷来进行测试。
如果你购买的备份设备能够满足你备份任务的需求,谁会介意具体采用的是哪种技术呢?我认为备份管理员应该重点考虑备份的速度、容量和成本等问题,而不是过于关心联机处理或者是后期处理方式。其他需要考虑的问题还包括:备份设备是否易于安装配置,是否支持主流的备份管理软件等。
确切地说,备份设备不会因为采用了何种重复数据删除方式从而使整个备份进度加快,具体要看设备供应商是如何实现备份处理过程的。采用两种方式的设备都存在截然不同的备份记录。所以不要太在意某些厂商所强调的,诸如他们的备份设备中采用的重复数据删除方式是最快的、最好的等这类的市场用语,我倒觉得由于两种处理方式各具千秋,如果能够在一台备份设备中集成这两种处理方式,让用户自己在实际备份环境中去选择最适合的方式,倒不失为一种明智的解决方案。
关于实现方式的五大误区
“联机处理方式一定会降低备份的处理速度”
大量的实际备份案例证明,采用联机重复数据删除模式的备份设备,其备份速度比那些磁带备份以及普通的磁盘备份方式要快很多。大多数情况下,都可以达到40-50MB/s的备份速度,而在普通的备份环境中很难在单一备份数据流中实现这一指标。
“降低备份数据流的读入速度会造成严重的后果”
采用的重复数据删除技术是否会造成备份速度降低?是否比以往采用的磁带备份方式更快?备份过程是否能够满足备份窗口以及RTO的需求?实际上后者才是需要关注的重点。
另外,需要强调的是只有当重复数据删除处理结束,整个备份任务才能算真正完成。特别是,当你的后期处理重复数据删除设备的性能较差时,显然那会降低你的重复数据删除比。
“后期处理重复数据删除方式是当所有数据备份过程结束后开始的”
这是关于后期重复数据删除技术流传最广泛的观点,人们往往是从该处理方式的名称简单推断而来的。这也是为什么我倾向于采用异步处理方式来称呼该处理技术的原因。
后期处理方式一般是在虚拟的磁带介质写入备份数据后才开始处理过程的,换句话说就是等待虚拟磁带写满后或者备份任务结束后才开始。根据备份管理员对备份系统的不同设置,这一等待延迟从几分钟到数小时不等。
该等待时间从第一组备份任务传送备份数据流开始算起,当第一盘虚拟的备份磁带写满或第一组备份数据流写入结束后,此后的重复数据删除处理就不存在延迟等待问题。因为,当系统在进行前一写入备份数据的重复数据删除处理时,备份系统可以继续往后续

闲来客栈  发表于: 2009-12-12

我要回答

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

敬请读者进行回答,本站保留删除与本问题无关和不雅内容的权力。

相关推荐