浅谈数据备份系统中的数据去重技术

时间:2022-06-29 09:56:39

浅谈数据备份系统中的数据去重技术

摘要:本文讨论了目前数据备份系统中的几种数据去重技术,并分析了去重技术将面临的挑战,以期对数据去重技术做一个总结和展望。

关键词:数据备份;数据去重;数据碎片;去重技术

中图分类号:TP309.3 文献标识码:A 文章编号:1674-7712 (2012) 18-0043-01

一、数据去重技术

(一)全局去重和局部去重技术。可分为全局去重和局部去重技术。全局去重主要应用在有多个去重设备的环境里,它会对多个已去重的库、目标和站点进行数据的比对,然后对重复数据进行删除。它可以删除多节点间的冗余数据。使用全局去重后,如果数据从第一个节点传递到第二个节点,那么第一个节点存储过的数据,第二个节点将不再存储。

局部去重则不考虑多个节点间的冗余数据,它仅删除同一台机器、同一个客户端、或同一个存储节点上的冗余数据。

这两种去重方式,全局去重的压缩率要比局部去重的压缩率高,因为全局去重比局部去重所删除掉的重复数据要多;但是局部去重的开销要比全局去重的开销少,因为全局去重需要对多个存储节点上的数据进行查询,删除多个节点之间存在的重复数据,其带来的开销也会比局部去重大很多。也正是因为这一点,很多公司,实现的全局去重所关注的存储节点数也非常有限的。

(二)文件级和数据块级(字节级)去重技术。根据重复数据的鉴别粒度,数据去重可分为文件级的去重技术(单实例存储技术)和数据块级(字节级)去重技术。

文件级的重复数据去重技术使用哈希函数计算每个文件内容的哈希值,然后根据索引检查需要备份的文件属性,并与已经存储的文件进行比较,如果两个文件的哈希值相同,则删除相同内容的文件来减少数据存储量,节约存储空间,如果哈希值不同,就将其存储。

数据块级的重复数据去重技术是在子文件的级别上运行的,主要通过删除内容相同的数据块来减少数据量。正如它的名字,文件或数据流通常在这里会被分割为较小的数据块(每个供应商检查的数据块大小不一,一些供应商固定数据块的大小,一些则使用不同大小的块,数据块的平均大小一般在4KB~8KB左右),然后使用哈希函数求取每个数据块的哈希值,这些哈希值常被称为数据块指紋。数据块指紋是用来唯一标识一个数据块的,具有相同指紋的两个数据块即为重复数据块。

这两种去重技术,其中文件级的重复数据去重技术能达到的压缩率较低,因为它不能删除相似文件之间的重复数据。而数据块级的数据去重技术由于不仅能删除相同的文件,还能删除相似文件中的相同数据块因此有较高的压缩率,它是目前为止使用最广泛的数据去重技术。但是,由于数据块级去重技术的鉴别和删除粒度更细,因此它带来的开销也比文件级的更大。

(三)在线去重技术和离线去重技术。根据重复数据的删除时间划分,数据去重技术可分为在线去重和离线去重技术。

在线去重技术是指在数据到达存储设备之前就对重复数据进行查找和删除,存储设备上不存储重复的数据块。由于査找和删除重复数据这一过程发生在数据写的关键路径上,因而数据去重会对存储系统的存储性能产生一定的影响,严重的会影响存储系统的数据写性能。

离线去重需要额外的存储空间做缓冲,是属于后处理的去重模式,在运行时不影响上层应用程序的存储性能,但需要额外的存储空间做缓冲区。

目前,数据备份系统一般都使用在线去重技术,因为当前的数据备份系统都不是实时应用系统,对存储的性能要求也不高。如果是实时关键应用或对存储系统存储性能要求很高,离线去重技术更合适。

(四)源端去重和目标端去重技术。依据重复数据的删除地点,数据去重可以分为源端去重技术和目标端去重技术。

源端去重技术即在数据的发送端,一般指客户端,对数据进行查找并删除重复的数据。这种去重技术非常适合广域网宽带较低的网络环境下的备份系统,由于重复的数据不参与传输和运输,它可以减少传输的数据量,加快数据传输。但由于源端去重需要现在发送端进行查找和删除重复数据,所以会占用源端机器资源,进而影响源端机器的应用性能。

目标端去重即在数据的接收端、存储端,查找并删除重复的数据。由于目标端去重只需要在目标端,即服务器端对重复数据进行查找和删除,不需要源端进行任何去重处理。因此在数据传输带宽较高的情况下,目标端去重更占优势。

二、数据去重技术面临的挑战

(一)数据去重的可扩展性尚待提高。随着数据量的不断增长,数据备份系统仍需要应对超大数据量这一问题。因此如何在多个存储节点之间快速去重仍然是热点研究问题。如何充分利用现有的存储设备、建立多层次索引、减少去重开销,快速查找重复数据仍是数据去重技术面临的最大的问题。

(二)如何减少数据去重引起的数据碎片有待解决。数据去重需要删除多个文件之间的重复数据,首先由于现有大多数去重方法都倾向于利用数据冗余局部性来缓解数据去重过程中所遇到的磁盘瓶颈,提高数据去重吞吐率,但是随着数据碎片逐渐增多,备份数据流之间出现的数据冗余局部性会减弱,从而导致依赖数据冗余局部性来缓解数据去重中磁盘瓶颈的数据去重方法失去其有效性,严重影响数据去重的性能。

其次由于数据去重的处理,一个文件产生的大量数据碎片将导致一个文件的读取需要大量的磁盘1/0,甚至可能每读取一个数据块都需要一次磁盘1/0,大大降低了系统的数据读性能。

(三)数据去重技术有待规范化。数据去重方法是否有效性取决于数据集中重复数据的特征,目前有很多种数据去重方法。然而,要使数据去重技术能广泛应用,无疑需要对目前所使用的数据去重技术以及对应数据集的特征通过一个统一的标准来规范,给研究者提供一个标准,给存储用户提供规范的接口,以便于未来数据去重技术的推广。

本文通过探讨当前数据备份系统中的几种数据去重技术的原理及其优缺点,分析目前数据去重技术所面临的挑战,希望能为数据备份系统中的数据去重技术做一个总结和展望,以期未来更好的去应对去重技术面临的挑战。

参考文献:

[1]谭玉娟.数据备份系统中数据去重技术研究[D].华中科技大学,2012.

上一篇:亚伟中文速录技能关键点探讨 下一篇:基于单片机的八路抢答器的设计