使用数据相似度来选择分段进行垃圾收集制造技术

技术编号:38507153 阅读:12 留言:0更新日期:2023-08-19 16:53
一种存储系统在存储式存储器中利用数据压缩来执行垃圾收集。所述系统从数据分段获得哈希结果。所述系统基于所述哈希结果确定数据分段的内容相似度。所述系统对具有满足相似度阈值的内容相似度的两个或更多个数据分段的实时数据执行数据压缩。所述系统将所述两个或更多个数据分段的经压缩实时数据写入到所述存储式存储器中。存储式存储器中。存储式存储器中。

【技术实现步骤摘要】
【国外来华专利技术】使用数据相似度来选择分段进行垃圾收集
[0001]交叉参考
[0002]本申请案主张2021年1月25日提出申请的美国非临时申请案第17/156,979号的权益,所述申请案的整个内容特此以引用的方式并入。


[0003]本专利技术所涉及的
大体来说是数据存储系统,更具体来说是数据存储系统中的垃圾收集及数据压缩。

技术介绍

[0004]数据存储系统存在许多类型及架构,其具有各种类型的存储式存储器及针对数据可靠性及数据存储效率的各种方案。许多存储系统在存储式存储器中采用垃圾收集,其中在存储式存储器中对实时数据重新定位,使得可擦除并再使用具有死数据的擦除块,也称作回收存储式存储器。许多存储系统采用各种类型的数据压缩,其中辨识并压缩相同及/或相似数据以实现较大数据存储效率。重复数据删除是针对数据存储效率的另一策略。随着存储系统纵向扩展且因对更多数据的存储的不断增加的需要,持续需要数据存储技术、垃圾收集技术及数据压缩技术的改进。在计算及数据存储技术的此环境中产生了本专利技术实施例。
附图说明
[0005]图1A图解说明根据一些实施方案的用于数据存储的第一实例系统。
[0006]图1B图解说明根据一些实施方案的用于数据存储的第二实例系统。
[0007]图1C图解说明根据一些实施方案的用于数据存储的第三实例系统。
[0008]图1D图解说明根据一些实施方案的用于数据存储的第四实例系统。
[0009]图2A是根据一些实施例的具有多个存储节点及耦合到每一存储节点的内部存储装置以提供网络附接存储装置的存储群集的透视图。
[0010]图2B是展示根据一些实施例的耦合多个存储节点的互连交换器的框图。
[0011]图2C是根据一些实施例的多层级框图,其展示存储节点的内容及非易失性固态存储单元中的一者的内容。
[0012]图2D展示根据一些实施例的存储服务器环境,其使用一些前述各图的存储节点及存储单元的实施例。
[0013]图2E是根据一些实施例的叶片硬件框图,其展示控制平面、计算及存储平面,以及与基础物理资源交互的权威。
[0014]图2F描绘根据一些实施例的存储群集的叶片中的弹性软件层。
[0015]图2G描绘根据一些实施例的存储群集的叶片中的权威及存储资源。
[0016]图3A陈述根据本公开的一些实施例的经耦合以用于与云服务提供者进行数据通信的存储系统的图式。
[0017]图3B陈述根据本公开的一些实施例的存储系统的图式。
[0018]图3C陈述根据本公开的一些实施例的基于云的存储系统的实例。
[0019]图3D图解说明可具体经配置以执行本文中所描述的过程中的一或多者的示范性计算装置350。
[0020]图4图解说明本公开的实施例中的适合于具有存储式存储器的各种存储系统的利用数据压缩执行垃圾收集的垃圾收集模块。
[0021]图5图解说明各种实施例中的一种类型的相似度度量,即杰卡德(Jaccard)距离,其应用于存储系统中的数据分段以选择要压缩在一起以实现存储效率的数据分段。
[0022]图6图解说明用于图4中的垃圾收集模块的分段选择器的实施例。
[0023]图7图解说明作为图4的垃圾收集模块的实施例中的适合机制的滑动窗口哈希函数及哈希值的确定性选择。
[0024]图8图解说明图4的垃圾收集模块的实施例中的适合的数据压缩模块及变化形式的实施例。
[0025]图9陈述在存储系统的各种实施例中或由存储系统的各种实施例实践的利用数据压缩的垃圾收集方法的流程图。
具体实施方式
[0026]存储系统(也称为数据存储系统)参考图1A

3D描述为具有用于数据可靠性及数据存储效率的各种机构,并且参考图4

9具有用于垃圾收集、数据压缩及提高的数据存储效率的各种机构。仅接在下面介绍数据缩减技术中使用数据相似度来选择分段进行垃圾收集的存储系统的概念及实施例,后续接着对各种存储系统进行描述。
[0027]在垃圾收集期间且为了提高数据存储效率,本文中所描述的数据存储系统实施例及其变化形式将具有相似内容的块分组在一起并将那些块压缩在一起以实现改进的数据缩减。为此,存储系统识别哪些分段中具有相似的块,因此存储系统可同时对那些分段运行垃圾收集(GC)以允许此种分组。一旦存储系统完成此种分组,存储系统便可压缩并写出含有相似块的新分段,从而获得更好的数据压缩。
[0028]存储系统可使用记录分段中数据组块的哈希的分段指纹来描述每一分段。这些组块可能很小(大约几十个字节);由于其数量相对较多,存储系统仅存储哈希的子集,这可通过取k个最小哈希(即,在分段的原始完整哈希集中具有较低哈希值的计数k个哈希)、k个最大哈希(即,在分段的原始完整哈希集中具有较高哈希值的计数k个哈希)或存储系统确定性地选择哈希(也称为哈希值或哈希结果)使得独立的选择过程选取相同的哈希的一些其他技术来完成。这些哈希可与分段一起存储,或可在存储系统每次要进行GC时计算。存储系统然后计算分段之间的杰卡德距离,或使用一些其它相似度度量,并将其用作度量来选择要一起进行垃圾收集的分段。在一些实施例中,存储系统可进一步计算经历GC的分段中的个别块的相似度量,并使用所述信息将活动块路由到具有其它相似数据的分段,使得具有根据相似度度量确定的相似度量的数据的数据分段被进行垃圾收集并压缩在一起。
[0029]在一些实施例中,此信息可联合其它信息(例如,年龄、脏百分比或其它数据特性)一起用于选择分段进行GC。存储系统的实施例还可使用此信息来将系统中的数据路由到将“专门”存储具有特定数据型式(例如数据类型、特定应用或客户端的数据等)的块的节点。
[0030]相似度哈希是用于确定两个或更多个块具有相似或相同内容的技术。文献中提供了几种计算哈希的方案,并且通常将其结果表示为一个块与另一块之间的距离程度。
[0031]快速确定两个块的相似度的最常见技术之一是产生各种大小的相对较小的哈希的较大集合,并选择那些哈希的子集来表示整个块。举例来说,可对重叠的k字节序列(通常k介于4与8之间)执行“滚动”哈希,从而每4KiB块产生将近4096个哈希。应了解,在一些实施例中,实际上对值进行哈希(例如,使用cityhash或相似方法)以确保值的良好分布是重要的。然后,算法选择n个最小的哈希作为块的指纹。如果对两个不同的块进行此操作,那么两个块中相似的k字节序列的数目与指纹中匹配的哈希的数目约相同。
[0032]鉴于两个或更多个块以某种方式相似,将其分组在一起以运行压缩算法通常具有数据缩减的益处,因为其可能具有共同子串或者共同字节值的相似分布。在一些实例中,如果两个原始数据组块使用相同算法被压缩并产生相似的压缩字典(在此情形中,经压缩数据的至少字典部分可包含共同子串),那么即使是不同的预压缩数据(例如存储系统接收的各种已压缩数据块,其本身是从相似但不相同的数据中压缩的)可进一步压缩。
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种存储系统,其包括:存储式存储器;及处理装置,其用以执行所述存储式存储器中的垃圾收集,包括:从存储于所述存储式存储器中的多个数据分段获得哈希值;基于哈希结果确定所述多个数据分段的内容相似度;对所述多个数据分段中具有满足相似度阈值的所述内容相似度的两个或更多个数据分段的实时数据执行数据压缩;及将所述两个或更多个数据分段的经压缩实时数据写入到所述存储式存储器中。2.根据权利要求1所述的存储系统,其中所述确定所述多个数据分段的所述内容相似度包括基于所述哈希结果根据跨越所述多个数据分段应用的相似度度量确定所述数据分段的数据的部分的相似度。3.根据权利要求1所述的存储系统,其中所述确定所述多个数据分段的所述内容相似度包括基于所述哈希结果根据跨越所述多个数据分段应用的不相似度度量确定所述数据分段的数据的部分的不相似度。4.根据权利要求1所述的存储系统,其中所述确定所述多个数据分段的所述内容相似度包括基于所述哈希结果确定数据分段之间的杰卡德距离。5.根据权利要求1所述的存储系统,其中所述对所述多个数据分段中的所述两个或更多个数据分段的所述实时数据执行所述数据压缩包括执行辨识所述两个或更多个数据分段中的数据的相同部分的数据压缩。6.根据权利要求1所述的存储系统,其中所述对所述多个数据分段中的所述两个或更多个数据分段的所述实时数据执行所述数据压缩包括执行记录所述两个或更多个数据分段中的数据的相似部分当中的差异的数据压缩。7.根据权利要求1所述的存储系统,其中所述获得所述哈希值包括:使用滑动窗口哈希函数计算多个数据组块中的每一者的哈希,且针对所述多个数据分段中的每一者,确定性地选择所述哈希的子集。8.根据权利要求1所述的存储系统,其中所述获得所述哈希值包括:针对所述多个数据分段中的每一者,存储所述多个数据分段中的每一者的哈希集与对应数据分段。9.根据权利要求1所述的存储系统,其中所述处理装置进一步用以基于年龄、脏百分比或其它数据特性选择所述存储式存储器中的其它数据分段以供进行所述垃圾收集。10.一种存储系统中的数据压缩方法,其包括:从存储于所述存储系统的存储式存储器中的多个数据分段获得哈希值;基于所述哈希值确定跨越所述多个数据分段的内容相似度;在所述存储式存储器中的垃圾收集期间对所述多个数据分段中的两个或更多个数据分段的实时数据执行数据压缩,所述两个或更多个数据分段具有满足相似度阈值的跨越所述两个或更多个数据分段的所述内容相似度;及将所述两个或更多个数据分段的经压缩实时数据写入到所述存储式存储器中。11.根据权利要求10所述的方法,其中所述...

【专利技术属性】
技术研发人员:伊桑
申请(专利权)人:净睿存储股份有限公司
类型:发明
国别省市:

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

1