重复数据删除的数据复原方法

文档序号:6425361阅读:278来源:国知局
专利名称:重复数据删除的数据复原方法
技术领域
本发明涉及一种重复数据删除的数据维护方法,特别涉及一种重复数据删除的数据复原方法。
背景技术
重复数据删除(data de-duplication)是一种数据缩减技术,通常用于基于磁盘的备份系统,主要目的在于减少存储系统中使用的存储容量。它的工作方式是在某个时间周期内查找不同文件中不同位置的重复可变大小数据块。重复的数据块用指示符取代。采用“重复数据删除”技术可以让出更多的备份空间,不仅可以使存储系统上的备份数据保存更长的时间,而且还可以节约离线存储时所需的大量的带宽。在进行重复数据删除的过程中,客户端111会对输入文件112进行切分的处理。输入文件112在经过切分处理后会产生多个数据区块(在此定义为切分数据块113)。请参考图I所示,其为现有技术的重复数据删除后的切分数据块示意图。随后,客户端111会对切分数据块113进行哈希处理,并产生相应各切分数据块113的指纹特征值(意即切分数据块113的指纹特征值)。客户端111将所得到的指纹特征值与储存于存储服务端中的指纹特征值进行比对,并判断有无相同的指纹特征值。若是存在相同的指纹特征值时,则代表此一数据区块曾经被存放于存储服务端中。当客户端111欲进行数据回复的处理时,客户端111会向存储服务端提出文件索取要求。存储服务端会根据文件索取要求将所有的切分数据块113(意即整份的输入文件112)直接传送给客户端111。客户端111在将所接收的切分数据块113对输入文件112进 行覆写,用以还原输入文件112。这样的作法虽然快速,但是对于客户端111(与存储服务端)会产生高负载及传输时频宽的占用等问题。

发明内容
鉴于以上的问题,本发明的目的在于提供一种重复数据删除的数据复原方法,用以复原客户端的目标文件的部分数据。本发明所揭露的重复数据删除的数据复原方法包括以下步骤客户端取得目标文件的文件属性;客户端向存储服务端查询目标文件所相应的原始文件的文件属性;由客户端比对目标文件的文件属性是否与原始文件的文件属性一致;若目标文件与原始文件的文件属性不一致时,则对目标文件进行切分处理,并产生至少一切分数据块与相应的指纹特征值;向存储服务端取得原始文件的所有的指纹特征值,客户端比对原始文件与目标文件的指纹特征值的相异处;客户端根据相异的指纹特征值向存储服务端取得相应的切分数据块,并将所取得的切分数据块覆写至目标文件中相应位置。上述的重复数据删除的数据复原方法,其中,该文件属性为一时间戳记或一索引号。上述的重复数据删除的数据复原方法,其中,该指纹特征值通过一哈希(Hash)算法或一单向(One Way)算法。上述的重复数据删除的数据复原方法,其中,取得的该些切分数据块覆写至该目标文件中相应位置的步骤还包括该客户端重复比对相异的该些指纹特征值并向该存储服务端取得相应的该些切分数据块,进行该目标文件的覆写,直至完成所有该目标文件为止。本发明提出一种重复数据删除的数据复原方法,用以复原客户端的目标文件的部分数据。客户端通过存储服务端所储存的指纹特征值与相应的切分数据块对目标文件进行局部的数据复原。以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。


图I为现有技术的重复数据删除后的切分数据块示意图;图2为本发明的架构示意图;图3为本发明的重复数据删除的流程示意图;图4为本发明的运作流程示意图;图5为本发明的切分数据块的差异示意图。其中,附图标记客户端111输入文件112切分数据块113客户端210存储服务端220指纹特征值索引列表221指纹特征值222原始文件510目标文件520
具体实施例方式下面结合附图对本发明的结构原理和工作原理作具体的描述请参考图2所示,其为本发明的架构示意图。请参考图2所示,其为本发明的架构示意图。本发明包括客户端210与存储服务端220。客户端210可以通过因特网(Internet)或企业内网(intranet)的方式连接于存储服务端220,也可以将客户端210与存储服务端220同时运行于同一台计算器装置上。存储服务端220还包括指纹特征值索引列表221,指纹特征值索引表记录多组指纹特征值222。客户端210向存储服务端220发出对一输入文件的查询要求时,存储服务端220根据指纹特征值索引列表221所记载的内容并通过下述方式进行查询的动作。请参考图3所示,其为本发明的重复数据删除的流程示意图。步骤S310 :客户端载入输入文件,并产生相应输入文件的数据区块与相应每一数据区块的指纹特征值;
步骤S320 :客户端向存储服务端发送查询请求,在查询请求中记录相应数据区块的指纹特征值,用以向存储服务端查询是否存在有相同的指纹特征值;步骤S330 :当存储服务端的指纹特征值索引列表中未储存指纹特征值,则存储服务端向客户端发送储存要求,用以将指纹特征值所相应的数据区块传送至存储服务端中储存,并且存储服务端将所接收到的指纹特征值依序加入指纹特征值索引列表中;以及步骤S340 :当存储服务端的指纹特征值索引表中已经存在该笔指纹特征值,则存储服务端向客户端回应该笔切分数据块已经存在。由客户端210中载入输入文件,客户端210对输入文件进行切 分处理,并产生相应输入文件的数据区块与相应每一数据区块的指纹特征值222。指纹特征值222计算的算法可以是但不局限于SHA-I或MD5。而数据区块是根据固定长度方式(fixed-sizepartition)或基于内容变长度分割方式(content-defined chunking, Q)C)。定长切分算法采用预先定义好的切分数据块大小对输入文件进行切分。定长分块算法的优点是简单、性能高。内容定义切分算法是一种变长分块算法,它应用指纹数据(如Rabin指纹)将档分割成长度大小不等的分块策略。与定长切分算法不同,内容定义切分算法是基于输入文件内容进行切分,因此切分数据块大小是可变化的。接着,客户端210向存储服务端220发送查询请求,在查询请求中记录相应数据区块的指纹特征值222,用以向存储服务端220查询是否存在有相同的指纹特征值222。当存储服务端220的指纹特征值索引列表221中未储存指纹特征值222,则存储服务端220向客户端210发送储存要求,用以将指纹特征值222所相应的数据区块传送至存储服务端220中储存,并且存储服务端220将所接收到的指纹特征值222依序加入指纹特征值索引列表221 中。当客户端210欲进行文件的还原处理,客户端210会向存储服务端220发出文件还原要求。为能清楚说明客户端210与伺服端所存储的文件,因此将客户端210欲进行文件还原处理的文件将其定义为目标文件。存储服务端220所存储的数据文件(意即各文件的切分数据块)定义为原始文件,因此原始文件的数量并非仅为一个。存储服务端220根据下列步骤进行相应的文件还原处理,请参考图4与图5所示,其是分别为本发明的运作流程示意图与切分数据块的差异示意图,其包括以下步骤步骤S410 :客户端取得目标文件的文件属性;步骤S420 :客户端向存储服务端查询目标文件所相应的原始文件的文件属性;步骤S430 由客户端比对目标文件的文件属性是否与原始文件的文件属性一致;步骤S440 :若目标文件与原始文件的文件属性一致时,则客户端不进行文件还原处理;步骤S450 :若目标文件与原始文件的文件属性不一致时,则对目标文件进行切分处理,并产生至少一切分数据块与相应的指纹特征值;步骤S460 :向存储服务端取得原始文件的所有的指纹特征值,客户端比对原始文件与目标文件的指纹特征值的相异处;以及步骤S470 :客户端根据相异的指纹特征值向存储服务端取得相应的切分数据块,并将所取得的切分数据块覆写至目标文件中相应位置。首先,客户端210取得目标文件的文件属性,文件属性是为时间戳记(TimeStamp)或索引号(Index)。换言之,客户端210在对目标文件进行切分处理前,客户端210会纪录目标文件520的文件属性。接着,客户端210会向存储服务端220查询目标文件520所相应的原始文件510的文件属性。存储伺服端220查找是否已经储存目标文件520所相应的原始文件510的文件属性。客户端210如果之前已经对目标文件520进行过数据备份,存储伺服端220中会储存对应目标文件520的原始文件510与相关的文件属性。客户端210根据存储伺服端220所传来的原始文件510的文件属性与目标文件520的文件属性进行比对。若文件属性以时间戳记为例,在不同时间所创建的数据文件会分别给定不同的时间戳记。因此目标文件520与原始文件510的文件属性不一致时,则代表目标文件520已经被修改过。
若目标文件520与原始文件510的文件属性不一致时,客户端210则对目标文件520进行切分处理,并产生至少一切分数据块与相应的指纹特征值222。客户端210向存储服务端220取得原始文件510的所有的指纹特征值222,客户端210比对原始文件510与目标文件520的指纹特征值222的相异处(即为图5中切分数据块的黑色区块处)。而存储服务端220接收到客户端210索取指纹特征值222可以是整批传送,也可以是分批传送至客户端210。由于指纹特征值222的数据量远比切分数据块小,因此在传输过程中并不会严重的影响频宽的使用。最后,客户端210根据相异的指纹特征值222向存储服务端220取得相应的切分数据块,并将所取得的切分数据块覆写至目标文件520中相应位置。本发明提出一种重复数据删除的数据复原方法,用以复原客户端210的目标文件520的部分数据。客户端210通过存储服务端220所储存的指纹特征值222与相应的切分数据块对目标文件520进行局部的数据复原。而且本发明相较于现有技术而言,本发明不需对目标文件520逐一的读取与写入,仅需要进行读取与计算的处理。所以相较于现有技术而言,本发明的写入时间可以有效的缩短。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种重复数据删除的数据复原方法,其根据一存储服务端中存储经过重复数据删除处理的一原始文件,提供一客户端对一目标文件进行部分数据的复原,其特征在干,该数据复原方法包括 该客户端取得该目标文件的一文件属性; 该客户端向该存储服务端查询该目标文件所相应的ー原始文件的该文件属性; 由该客户端比对该目标文件的该文件属性是否与该原始文件的该文件属性一致; 若该目标文件与该原始文件的该文件属性不一致吋,则对该目标文件进行一切分处理,并产生至少一切分数据块与相应的一指纹特征值; 向该存储服务端取得该原始文件的所有该些指纹特征值,该客户端比对该原始文件与该目标文件的该些指纹特征值的相异处;以及 该客户端根据相异的该些指纹特征值向该存储服务端取得相应的该些切分数据块,并将所取得的该些切分数据块覆写至该目标文件中相应位置。
2.根据权利要求I所述的重复数据删除的数据复原方法,其特征在于,该文件属性为ー时间戳记或一索引号。
3.根据权利要求I所述的重复数据删除的数据复原方法,其特征在干,该指纹特征值通过ー哈希算法或ー单向算法。
4.根据权利要求I所述的重复数据删除的数据复原方法,其特征在于,取得的该些切分数据块覆写至该目标文件中相应位置的步骤还包括 该客户端重复比对相异的该些指纹特征值井向该存储服务端取得相应的该些切分数据块,进行该目标文件的覆写,直至完成所有该目标文件为止。
全文摘要
一种重复数据删除的数据复原方法,用以复原客户端的目标文件的部分数据,其包括客户端向存储服务端查询目标文件所相应的原始文件的文件属性;客户端比对目标文件的文件属性是否与原始文件的文件属性一致;若目标文件与原始文件的文件属性不一致时,则对目标文件进行切分处理,产生切分数据块与相应的指纹特征值;向存储服务端取得原始文件的所有的指纹特征值,客户端比对原始文件与目标文件的指纹特征值的相异处;客户端根据相异的指纹特征值向存储服务端取得相应的切分数据块,将所取得的切分数据块覆写至目标文件中相应位置。
文档编号G06F17/30GK102799598SQ20111014571
公开日2012年11月28日 申请日期2011年5月25日 优先权日2011年5月25日
发明者刘威, 陈志丰 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1