基于差量压缩的重删系统中的碎片重写方法及控制器技术方案

技术编号:35580945 阅读:13 留言:0更新日期:2022-11-12 16:10
本发明专利技术公开了一种基于差量压缩的重删系统中的碎片重写方法及控制器,属于数据存储技术领域,包括:对于存储数据块的每一个内存分段,统计各容器被其中重复数据块和差量数据块引用的次数,以筛选出被引用次数最大的T个容器,将当前内存分段中引用所筛选容器的重复数据块和差量数据块标记为非碎片化数据块,将引用其余容器的自重复数据块和差量数据块标记为碎片化数据块;进一步结合容器的稀疏性、模拟恢复缓存和滑动窗口识别数据块是否为碎片;遍历数据块,若为非碎片化的重复数据块,则进行去重;若为非碎片化的差量数据块,则进行差量压缩;若为碎片化数据块或非重复数据块,则重写。本发明专利技术能够在保证去重率的情况下提高系统恢复性能。统恢复性能。统恢复性能。

【技术实现步骤摘要】
基于差量压缩的重删系统中的碎片重写方法及控制器


[0001]本专利技术属于数据存储
,更具体地,涉及基于差量压缩的重删系统中的碎片重写方法及控制器。

技术介绍

[0002]数据去重技术和差量压缩技术都是现在比较常用的冗余数据消除技术。相较于传统的数据压缩技术,数据去重技术在更大粒度(比如,文件、4KB大小的数据块)上进行识别和消除冗余数据。因此,数据去重技术的速度更快,在更大规模的存储系统上的冗余数据消除性能更高。在数据规模爆发性扩大的背景下,数据去重技术能够有效满足海量数据下冗余数据消除的性能要求,被广泛应用于现有的存储系统。差量压缩技术是一种在两份不同的数据之间消除冗余数据,从而只需要额外存储一份差异数据的技术。数据去重只能消除拥有相同内容的重复数据,而差量压缩能针对不同内容的两份数据进行冗余消除,因此,现有的相关研究都将差量压缩作为数据去重之后的一种补充的压缩技术,在数据去重技术应用之后,再对去重后的存储系统进行差量压缩以节省更多的存储空间。
[0003]数据去重技术一般分为四个阶段:数据分块;指纹计算;指纹索引;数据存储。首先,在数据分块阶段使用分块算法对数据流进行计算来确定将要切割的断点位置,并根据这个断点位置将数据流分成数据块。其次,在获得分块之后,数据去重技术会为每一个分块使用哈希函数(如SHA

1,SHA

256)生成一个哈希值,被称作指纹。此后,去重系统将会在之前已有的指纹里面进行索引,来确定是否已经存在重复的指纹。如果指纹是重复的,那么可以认为数据块也是重复的。最后,存储系统将非重复的数据块直接写入,重复的数据块不写入而是保存一个指向之前已有重复数据块的指针,这样就消除了存储系统中的冗余数据。
[0004]在数据去重技术上引入的差量压缩一般分为两个阶段,即相似度检测阶段和差量计算阶段。首先,在相似性检测阶段,数据去重系统的差量压缩模块将会为每一个输入的数据块计算相应的特征值,这里的特征(Super Feature)是用来表示数据去重系统中两个数据块是否相似的特定值。然后数据去重系统将会在之前的去重过程中保存的特征值里进行索引,找到相同的特征值,并获得拥有该特征值的数据块的元数据信息。最后,差量压缩模块将以找到的特征值相同的数据块作为基本数据块(Base Chunk),找出现有的数据块中与基本数据块不同的数据并写入到一个新数据块Delta中,生成一个只保留两个数据块之间的差异数据的数据块(Delta Chunk),并将该数据块保存到数据去重存储系统中,同时保留该数据块对应的元数据信息。
[0005]结合差量压缩技术的数据去重系统能够有效的识别和消除更多的冗余数据,为数据存储系统节省了更多的存储空间。但是,数据去重技术和差量压缩技术的备份和还原过程都会产生大量的计算开销,从而影响系统的吞吐量,并且,数据去重技术带来的碎片化问题会严重影响存储系统的性能,而差量压缩技术的引入则会带来新的碎片化问题。
[0006]访问数据去重系统中的文件首先需要进行数据去重的恢复过程。数据去重系统恢复过程中将按照数据去重备份过程中的文件谱顺序来访问所需要的数据块,并以此来重新
恢复原始的数据流。重复的数据块会在数据去重过程中引用到之前存储的非重复数据块,一个重复数据块的恢复可能需要访问很久之前存储的容器。同样,差量压缩过程中需要使用的基本块也很有可能带来类似的数据块碎片化问题。在恢复过程中,恢复模块会将整个容器读到内存中,但是,碎片化问题的存在,会使得恢复过程很有可能只需要使用整个容器中单独的一个或者几个数据块,这就造成了读放大(读取数据块的大小比需要数据块的大小更大)的问题,从而降低了数据去重系统的恢复性能。因此,引入差量压缩的重删系统的恢复性能会显著下降。
[0007]目前已有一部分工作致力于提高重删系统的恢复性能。但是这些工作仍然存在以下一些缺点:
[0008]1)部分工作仅考虑了如何重写数据去重技术带来的碎片块,提高数据去重系统的恢复性能,忽略了引入差量压缩后的新型碎片块问题。
[0009]2)自重复的碎片块,即在同一数据流中多次出现并和基本块碎片结合作用导致恢复性能下降的重复块碎片,会明显影响数据去重系统的恢复性能,而现有的工作往往没有考虑自重复碎片块的影响。
[0010]3)现有工作将一部分不需要重写的数据块识别为碎片块并重写,降低了数据去重系统的冗余数据消除率。
[0011]总体而言,在基于差量压缩的重删系统中,如何在保证冗余数据去重率的情况下,提高系统恢复性能是有待研究的问题。

技术实现思路

[0012]针对现有技术的缺陷和改进需求,本专利技术提供了一种基于差量压缩的重删系统中的碎片重写方法及控制器,其目的在于,在基于差量压缩的重删系统中,在保证冗余数据去重率的情况下提高系统恢复性能。
[0013]为实现上述目的,按照本专利技术的一个方面,提供了一种基于差量压缩的重删系统中的碎片重写方法,包括如下步骤:
[0014](S1)对于待写入的数据流,将其划分为数据块,并识别其中的重复数据块和差量数据块后,对于存储数据块的每一个内存分段,统计各容器被该内存分段中的重复数据块和差量数据块引用的次数,以筛选出被引用次数最大的前T个容器,将当前内存分段中引用所筛选容器的重复数据块和差量数据块标记为非碎片化数据块,将当前内存分段中引用其余容器的自重复数据块和差量数据块标记为碎片化数据块;T为正整数;
[0015](S2)遍历数据块,对于遍历到的每一个数据块,判断其类型,若为非碎片化数据块中的重复数据块,则进行去重;若为非碎片化数据块中的差量数据块,则进行差量压缩;若为碎片化数据块或非重复数据块,则重新分配容器并写入。
[0016]本专利技术基于被引用次数所筛选出的容器,被同一内存分段中相对最多的重复数据块和差量数据块所引用,对这些数据块进行去重或差量压缩后,后续对这些数据块进行恢复时,一次读取容器,即可对多个引用了该容器的数据块进行恢复,读放大较小;相反,对于未被筛选的容器,由于其被同一数据流中较少的重复数据块和差量数据块引用,若对引用了这些容器的重复数据块或差量数据块进行去重或差量压缩,则后续对这些数据块进行恢复时,读取容器会导致对大量无用数据块的读取,引起严重的读放大问题;因此,本专利技术在
识别出数据流中的重复数据块和差量数据块后,对各容器被同一内存分段中的重复数据块和差量数据块引用的次数进行统计,并筛选出被引用次数较多的容器,将其中的重复数据块和差量数据块标记为非碎片化的数据块,并进行去重或者进行差量压缩,对于被引用次数较少的容器,则将其中的自重复数据块和差量数据块识别为碎片化数据块进行重新写入,能够有效缓解数据去重过程中的碎片化问题,减小数据恢复过程中的读放大,提升数据恢复性能。本专利技术在统计容器的被引用次数时,同时考虑了重复数据块和差量数据块,因此,是一种差量压缩感知的联合重写方法。
[0017]本专利技术通过对容器被引用计数的统计对容器进行筛选,能够识别出自重复数据块中的碎片,并本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于差量压缩的重删系统中的碎片重写方法,其特征在于,包括如下步骤:(S1)对于待写入的数据流,将其划分为数据块,并识别其中的重复数据块和差量数据块后,对于存储数据块的每一个内存分段,统计各容器被该内存分段中的重复数据块和差量数据块引用的次数,以筛选出被引用次数最大的前T个容器,将当前内存分段中引用所筛选容器的重复数据块和差量数据块标记为非碎片化数据块,将当前内存分段中引用其余容器的自重复数据块和差量数据块标记为碎片化数据块;T为正整数;(S2)遍历数据块,对于遍历到的每一个数据块,判断其类型,若为非碎片化数据块中的重复数据块,则进行去重;若为非碎片化数据块中的差量数据块,则进行差量压缩;若为碎片化数据块或非重复数据块,则重新分配容器并写入。2.如权利要求1所述的基于差量压缩的重删系统中的碎片重写方法,其特征在于,所述步骤(S1)还包括:对于未被筛选容器中的非自重复数据块,判断其所引用的容器当前是否被标记为稀疏容器,若是,则将该非自重复数据块标记为碎片化数据块;否则,将该非自重复数据块标记为非碎片化数据块;其中,稀疏容器为利用率低于预设的利用率阈值的容器;容器的利用率为引用该容器的重复数据块和差量数据块的大小之和与容器容量的比值。3.如权利要求2所述的基于差量压缩的重删系统中的碎片重写方法,其特征在于,还包括:在当前数据流备份结束后,计算各容器的利用率,并将其中利用率低于所述利用率阈值的容器标记为稀疏容器。4.如权利要求1~3任一项所述的基于差量压缩的重删系统中的碎片重写方法,其特征在于,还包括:在内存中维护用于缓存指定数量容器的模拟恢复缓存;并且,所述步骤(S2)中,对于当前所遍历到的数据块,若其在步骤(S1)中被识别为差量数据块,则在判断其...

【专利技术属性】
技术研发人员:王芳冯丹秦磊华施展王强王丰严伟杰刘昊
申请(专利权)人:华中科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1