【技术实现步骤摘要】
去重系统中小对象表示的存储
技术介绍
[0001]客户端计算设备(诸如服务器等)可以将数据存储在主存储阵列中,并且可以针对存储在主存储阵列中的数据执行工作负载。在一些示例中,出于诸如冗余和数据保护的目的,存储在主存储阵列中的数据可以被备份在与客户端计算设备和主存储阵列两者分离的计算系统中。在一些示例中,这个计算系统可以以去重的形式存储数据,以便更紧凑地存储数据。
附图说明
[0002]以下详细描述参考了附图,其中:
[0003]图1是存储对象的小对象表示的示例去重系统的框图;
[0004]图2是包括可执行来存储对象的小对象表示的指令的示例计算设备的框图;
[0005]图3是包括存储对象的小对象表示的示例方法的流程图;
[0006]图4是示例去重系统的框图,其中小对象表示包括清单;以及
[0007]图5是对清单进行去重的示例去重系统的框图。
具体实施方式
[0008]客户端计算设备(诸如服务器、存储阵列等)可以通过将数据存储在能够对数据执行去重以便以比未去重的形式更紧凑的去重形式存储数据的计算系统中来备份数据。能够对数据执行这种去重的这种计算系统在本文中可以被称为去重系统,并且可以由备份设施来实现。在本文描述的示例中,去重系统可以对对象执行去重过程,该对象是本文描述的示例中的数据的集。去重系统可以接收对象作为数据流以便进行去重式存储。
[0009]提供给去重系统用于进行去重式存储的各个对象可以由向去重系统提供对象以便进行存储的客户端系统来定义,因此所提供的对象可以在 ...
【技术保护点】
【技术特征摘要】
1.一种方法,包括:在去重系统中存储大于阈值大小的第一对象的大对象表示,其中所述大对象表示包括以数据结构的层级组织的元数据,所述层级包括:顶层数据结构;一个或多个底层数据结构,每个底层数据结构包括组块元数据,所述组块元数据包括所述第一对象的相应组块的存储位置;以及一个或多个中间层数据结构,所述一个或多个中间层数据结构与所述层级中的所述顶层数据结构和底层数据结构分离并在所述顶层数据结构和底层数据结构之间,所述一个或多个中间层数据结构包括通过对所述一个或多个底层数据结构的所述组块元数据的引用来表示所述第一对象的组块的重构顺序的清单;确定第二对象小于所述阈值大小;以及基于所述确定,在所述去重系统中存储所述第二对象的小对象表示,所述小对象表示包括:从所述顶层数据结构到所述小对象表示的底层数据结构中的小对象元数据的直接引用,所述直接引用省略了与所述小对象表示的所述顶层数据结构和底层数据结构分离的并且在所述顶层数据结构和底层数据结构之间的任何中间层数据结构,其中所述小对象表示的底层数据结构包括所述第二对象的包含所述第二对象的每个组块的相应存储位置的组块元数据。2.根据权利要求1所述的方法,其中:所述第二对象的内容被包含在单个组块中;所述小对象元数据包括所述第二对象的单个组块的组块元数据;以及所述直接引用包括存储在所述顶层数据结构中的对所述第二对象的单个组块的组块元数据的引用。3.根据权利要求1所述的方法,其中:所述第二对象的内容被包含在多个组块中;所述小对象元数据包括存储在所述小对象表示的底层数据结构中的所述第二对象的清单;以及所述第二对象的清单经由对所述第二对象的相应多个组块的组块元数据的引用,表示用于重构所述第二对象的所述多个组块的顺序。4.根据权利要求3所述的方法,其中:所述去重系统的去重域包括多个底层数据结构,所述底层数据结构包括所述大对象表示的一个或多个底层数据结构;以及将所述第二对象的小对象表示存储在所述去重系统中包括:选择所述多个底层数据结构中的给定底层数据结构作为所述小对象表示的底层数据结构,并基于所述清单与所述给定底层数据结构之间的相关度来存储所述清单。5.根据权利要求4所述的方法,其中对于所述第二对象的每个组块,相应的组块元数据包括表示所述组块的内容的组块签名,所述方法还包括:基于由所述第二对象的清单引用的所述组块元数据的组块签名中的每一个,生成所述第二对象的清单签名;以及
将所述清单签名存储在所述小对象表示的底层数据结构中。6.根据权利要求5所述的方法,还包括:生成所述第三对象的清单,所述清单对于所述第三对象的每个组块包括对包含表示所述组块的内容的组块签名的相应组块元数据的引用;以及基于确定第三对象低于所述阈值大小并且包括要由第二多个组块表示的内容:基于由所述第三对象的清单所引用的所述组块元数据的组块签名中的每一个,生成所述第三对象的清单签名。7.根据权利要求6所述的方法,还包括:将所述第三对象的清单签名与所述第二对象的清单签名进行比较;以及基于确定所述第二和第三对象的清单签名是等效的,在所述去重系统中存储所述第三对象的小对象表示,所述小对象表示包括从所述顶层数据结构到所述底层数据结构中的所述第二对象的清单的直接引用。8.一种包括非暂时性机器可读存储介质的物品,所述存储介质包括能够由至少一个处理资源执行以进行以下操作的指令:基于确定第一对象大于阈值大小,在去重系统中存储所述第一对象的大对象表示,所述大对象表示包括以数据结构的层级组织的元数据,所述层级包括:顶层数据结构;一个或多个底层数据结构,每个底层数据结构包括组块元数据,所述组块元数据包括所述第一对象的各个组块的存储位置;一个或多个中间层数据结构,所述一个或多个中间层数据结构与所述层级中的所述顶层数据结构和底层数据结构分离并在所述顶层数据结构和底层数据结构之间,所述一个或多个中间层数据结构包括通过对所述一个或多个底层数据结构的所述组块元数据的引用来表示所述第一对象的组块的重构顺序的清单;以及其中在数据结构层级中,所述一个或多个中间层数据结构与所述顶层数据结构和底层数据结构分离并且位于所述顶层数据结构和底层数据结构之间;以及基于确定第二对象小于所述阈值大小,在所述去重系统中存储所述第二对象的小对象表示,所述小对象表示包括:从所述顶层数据结构到所述小对象表示的底层数据结构中的小对象元数据的直接引用,所述直接引用省略了与所述小对象表示的所述顶层和底层数据结构分离的并且在所述顶层数据结构和底层数据结构之间的任何中间层数据结构,其中所述小对象表示的底层数据结构包括所述第二对象的每个组块的组块元数据,所述组块元数据包括所述第二对象的每个组块的相应存储位置。9.根据权利要求8所述的物品,所述指令能够执行以:基于确定所述第二对象的内容小到足以在所述去重系统中由单个组块表示:在所述顶层数据结构中存储对所述第二对象的单个组块的组块元数据的引用,其中所述单个组块的组块元数据被存储在所述小对象表示的底层数据结构中;其中所述直接引用包括对所述单个组块的组块元数据的引用。10.根据权利要求9所述的物品,所述指令能够执行以:在所述去重系统中存储所述第二对象的小对象表示之后,确定附加内容要被存储到所
述去重系统中的所述第二对象的去重表示;基于确定具有所述附加内容的所述第二对象的内容太大而不能存储在一个组块中并且小于所述阈值大小:将具有所述附加内容的第二对象的清单存储在所述小对象表示的底层数据结构中,其中所述第二对象的清单经由对组块元数据的引用来表示包含所述第二对象的内容的第一多个...
【专利技术属性】
技术研发人员:D,
申请(专利权)人:慧与发展有限责任合伙企业,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。