增加的联机去重复效率制造技术

技术编号:10732408 阅读:97 留言:0更新日期:2014-12-10 09:59
本发明专利技术提供了用于计算环境中的增加的联机去重复效率的示例性方法、系统和计算机程序产品实施例。在一个实施例中,仅作为示例,在n次迭代中计算用于从被请求用于联机去重复的对象提取的累积数据块的散列值。对于n次迭代中的每一次,在第n个散列索引表中将累积数据块的计算出的散列值与存储装置中的现有对象的对应散列值相匹配。在匹配期间一检测到失配就退出第n个散列索引表。失配被确定为唯一对象并被存储。对象的散列值被计算。利用对象的计算出的散列值和唯一对象的计算出的散列值来更新主散列索引表。附加系统和计算机程序产品实施例被公开并且提供相关优点。

【技术实现步骤摘要】
【国外来华专利技术】增加的联机去重复效率的方法和系统
本专利技术总体上涉及计算系统,并且更特别地涉及增加的联机去重复(in-linededuplication)效率。
技术介绍
在当今社会中,计算机系统是司空见惯的。计算机系统可在工作地点、在家或者在学校找到。计算机系统可包括用来处理和存储数据的数据存储系统或者磁盘存储系统。一个这种处理是数据去重复。数据去重复指代冗余数据的减少和/或消除。在数据去重复处理中,数据的重复副本被减少或者消除,从而分别留下最小量的冗余副本,或者数据的单个副本。使用去重复处理提供各种益处,诸如所需存储容量的减少和对网络带宽的减少的需要。由于这些以及其他益处,去重复近年来已经显现为计算存储系统中的高度重要

技术实现思路
随着其中用户可以在存储云服务内的存储空间上拥有、创建、修改和/或删除容器和对象的存储云服务的显现,通过HTTP对存储空间的在线访问已经显著增加。这种存储云服务的用户通常在存储云服务提供商所披露的应用编程接口(API)的帮助下对它们拥有的云存储空间执行这些操作。尽管向用户披露API已经非常有用,但是将API用于对云存储服务执行操作已经在数据去重复领域对服务提供商提出了附加问题。因此,存在存储云服务提供商使用去重复技术来减少对存储云服务空间的消耗的需要。各种实施例提供了用于计算环境中的增加的联机去重复效率的方法。一种方法包括通过计算环境中的处理器设备计算在n次迭代中用于从被请求用于联机去重复的对象提取的累积数据块的散列值。该方法还包括,对于n次迭代中的每一次,将第n个散列索引表中的用于累积数据块的计算出的散列值与存储装置中的现有对象的对应散列值相匹配。第n个散列索引表针对累积数据块中的每一个被构建。一旦在匹配期间检测到用于累积数据块之一的计算出的散列值的失配就退出第n个散列索引表。失配被确定为唯一对象并被存储。在创建对象存储库中的对象时以状态“成功”来响应客户端。作为离线后处理的一部分,用于整个对象的散列值被计算。利用用于对象的计算出的散列值和用于唯一对象的计算出的散列值来更新主散列索引表。另外,在离线处理中,利用在新唯一对象的累积数据块的第n次迭代时的散列值来更新第n个索引表。各种实施例提供了用于计算环境中的增加的联机去重复效率的系统。一种系统包括在计算存储环境中可操作的处理器设备。在一个实施例中,该处理器被配置为在n次迭代中计算用于从被请求用于联机去重复的对象提取的累积数据块的散列值。该处理器还被配置为对于n次迭代中的每一次,将第n个散列索引表中的用于累积数据块的散列值与存储装置中的现有对象的对应散列值相匹配。第n个散列索引表针对累积数据块中的每一个被构建。一旦在匹配期间检测到用于累积数据块之一的计算出的散列值的失配就退出第n个散列索引表。失配被确定为唯一对象并被存储。用于整个对象的散列值被计算。利用用于对象的计算出的散列值和用于唯一对象的散列值来更新主散列索引表。另外,在离线处理中,利用在新唯一对象的累积数据块的第n次迭代时的散列值来更新第n个索引表。还提供了包括用于计算环境中的增加的联机去重复效率的计算机程序产品的物理计算机存储介质(例如,具有一条或多条电线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者闪速存储器)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光学存储设备、磁性存储设备或者前述者的任意合适组合)。一种物理计算机存储介质包括通过计算环境中的处理器设备计算在n次迭代中用于从被请求用于联机去重复的对象提取的累积数据块的散列值的计算机代码。该物理计算机存储介质还包括,用于对于n次迭代中的每一次,将第n个散列索引表中的用于累积数据块的计算出的散列值与存储装置中的现有对象的对应散列值相匹配的计算机代码。第n个散列索引表针对累积数据块中的每一个被构建。一旦在匹配期间检测到用于累积数据块之一的计算出的散列值的失配就退出第n个散列索引表。失配被确定为唯一对象并被存储。用于整个对象的散列值被计算。利用用于对象的计算出的散列值和用于唯一对象的计算出的散列值来更新主散列索引表。另外,在离线处理中,利用在新唯一对象的累积数据块的第n次迭代时的散列值来更新第n个索引表。附图说明为了将容易地理解本专利技术的优点,将参考在附图中图示的具体实施例来呈现在上面简要描述的本专利技术的更特别描述。应理解,这些绘图仅描绘本专利技术的典型实施例并且因而不被认为限制其范围,将通过使用附图利用附加的具体说明和细节来描述和说明本专利技术,在附图中。图1是图示了本专利技术的各方面可被实现在其中的具有示例性存储设备的计算机存储环境的框图;图2是图示了本专利技术的各方面可被实现在其中的计算机系统中的示例性数据存储系统的硬件结构的框图;图3是图示了具有累积块的用于增加的联机去重复的示例性方法的流程图;图4是图示了用于增加的联机去重复效率的示例性附加方法的流程图;图5是例示出用于增加的联机去重复效率的示例性另外方法的流程图。具体实施方式如先前提到的,随着存储云服务的显现,针对存储云服务提供商的一组新问题存在于数据去重复领域中,特别是在存储云服务提供商希望使用像去重复一样的技术来减少其存储空间的消耗时。存储云服务提供商可能选择使用后处理去重复和/或联机去重复。利用后处理去重复,新数据首先被存储在存储设备上并且随后在稍后时间的处理将分析数据以寻找重复。益处是在存储数据之前消除等待散列计算并完成散列表索引中的查找操作,从而保证存储性能不被降低。联机去重复是其中在数据实时进入目标设备时在该目标设备上创建去重复散列计算的处理。如果设备发现其已经存储在存储系统上的块则其不存储该新块,而只是引用现有块。联机去重复较之后处理去重复的益处在于联机去重复在数据不重复时需要更少存储。在另一方面,因为散列计算和散列表索引中的查找操作经历显著时间延迟从而导致数据摄入显著地更慢,因此在设备的备份吞吐量被降低时效率被降低。在当前技术水平下,联机去重复技术可适用于对象存储库。在确定对象是否有资格用于去重复以及对象的后续存储之前,在运行时计算整个对象的散列。一般而言,这倾向于施加性能惩罚,特别是对于集成有去重复技术的对象存储库(被使得能够存储对象的NAS盒)。例如,散列是计算代价高的操作并且是高度存储器密集型是已知的事实。如果特定工作负载包括具有极大足迹的文件/对象(例如,以吉字节(GB)计的文件),那么通过使用如本领域当前可用的联机去重复技术,整个对象的散列施加巨大的性能惩罚。在用于对对象的联机去重复的当前系统中,计算通过超文本传输协议(HTTP)接收到的文件的指纹(例如,散列值)的技术是将用于整个对象的计算出的指纹与存储系统上的现有文件的可用指纹集合相比较。然而,缓冲完整文件(其可以大至几吉字节)、计算散列值并且随后将散列查找表用于比较是存储器密集型处理。大体上,散列计算是密集型操作并且所花费的时间对于大对象是极大的(例如,对于尺寸大于10GB的对象是多于10秒)。散列计算延迟取决于所使用的散列函数而变化。这种延迟对于通过HTTP的通信是完全不可接受的。这些延迟导致影响性能的瓶颈,并且在极端情况下可能导致web服务上的拒绝服务(DoS)情况。因此,存在对于在应用层次提供快速联机去重复本文档来自技高网...
增加的联机去重复效率

【技术保护点】
一种由计算环境中的处理器设备执行的用于增加的联机去重复效率的方法,所述方法包括:在n次迭代中计算用于从被请求用于联机去重复的对象提取的用于累积数据块的散列值;对于所述n次迭代中的每一次,在第n个散列索引表中将用于所述累积数据块的计算出的所述散列值与存储装置中的现有对象的对应散列值相匹配,其中所述第n个散列索引表针对所述累积数据块中的每一个被构建;一旦在所述匹配期间检测到用于所述累积数据块之一的计算出的所述散列值的失配就退出所述第n个散列索引表,其中所述失配被确定为唯一对象并被存储;以及计算用于所述对象的散列值,其中主散列索引表利用用于所述对象的计算出的所述散列值和用于所述唯一对象的计算出的所述散列值被更新。

【技术特征摘要】
【国外来华专利技术】2012.04.05 US 13/440,6061.一种由计算环境中的处理器设备执行的用于增加的联机去重复效率的方法,所述方法包括:在n次迭代中计算用于从被请求用于联机去重复的对象提取的用于累积数据块的散列值;对于所述n次迭代中的每一次,在第n个散列索引表中将用于所述累积数据块的计算出的所述散列值与存储装置中的现有对象中与所述累积数据块位置大小对应的散列值相匹配,其中所述第n个散列索引表针对该n次迭代的所述累积数据块中的每一个被构建;一旦在所述匹配期间检测到用于所述累积数据块之一的计算出的所述散列值的匹配,如果已到达所述用于联机去重复的对象的全尺寸,退出迭代,否则从所述用于联机去重复的对象请求继续收集数据,并与本次迭代的累积数据块结合形成下次迭代的累积数据块,进行下次迭代;一旦在所述匹配期间检测到用于所述累积数据块之一的计算出的所述散列值的失配就退出所述第n个散列索引表,其中所述失配被确定为唯一对象并被存储;以及计算用于所述用于联机去重复的对象的散列值,其中主散列索引表利用用于所述用于联机去重复的对象的计算出的所述散列值和用于所述唯一对象的计算出的所述散列值被更新。2.根据权利要求1所述的方法,还包括针对所述n次迭代中的每一次递增所述累积数据块的尺寸以用于达到所述对象的全尺寸。3.根据权利要求2所述的方法,其中所述递增所述累积数据块的所述尺寸包括对数地递增所述累积数据块的所述尺寸。4.根据权利要求1所述的方法,还包括根据历史数据的式样确定基于去重复比率递增累积数据块的尺寸的机制,其中所述n次迭代随着所述去重复比率增加而减少并且所述n次迭代随着所述去重复比率减少而增加。5.根据权利要求1所述的方法,还包括,一完成所述对象中的所述累积数据块的所述提取并且执行所述匹配而未在所述第n个散列索引表中检测到失配,就在所述主散列索引表中针对所述对象的计算出的所述散列值执行所述匹配。6.根据权利要求5所述的方法,还包括,一检测到所述主散列索引表中的失配,就存储所述对象并且更新所述主散列索引表。7.根据权利要求6所述的方法,还包括,在所述匹配期间在所述主散列索引表和所述第n个散列索引表中的一个中一检测到失配,就终止所述联机去重复并且向客户端发送成功响应。8.根据权利要求1所述的方法,还包括在离线模式中执行所述计算用于所述对象的散列值。9.根据权利要求1所述的方法,还包括,结合所述匹配,如果发现用于所述累积数据块的计算出的所述散列值与所述存储装置中的所述现有对象的所述对应散列值的匹配,则继续从所述对象提取数据以构建所述累积数据块中的第n个累积数据块。10.一种用于计算环境中的增加的联机去重复...

【专利技术属性】
技术研发人员:D·M·鲍德温N·P·博萨勒J·T·奥尔森S·R·帕蒂尔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

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

1