【技术实现步骤摘要】
为基于散列的消重进行子块分割的方法和系统
本专利技术总体上涉及计算机,更具体而言,涉及计算环境中用于基于散列的消重(deduplication)的改进的子块分割。
技术介绍
在当今社会,计算机系统是普遍存在的。计算机系统可以在工作场所、在家庭或者在学校找到。计算机系统可以包括数据存储系统,或者说盘存储系统,来处理和存储数据。每天要必须处理大量的数据,而且当前的趋势表明,在可以预见的将来,这些量将继续增加。缓解这个问题的一种有效途径是通过使用消重。通过定位重复的数据并且只存储其第一次出现,作为消重系统的基础的思想是利用大部分可用数据被一次又一次没有任何变化地拷贝和转发的事实。后续的拷贝被指向存储的出现的指针所代替,如果数据事实上是重复的,那么这显著降低了存储需求。
技术实现思路
数据消重是指冗余数据的减少和/或消除。在数据消重中,可以是文件、数据流或者某种其它形式的数据的数据对象被分成一个或多个被称为子块的部分。在数据消重处理中,数据的复制拷贝被减少或消除,分别留下最少量的冗余拷贝或者数据的单个拷贝。利用消重处理提供了各种好处,诸如所需存储容量的减少和增加的网络带宽。由于这些及其它好处,近年来,消重已经作为计算存储系统中的一个高度重要的
而显现出来。已经推荐了几种消重方法,这些方法中的许多都使用散列技术。例如,在基于散列的消重操作中,数据消重涉及把数据分成可变或固定尺寸的子块、计算每个子块的散列值并且通过其散列值来匹配完全相同的子块。基于散列的消重系统应当能够提供平均子块尺寸,同时维持子块尺寸的一致性,而不是经历显著变化的子块尺寸。当前,基于散列的消重系统 ...
【技术保护点】
一种用于在计算环境中由处理器设备对基于散列的消重进行子块分割的方法,该方法包括:定义子块的最小尺寸和最大尺寸;对于子块的每个边界开始位置,通过使用多个搜索标准来测试在搜索期间生成的多个散列值,在子块的最小尺寸之后开始对于子块的边界位置的搜索,其中,所述多个散列值至少包括各个散列值和从基础散列值的集合中导出的导出散列值;如果所述多个散列值中的一个满足所述多个搜索标准中的一个,则把所述多个散列值中的所述一个的位置声明为所述子块的边界位置;以及如果在满足多个搜索标准中的一个之前到达子块的最大尺寸,则把基于所述多个搜索标准中的另外一个搜索标准选择的所述多个散列值中的另外一个散列值的位置声明为所述子块的边界位置。
【技术特征摘要】
2012.07.03 US 13/541,0091.一种用于在计算环境中由处理器设备对基于散列的消重进行子块分割的方法,该方法包括:定义子块的最小尺寸和最大尺寸;对于子块的每个边界开始位置,通过使用多个搜索标准来测试在搜索期间生成的多个散列值,在子块的最小尺寸之后开始对于子块的边界位置的搜索,其中,所述多个散列值至少包括各个散列值和从基础散列值的集合中导出的导出散列值;如果所述多个搜索标准中的一个未被所述多个散列值中的一个满足,把所述多个散列值中的一个的当前位置递增至少一个字节,以及,如果在满足所述多个搜索标准中的一个之前没有到达子块的最大尺寸,则计算所述多个散列值中的下一个,以利用所述多个搜索标准中的所述一个进行测试;如果所述多个散列值中的一个满足所述多个搜索标准中的一个,则把所述多个散列值中的所述一个的位置声明为所述子块的边界位置;以及如果在满足多个搜索标准中的一个之前到达子块的最大尺寸,则把基于所述多个搜索标准中的另外一个搜索标准选择的所述多个散列值中的另外一个散列值的位置声明为所述子块的边界位置。2.如权利要求1所述的方法,进一步在所述多个散列值中包括最小散列值、最大散列值、最后计算的一个散列值和最后计算的k个散列值。3.如权利要求1所述的方法,进一步包括:把边界开始位置识别为下列之一:块的开始、最后选择的边界位置、以及跟在最后识别的边界结束位置之后的一个或多个字节。4.如权利要求1所述的方法,其中,所述多个搜索标准中的一个包括第一种类型搜索标准和第二种类型搜索标准中的一个,以及所述多个搜索标准中的另外一个搜索标准是第三种类型搜索标准。5.如权利要求4所述的方法,进一步包括:如果最后计算的一个散列值的预定义位置的n位等于第m个预定义的不同位模式中的一个,则满足第一种类型搜索标准。6.如权利要求4所述的方法,进一步包括通过下列至少之一满足第二种类型搜索标准:如果通过对最后计算的k个散列值应用XOR操作而计算的值的预定位置的n位等于第m个预定义的不同位模式中的一个,以及应用组合最后计算的k个散列值的值并且产生其统计分布与被组合的多个散列值的统计分布相似的备选值的多个操作中的一个。7.如权利要求4所述的方法,进一步包括通过选择子块的边界位置来满足第三种类型搜索标准,其中选择子块的边界位置是通过选择通过以下至少一个在搜索期间计算的多个散列值中的一个:选择最大散列值,选择最小散列值,以及选择第n大或小散列值。8.如权利要求7所述的方法,进一步包括提供被考虑为选择方法的输入的多个散列值的预定义位置的范围,其中,所述预定义位置的范围是用于预定义位置的整个可用范围的子集。9.如权利要求1所述的方法,进一步包括使用滚动散列函数来计算在每个字节位置的各个散列值。10.一种用于在计算环境中为基于散列的消重进行子块分割的系统,包括:...
【专利技术属性】
技术研发人员:L·阿罗诺维奇,M·海尔什,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。