CN108415671B - 一种面向绿色云计算的重复数据删除方法及系统 - Google Patents

一种面向绿色云计算的重复数据删除方法及系统 Download PDF

Info

Publication number
CN108415671B
CN108415671B CN201810271309.2A CN201810271309A CN108415671B CN 108415671 B CN108415671 B CN 108415671B CN 201810271309 A CN201810271309 A CN 201810271309A CN 108415671 B CN108415671 B CN 108415671B
Authority
CN
China
Prior art keywords
file
fingerprint
data
data block
fingerprints
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810271309.2A
Other languages
English (en)
Other versions
CN108415671A (zh
Inventor
徐小龙
王泊
牟亦奇
朱洁
王俊昌
刘茜萍
张洁
胥备
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Stock Exchange Technology Co ltd
Original Assignee
Shanghai Stock Exchange Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Stock Exchange Technology Co ltd filed Critical Shanghai Stock Exchange Technology Co ltd
Priority to CN201810271309.2A priority Critical patent/CN108415671B/zh
Publication of CN108415671A publication Critical patent/CN108415671A/zh
Application granted granted Critical
Publication of CN108415671B publication Critical patent/CN108415671B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Abstract

本发明涉及云计算和数据处理方法及系统技术领域,具体来说是一种面向绿色云计算的重复数据删除方法及系统,将文件划分为若干个数据块,并采用至少两个Hash函数分别对文件中的每个数据块进行指纹提取,将得到的每个数据块的至少两个指纹值作为数据块的唯一指纹,并将每个数据块的唯一指纹相结合作为文件的指纹序列,并对文件进行Hash运算,得到文件的指纹值,将文件的指纹序列和文件的指纹值相结合作为所述文件的唯一指纹。本发明同现有技术相比其优点在于对重复数据进行删除,降低了云环境中数据的冗余性,且解决了文件指纹之间的重复冲突问题,重复数据删除速度快,占用存储空间小,有效减低云环境的存储、电力资源开销,有助于系统实现绿色云计算。

Description

一种面向绿色云计算的重复数据删除方法及系统
[技术领域]
本发明涉及云计算和数据处理方法及系统技术领域,具体来说是一种面向绿色云计算的重复数据删除方法及系统。
[背景技术]
重复数据删除(Data De-duplication)是一种数据的无损压缩方式,也称为智能压缩(Intelligent Compression)或单一实例存储(Single Instance Storage)。它通过比对数据块的指纹,将相同的数据只保留唯一的副本,并使用指向单一副本的指针替换其它重复副本,以达到消除数据冗余和降低存储容量需求的目的。
目前,重复数据删除技术主要应用于备份归档、数据容灾等,也应用于在虚拟机环境下的主存储系统、内存性能优化和延长固态硬盘(Solid State Disk,SSD)使用寿命等场合。
近年来,云计算、物联网、移动计算一直都是研究的热门领域,云计算的发展十分迅猛。云计算将计算资源集中起来,并通过专门的软件实现自动管理,无需人为参与。用户可以动态申请部分资源,支持各种应用程序和服务的运转,用户无需为烦琐的细节而烦恼,更加专注于自己的业务,有利于提高效率、降低成本和技术创新。但是,企业的日常业务运营少不了数据的备份、归档等工作,随着业务的发展和扩大,数据呈现指数级的增长,然而其中有大部分都是冗余的数据,这样不但给运应商带来了高额的硬盘成本和人员维护支出,而且也不利于云计算的绿色可持续发展。
在云存储环境中,数据通常存储在第三方公司提供的空间里,而不是单一的主机中,并且需要对这些数据加以管理,集成为用户可以访问的不同资源。但是,传统的存储区域网络(Storage Area Network,SAN)和网络附加存储(Network Attached Storage,NAS)这两种存储技术在存储容量和可扩展性上存在瓶颈,并且在硬件设备的部署数量上也存在一定的限制,而云计算中用户和设备的数量又非常巨大,云网络管理常常无法控制不同存储节点的性能,这就增加了在控制硬件和网络流量方面的复杂性,进一步降低了云网络的性能。
面对数据爆炸式的增长而带来的系统性能下降和成本增加,研究者们提出了不同环境下重复数据删除方法,并验证了其可行性和可靠性。实践证明重复数据删除技术可以大幅度提高存储系统的效率。如何将重复数据删除技术更好地融入云存储中,成为了研究者们的关注热点。
相比于传统的数据压缩技术,重复数据删除技术不仅可以消除文件内的数据冗余,还能消除共享数据集内文件之间的数据冗余。重复数据删除技术作为存储和网络优化技术,可以有效地解决海量存储所遇困境,使用指针替代重复数据,以剔除重复的数据块或文件。通过它可以将存储的数据量缩减为原来的1/8~1/500。
重复数据删除技术具有以下几个优势:
(1)降低成本。
重复数据删除带来资源利用率的提高和成本的节约,包括数据中心耗电量、冷却成本和占地面积的减少,以及存储容量、网络带宽和信息技术人员的减少。
(2)提高备份和恢复服务级别。
重复数据删除技术可以提高数据备份性能,从而可以在有限的备份时间窗口内完成备份。同时,重复数据删除技术还充分利用随机存储磁盘进行数据存储,相对于顺序存取(磁带),提高了数据备份和恢复性能。
(3)使磁盘相对于磁带更加经济。
相比于磁带,重复数据删除技术使得基于磁盘的备份适应于更多的应用程序,因此,随着磁盘单位存储容器的增加和价格的下降,使得基于磁盘的数据存储与备份有着更高的性价比。
(4)减少二氧化碳的排放。
重复数据删除技术降低了数据存储在电源、冷却和存储设备存放空间等方面的需求,因此更少的能源消耗和物质需求降低了二氧化碳的排放,符合节能环保的绿色存储理念,有利于企业承担社会责任。
因此,基于当下对重复数据删除技术及系统的需求,需要设计一种新型的面向绿色云计算的重复数据删除方法及系统,以克服现有技术中文件重复数据对比速度慢且对比结果不准确、索引表占用存储空间大的问题。
[发明内容]
本发明的目的在于解决现有技术的不足,提供一种面向绿色云计算的重复数据删除方法及系统,消除云计算系统中的重复数据,降低不必要的系统开销,以实现绿色云计算。
为了实现上述目的,设计一种面向绿色云计算的重复数据删除方法,所述的方法包括:将文件划分为若干个数据块,并采用至少两个Hash函数分别对文件中的每个数据块进行指纹提取,将得到的每个数据块的至少两个指纹值作为所述数据块的唯一指纹,并将每个数据块的唯一指纹相结合作为所述文件的指纹序列,并对所述的文件进行Hash运算,得到文件的指纹值,将所述文件的指纹序列和文件的指纹值共同作为所述文件的唯一指纹。
本发明还具有如下优选的技术方案:
采用一强Hash函数和一弱Hash函数分别对文件中的每个数据块进行指纹提取。
所述的方法具体包括:
步骤a.将文件切分成若干个数据块;
步骤b.对每个数据块分别进行指纹提取,从而获得每个数据块的指纹、文件的指纹序列和文件的指纹;
步骤c.将提取得到的每个数据块的指纹、文件的指纹序列和文件的指纹与指纹索引表进行比对;
步骤d.若在指纹索引表中比对得到相同的指纹,则说明所述的文件或数据块已经存在,保存一个指针即可;否则,需要将该指纹插入指纹索引表并将该文件或数据块存入存储器中。
所述的步骤a具体包括:采用滑动窗口技术将文件划分为可变长度的数据块并同步进行指纹提取,即使滑动窗口从文件的头部逐个字节向前滑动直至文件结束,并逐个提取当前窗口内字节的指纹f,当指纹达到设定的标准时,即fmodD=r,式中:r为预先定义的值,D是变长块的期望值,则认为到达当前数据块的边界。
所述的步骤b包括:在文件切分后,根据文件初始长度的不同,分为四种情况进行填充和分组:
①初始长度≤512bit,且初始长度≤448bit;
②初始长度≤512bit,且448bit<初始长度≤512bit;
③初始长度>512bit,且剩余消息长度,即文件在划分、处理完所有满足分组条件后的剩余部分的长度≤448bit;
④初始长度>512bit,且448bit<剩余消息长度≤512bit;
若为①②文件的初始长度小于等于一个分组长度的情况,直接对初始消息进行填充和分组;
若为③④情况,则首先运用循环结构不断地将文件中满足分组划分条件的内容拷贝到一个事先定义好的512bit大的分组存储区中进行分组的逻辑处理,然后对剩余消息进行填充和分组划分,并进行分组哈希运算,最后得到128bit消息摘要的输出。
所述的指纹索引表包括文件指纹索引表和数据块指纹索引表,首先将文件的指纹与文件指纹索引表进行比对,若存在相同的指纹,则进一步将所述文件的指纹序列与文件指纹索引表中相同指纹的指纹序列相对比,若也相同,则表明已存在相同的文件;
若文件指纹索引表中不存在相同的文件的指纹,或者虽存在相同的文件的指纹,但文件的指纹序列不同,则进一步将文件中每个数据块的指纹与数据块指纹索引表进行对比,若存在相同的指纹,则表明已存在相同的数据块。
所述的指纹索引表采用至少两层的混合指纹索引方式,每一层指纹索引表设有若干个指纹索引项,每个指纹索引项登记一个存放数据块号或指向下一层的一个物理块,所述的物理块中存放下一层的指纹索引项。
所述的方法具体为采用文件访问协议层支持若干种文件访问协议,将存储子系统网络化,以实现高速共享存储;采用文件服务层管理文件系统的元数据和名空间,在文件服务层设有各种标准的文件服务接口;采用内容分析层实现对文件的切分和指纹提取;采用数据块过滤层实现指纹对比;采用数据块存储层储存指纹索引表以及数据块。
本发明还设计一种采用所述的面向绿色云计算的重复数据删除方法的系统,包括用于支持若干种文件访问协议,将存储子系统网络化,以实现高速共享存储的文件访问协议层;用于管理文件系统的元数据和名空间,包括各种标准的文件服务接口的文件服务层;用于实现对文件的切分和指纹提取的内容分析层;用于实现指纹对比的数据块过滤层;以及用于储存指纹索引表以及数据块的数据块存储层。
本发明同现有技术相比,其优点在于:
1、本发明针对云环境中数据存在冗余性的问题,对重复数据进行删除,降低了云环境中数据的冗余性,且解决了文件指纹之间的重复冲突问题,重复数据删除速度快,占用存储空间小。
2、本发明可以有效减低云环境的存储、电力等资源开销,有助于系统实现绿色云计算。
[附图说明]
图1是一实施例中本发明重复数据删除系统结构图;
图2是一实施例中本发明重复数据删除流程示意图;
图3是一实施例中本发明滑动窗口技术示意图;
图4是一实施例中本发明从数据块最小值的地方开始滑动示意图;
图5是一实施例中本发明指纹计算方法流程图;
图6是一实施例中本发明的混合指纹索引表。
[具体实施方式]
下面结合附图对本发明作进一步说明,这种系统及方法的结构和原理对本专业的人来说是非常清楚的。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
所述的面向绿色云计算的重复数据删除系统如图1所示,顶层为文件访问协议层,可以支持若干种文件访问协议,如NFS,CIFS,VTL或者iSCSI等。通过文件访问协议层将存储子系统网络化,实现高速共享存储的目标。在文件访问协议层以下是包括各种标准的文件服务接口的文件服务层,它负责管理文件系统的元数据和名空间。传统的存储系统在文件服务层之下即为块操作接口,在本实施方式中,重复数据删除系统定义了一种抽象的数据对象——Chunk,它是对文件进行内容分析的基本单位。内容分析层按照数据划分策略将文件划分成若干个Chunk;同时,计算出每个Chunk的指纹。这样,文件可以通过其Chunk指纹列表来表示。Chunk过滤层比对Chunk的特征值来确定Chunk是否为重复的。Chunk存储层则负责存储唯一的Chunk;为支持快速查询建立Chunk索引来保存Chunk的指纹。
在本实施方式中,重复数据删除过程包括文件切分,指纹提取,索引查找和数据存储四个过程,重复数据删除的流程如图2所示。
文件切分:将文件按照给定的数据划分策略分割成若干个Chunk,获取到的Chunk可以是文件级别的,也可以是数据块级别的。一般而言,Chunk的粒度越小,缩减率越高,但元数据和系统开销都会增加。
首先将文件根据内容应用滑动窗口技术划分成可变长度的数据块再计算Hash值。滑动窗口从文件或数据流头部逐个字节的向前开始滑动,每到达一个新窗口,就利用哈希算法计算当前窗口内字节所对应的指纹或数字签名,记为f。当指纹f达到某个特定的标准,如f mod D=r,这里r为预先定义的值,D是变长块的期望值,则认为它为数据块的一个边界,这个过程直到文件或数据流结束,如图3所示。
由于其对文件和数据流中的数据序列并不敏感,当数据串中的有微小变化时,除了变化的数据块后有少数的数据边界会发生变化,大多数数据块仍能保持原有的边界,这对于找出更多冗余数据块很有意义,能有效地节省存储空间。本发明进一步让滑动窗口从数据块最小值的地方开始滑动,以避免许多不必要的指纹计算和比对,如果滑动到数据块最大值的地方还没有找到数据块的边界点,便硬性地规定此处为数据块的一个边界点。
在经过文件切分后需要对其计算Hash指纹值。指纹计算方法如图5所示:
根据文件初始长度的不同,分为四种情况进行填充和分组:
①初始长度≤512bit,且初始长度≤448bit;
②初始长度≤512bit,且448bit<初始长度≤512bit;
③初始长度>512bit,且剩余消息长度,即文件在划分、处理完所有满足分组条件后的剩余部分的长度≤448bit;
④初始长度>512bit,且448bit<剩余消息长度≤512bit;
若为①②文件的初始长度小于等于一个分组长度的情况,直接对初始消息进行填充和分组;
若为③④情况,则首先运用循环结构不断地将文件中满足分组划分条件的内容拷贝到一个事先定义好的512bit大的分组存储区中进行分组的逻辑处理,然后对剩余消息进行填充和分组划分,并进行分组哈希运算,最后得到128bit消息摘要的输出。
所述的填充就是指用0、1进行数据填充,使其大小等于一个数据分组的大小;所述的分组就是指按照设定的大小对文件进行分组。
所述的填充和分组的方法将大量的计算和查找操作用相应的值代替,避免了占用过多的系统资源,又大大降低了算法的运算强度,提高了算法的运行速度。
在提取数据块的指纹值之后,需要与索引表比对,通过判断指纹是否已存在于索引表中,继而得知是否已存在磁盘上。在恢复数据时,通过指纹索引可以找到磁盘上的文件数据,完成数据恢复。
指纹提取:利用若干个哈希函数来计算每个Chunk的指纹值,即Chunk的唯一标识。
文件在托管到承担实际存储任务的数据节点前首先要在用户端等地对文件进行分块,并提取数据块和文件的数据指纹,以作为数据块和文件的唯一性标识。按照前述步骤,设当前用户试图托管文件fx,用户首先按照一定的分块策略将文件fx分为k个数据块:{c1,c2,...,ci,...ck}。
对于每一个数据块均采用Hash函数来计算其数字指纹。基于Hash的指纹函数均存在不同程度的碰撞问题,即不同数据块可能会产生相同的数据指纹。即如果两个数据块指纹相同,不能断定这两个数据块是相同的。本实施方式联合采用强弱两个Hash函数h1()如SHA-1、h2()如MD5来对文件中的数据块进行指纹提取,分别得到一个强指纹值和弱指纹值,将强指纹值和弱指纹值相结合,以h1(ci)|h2(ci)作为数据块ci的唯一指纹,将每个数据块的唯一指纹相结合,组合成指纹序列,从而得到针对文件fx的k个数据块的指纹序列{h1(c1)|h2(c1),h1(c2)|h2(c2),...,h1(ci)|h2(ci),...h1(ck)|h2(ck)}。
此时对数据块的指纹序列中的指纹值进行校验,检查是否有相同的指纹值。首先比对强指纹值,若不存在两个数据块强指纹值相同的情况,则说明没有数据块若数据块ci和数据块cj的强指纹值和弱指纹值均相等,h1(ci)=h1(cj)且h2(ci)=h2(cj),说明这两个数据块内容相同,对数据块进行标记合并。
弱指纹值的计算消耗远小于强指纹值的计算量。强指纹值和弱指纹值的联合使用使得系统可以较小的性能代价极大地降低了碰撞产生的概率。
为了实现文件间和文件内部的数据紧凑目标,还需要进一步得到文件fx的唯一数字指纹。为了降低计算开销,本发明对上述的指纹序列{h1(c1)|h2(c1),h1(c2)|h2(c2),...,h1(ci)|h2(ci),...h1(ck)|h2(ck)}再作一次Hash运算,从而得到结果h3(h1(c1)|h2(c1),h1(c2)|h2(c2),...,h1(ci)|h2(ci),...h1(ck)|h2(ck)),以该值与数据块指纹序列联合作为fx的数字指纹:h3(h1(c1)|h2(c1),...h1(ck)|h2(ck))|{h1(c1)|h2(c1),...h1(ck)|h2(ck)}。
用户在将数据上传前首先将文件fx的数字指纹上传至云服务器端,与服务器端的指纹索引表进行比对。为了实现文件级和数据块级的双级重复数据删除,最大限度的降低存储开销,采用文件及数据块2级指纹索引表。
首先将文件fx的数字指纹的第1部分h3(h1(c1)|h2(c1),...h1(ck)|h2(ck))与文件级索引表中的相关信息进行比对。
若存在相同的信息(设与文件fy相同),则进一步比较将文件fx的数字指纹的第2部分{h1(c1)|h2(c1),h1(c2)|h2(c2),...,h1(ci)|h2(ci),...h1(ck)|h2(ck)}与文件fy比较,若也相同,则表明fx事实上是与云端已存在的fy相同的文件,文件fx及其包含的任何数据块均不必上传,仅更新文件fy在文件级索引表中的信息及其数据块在数据块级索引表中的信息。
若不存在文件与文件fx的数字指纹的第1部分相同,或是存在文件与文件fx的数字指纹的第1部分相同,但数字指纹的第2部分并不相同(表明发生了低概率碰撞事件),则表明云端不存在文件fx,但有可能fx中仍包含与云端已存在的数据块,因此进一步将h1(c1)|h2(c1)、h1(c2)|h2(c2)、…、h1(ci)|h2(ci)、…、h1(ck)|h2(ck)与数据块级索引表中的数据块强、弱指纹信息进行比对,通过检查是否有相同的指纹值以确定待上传的数据块是否已存在于云端。
索引查找:将所计算的指纹与现有的指纹索引表进行比对。
本发明为数据块建立指纹索引表,将指纹由小到大进行排列,表中每一栏目指出数据块指纹和与之对应的数据块地址。索引结构是非连续分配的存储结构。索引表本身也存放在磁盘中,当索引表较大,需占用多个盘块时,可通过链接指针将这些盘块链接起来。
当系统规模大的情况下,指纹索引表会很长,既占有大量存储空间,又影响到检索速度。在此情况下本发明给出多层指纹索引表,以缩短索引表长度。该方法是为指纹索引表本身建立索引表,从而形成两级索引。如果二级索引表仍然很长,还可再建立三级索引、四级索引表等。但随着索引级数的增多,访问盘的次数会增加。
本实施方式中采用混合指纹索引方式,以缩短索引表的长度,如图6所示。第一层指纹索引表规定为13个指纹索引项,每项4个字节,登记一个存放数据块号。前面10项存放10个数据块号。如果大于10块,则利用第11项指向一个物理块,该块中最多可放128个数据块号。这种方式是一次间接寻址,可以检索128个数据块。每个大型文件还可以利用第12和13项作二次和三次间接寻址。
数据存储:若在索引查找时找到相同的指纹,则说明该Chunk已经存在,保存一个指针即可;否则,需要将该指纹值插入指纹索引表并将该Chunk存入磁盘。

Claims (9)

1.一种面向绿色云计算的重复数据删除方法,其特征在于所述的方法包括:将文件划分为若干个数据块,并采用至少两个Hash函数分别对文件中的每个数据块进行指纹提取,将得到的每个数据块的至少两个指纹值作为所述数据块的唯一指纹,并将每个数据块的唯一指纹相结合作为所述文件的指纹序列,并对所述的文件的指纹序列进行Hash运算,得到文件的指纹值,将所述文件的指纹序列和文件的指纹值共同作为所述文件的唯一指纹。
2.如权利要求1所述的一种面向绿色云计算的重复数据删除方法,其特征在于采用一强Hash函数和一弱Hash函数分别对文件中的每个数据块进行指纹提取。
3.如权利要求1或2所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的方法具体包括:
步骤a.将文件切分成若干个数据块;
步骤b.对每个数据块分别进行指纹提取,从而获得每个数据块的指纹、文件的指纹序列和文件的指纹;
步骤c.将提取得到的每个数据块的指纹、文件的指纹序列和文件的指纹与指纹索引表进行比对;
步骤d. 若在指纹索引表中比对得到相同的指纹,则说明所述的文件或数据块已经存在,保存一个指针即可;否则,需要将该指纹插入指纹索引表并将该文件或数据块存入存储器中。
4.如权利要求3所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的步骤a具体包括:采用滑动窗口技术将文件划分为可变长度的数据块并同步进行指纹提取,即使滑动窗口从文件的头部逐个字节向前滑动直至文件结束,并逐个提取当前窗口内字节的指纹f,当指纹达到设定的标准时,即fmodD=r,式中:r 为预先定义的值,D 是变长块的期望值,则认为到达当前数据块的边界。
5.如权利要求3所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的步骤b包括:在文件切分后,根据文件初始长度的不同,分为四种情况进行填充和分组:
①初始长度≤512 bit,且初始长度≤448 bit;
②初始长度≤512 bit,且448 bit<初始长度≤512 bit;
③初始长度>512 bit,且剩余消息长度,即文件在划分、处理完所有满足分组条件后的剩余部分的长度≤448 bit;
④初始长度>512 bit,且448 bit<剩余消息长度≤512 bit;
若为①②文件的初始长度小于等于一个分组长度的情况,直接对初始消息进行填充和分组;
若为③④情况,则首先运用循环结构不断地将文件中满足分组划分条件的内容拷贝到一个事先定义好的 512 bit 大的分组存储区中进行分组的逻辑处理,然后对剩余消息进行填充和分组划分,并进行分组哈希运算,最后得到 128 bit 消息摘要的输出。
6.如权利要求3所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的指纹索引表包括文件指纹索引表和数据块指纹索引表,首先将文件的指纹与文件指纹索引表进行比对,若存在相同的指纹,则进一步将所述文件的指纹序列与文件指纹索引表中相同指纹的指纹序列相对比,若也相同,则表明已存在相同的文件;
若文件指纹索引表中不存在相同的文件的指纹,或者虽存在相同的文件的指纹,但文件的指纹序列不同,则进一步将文件中每个数据块的指纹与数据块指纹索引表进行对比,若存在相同的指纹,则表明已存在相同的数据块。
7.如权利要求3所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的指纹索引表采用至少两层的混合指纹索引方式,每一层指纹索引表设有若干个指纹索引项,每个指纹索引项登记一个存放数据块号或指向下一层的一个物理块,所述的物理块中存放下一层的指纹索引项。
8.如权利要求3所述的一种面向绿色云计算的重复数据删除方法,其特征在于所述的方法具体为采用文件访问协议层支持若干种文件访问协议,将存储子系统网络化,以实现高速共享存储;采用文件服务层管理文件系统的元数据和名空间,在文件服务层设有各种标准的文件服务接口;采用内容分析层实现对文件的切分和指纹提取;采用数据块过滤层实现指纹对比;采用数据块存储层储存指纹索引表以及数据块。
9.采用如权利要求8所述的面向绿色云计算的重复数据删除方法的系统,其特征在于包括用于支持若干种文件访问协议,将存储子系统网络化,以实现高速共享存储的文件访问协议层;用于管理文件系统的元数据和名空间,包括各种标准的文件服务接口的文件服务层;用于实现对文件的切分和指纹提取的内容分析层;用于实现指纹对比的数据块过滤层;以及用于储存指纹索引表以及数据块的数据块存储层。
CN201810271309.2A 2018-03-29 2018-03-29 一种面向绿色云计算的重复数据删除方法及系统 Active CN108415671B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810271309.2A CN108415671B (zh) 2018-03-29 2018-03-29 一种面向绿色云计算的重复数据删除方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810271309.2A CN108415671B (zh) 2018-03-29 2018-03-29 一种面向绿色云计算的重复数据删除方法及系统

Publications (2)

Publication Number Publication Date
CN108415671A CN108415671A (zh) 2018-08-17
CN108415671B true CN108415671B (zh) 2021-04-27

Family

ID=63132758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810271309.2A Active CN108415671B (zh) 2018-03-29 2018-03-29 一种面向绿色云计算的重复数据删除方法及系统

Country Status (1)

Country Link
CN (1) CN108415671B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683856A (zh) * 2018-10-26 2019-04-26 平安科技(深圳)有限公司 电子装置、Faas平台函数创建方法及存储介质
CN110636141B (zh) * 2019-10-17 2021-11-09 中国人民解放军陆军工程大学 基于云雾协同的多云存储系统及其管理方法
CN111338568B (zh) * 2020-02-16 2020-11-06 西安奥卡云数据科技有限公司 一种数据逻辑位置映射方法
CN112104725B (zh) * 2020-09-09 2022-05-27 中国联合网络通信集团有限公司 容器镜像去重方法、系统、计算机设备及存储介质
CN117435135B (zh) * 2023-10-27 2024-04-02 广州鼎甲计算机科技有限公司 关于重复数据删除的存储空间回收的方法、装置和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156727A (zh) * 2011-04-01 2011-08-17 华中科技大学 一种采用双指纹哈希校验的重复数据删除方法
CN102722583A (zh) * 2012-06-07 2012-10-10 无锡众志和达存储技术有限公司 重复数据删除硬件加速装置和方法
CN103020174A (zh) * 2012-11-28 2013-04-03 华为技术有限公司 相似性分析方法、装置及系统
CN105955675A (zh) * 2016-06-22 2016-09-21 南京邮电大学 一种用于去中心云环境的重复数据删除系统及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412682B2 (en) * 2006-06-29 2013-04-02 Netapp, Inc. System and method for retrieving and using block fingerprints for data deduplication
CN101908077B (zh) * 2010-08-27 2012-11-21 华中科技大学 一种适用于云备份的重复数据删除方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156727A (zh) * 2011-04-01 2011-08-17 华中科技大学 一种采用双指纹哈希校验的重复数据删除方法
CN102722583A (zh) * 2012-06-07 2012-10-10 无锡众志和达存储技术有限公司 重复数据删除硬件加速装置和方法
CN103020174A (zh) * 2012-11-28 2013-04-03 华为技术有限公司 相似性分析方法、装置及系统
CN105955675A (zh) * 2016-06-22 2016-09-21 南京邮电大学 一种用于去中心云环境的重复数据删除系统及方法

Also Published As

Publication number Publication date
CN108415671A (zh) 2018-08-17

Similar Documents

Publication Publication Date Title
CN108415671B (zh) 一种面向绿色云计算的重复数据删除方法及系统
US9880746B1 (en) Method to increase random I/O performance with low memory overheads
US9767154B1 (en) System and method for improving data compression of a storage system in an online manner
US9262434B1 (en) Preferential selection of candidates for delta compression
US9201891B2 (en) Storage system
US9798486B1 (en) Method and system for file system based replication of a deduplicated storage system
US9798728B2 (en) System performing data deduplication using a dense tree data structure
US9268783B1 (en) Preferential selection of candidates for delta compression
CN106066896B (zh) 一种应用感知的大数据重复删除存储系统及方法
US8943032B1 (en) System and method for data migration using hybrid modes
US8949208B1 (en) System and method for bulk data movement between storage tiers
US10303797B1 (en) Clustering files in deduplication systems
US9715434B1 (en) System and method for estimating storage space needed to store data migrated from a source storage to a target storage
US8972672B1 (en) Method for cleaning a delta storage system
US9405764B1 (en) Method for cleaning a delta storage system
US8219534B2 (en) Multiple file compaction for network attached storage
US10216754B1 (en) System and method for balancing compression and read performance in a storage system
US10135462B1 (en) Deduplication using sub-chunk fingerprints
US9400610B1 (en) Method for cleaning a delta storage system
US9026740B1 (en) Prefetch data needed in the near future for delta compression
Romański et al. Anchor-driven subchunk deduplication
US10108644B1 (en) Method for minimizing storage requirements on fast/expensive arrays for data mobility and migration
CN109522283B (zh) 一种重复数据删除方法及系统
WO2013086969A1 (zh) 重复数据查找方法、装置及系统
US10838923B1 (en) Poor deduplication identification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant