The various embodiments disclosed herein provide a fault-tolerant enterprise object storage system capable of storing small objects. In various embodiments, fault-tolerant enterprise object storage systems write small objects to aggregated objects distributed on multiple storage entities. In some embodiments, the order of magnitude of the small object is at least less than that of the aggregated object, and the small object is in the same order of magnitude as the block unit that can address within each storage entity in the storage entity. In some embodiments, in response to writing small objects to aggregated objects, the storage system updates parity data associated with aggregated objects based on the small objects. In various embodiments, the storage system updates the processed data end offset indicator indicating that parity data for aggregating objects includes up to the small object and includes valid data for the small object.
【技术实现步骤摘要】
【国外来华专利技术】用于小对象的容错企业对象存储系统
本公开总体涉及企业存储系统,并且更具体地涉及用于小对象的容错企业对象存储系统。
技术介绍
企业存储系统(下文中被称为“存储系统”)通常包括各种存储实体,这些存储实体用于存储与对象相关联的数据。存储实体通常包括各种可寻址的数据块。数据块通常指存储实体中存储与对象相关联的数据的最小可寻址的存储器块。典型对象的平均大小有时比数据块的大小大一个数量级。因此,大多数先前可用的存储系统使用跨多个存储实体的若干数据块来存储对象上。这种存储系统在存储小于数据块的大小或具有与数据块的大小相同数量级的对象时通常效率低下。一些存储系统还提供容错。当需要恢复对象时,这种存储系统通常能够恢复对象。例如,先前可用的存储系统通常响应于在存储与对象相关联的数据的存储实体处检测到数据丢失而恢复对象。在前的存储系统使用用于对象的奇偶校验数据来恢复对象。奇偶校验数据通常存储在跨多个存储实体的奇偶校验块中。奇偶校验块通常指的是存储实体中存储奇偶校验数据的最小可寻址的存储器块。一些先前可用的存储系统在存储空间利用率方面效率低下,因为它们使用了比提供容错所需的奇偶校验块更多的奇偶校验块。附图说明为了使本领域普通技术人员能够理解本公开,可以通过参考一些说明性实施方式的各个方面来享有更详细的描述,其中的一些在附图中示出。图1是根据一些实施方式的企业存储系统环境的示意图。图2是根据一些实施方式的企业存储系统的框图。图3A是根据一些实施方式的将小对象写入企业存储系统中的方法的流程图表示。图3B是根据一些实施方式的将小对象写入企业存储系统中的另一种方法的流程图表示。图4A是根 ...
【技术保护点】
1.一种方法,包括:在被配置为合成奇偶校验数据以保护存储的数据免于丢失的容错企业对象存储系统中,所述容错企业对象存储系统包括:多个存储实体,每个存储实体被配置为以块为基础存储数据;以及一个或多个处理器,其用于:将第一对象写入分布在所述多个存储实体上的聚合对象中,其中,所述第一对象的第一大小的数量级至少小于所述聚合对象的第二大小的数量级并且在与能够在所述存储实体中的每个存储实体内寻址的块单元的相同的数量级内;响应于将所述第一对象写入所述聚合对象中,基于所述第一对象来更新与所述聚合对象相关联的奇偶校验数据,其中,所述奇偶校验数据存储在一个或多个奇偶校验存储实体处;以及更新经处理的数据结束偏移指示符,其指示用于所述聚合对象的所述奇偶校验数据包括直至所述第一对象并包括所述第一对象的有效数据。
【技术特征摘要】
【国外来华专利技术】2016.04.29 US 62/329,319;2016.07.12 US 15/207,8951.一种方法,包括:在被配置为合成奇偶校验数据以保护存储的数据免于丢失的容错企业对象存储系统中,所述容错企业对象存储系统包括:多个存储实体,每个存储实体被配置为以块为基础存储数据;以及一个或多个处理器,其用于:将第一对象写入分布在所述多个存储实体上的聚合对象中,其中,所述第一对象的第一大小的数量级至少小于所述聚合对象的第二大小的数量级并且在与能够在所述存储实体中的每个存储实体内寻址的块单元的相同的数量级内;响应于将所述第一对象写入所述聚合对象中,基于所述第一对象来更新与所述聚合对象相关联的奇偶校验数据,其中,所述奇偶校验数据存储在一个或多个奇偶校验存储实体处;以及更新经处理的数据结束偏移指示符,其指示用于所述聚合对象的所述奇偶校验数据包括直至所述第一对象并包括所述第一对象的有效数据。2.根据权利要求1所述的方法,其中,将所述第一对象写入所述聚合对象中包括:接收将所述第一对象存储在所述容错企业对象存储系统中的请求;以及将所述第一对象写入与所述聚合对象相关联的数据块中。3.根据权利要求1或2所述的方法,其中,更新与所述聚合对象相关联的所述奇偶校验数据包括:合成用于所述第一对象的奇偶校验数据;以及将用于所述第一对象的所述奇偶校验数据写入与存储所述第一对象的数据块相对应的奇偶校验块中。4.根据权利要求1至3中任一项所述的方法,其中,更新所述经处理的数据结束偏移指示符包括:确定所述第一对象的所述第一大小;以及将所述经处理的数据结束偏移指示符的值递增所述第一大小。5.根据权利要求1至4中任一项所述的方法,还包括:发送指示所述第一对象已被写入所述容错企业对象存储系统中的消息。6.根据权利要求1至5中任一项所述的方法,还包括:检测在所述存储实体中的存储所述第一对象的一个存储实体处的数据丢失;基于所述经处理的数据结束偏移指示符来判断与所述聚合对象相关联的所述奇偶校验数据是否包括用于所述第一对象的有效数据;以及在确定所述奇偶校验数据包括用于所述第一对象的有效数据时,基于所述奇偶校验数据来恢复所述第一对象。7.根据权利要求6所述的方法,其中,判断所述奇偶校验数据是否包括用于所述第一对象的有效数据包括:标识已被写入所述聚合对象中的一组对象,其中,所述组包括所述第一对象;为所述组中的每个对象标识大小;通过将所述组中所有所述对象的所述大小相加来计算和;以及当所述经处理的数据结束偏移指示符的值等于所述和时,确定所述奇偶校验数据包括用于所述第一对象的有效数据。8.根据权利要求1至7中任一项所述的方法,其中,标识所述一组对象包括:标识在将所述第一对象写入所述聚合对象之前被写入所述聚合对象的所述对象。9.根据权利要求1至8中任一项所述的方法,还包括:在数据库中插入所述第一对象的名称,所述数据库存储已被写入所述聚合对象中的对象的名称。10.根据权利要求9所述的方法,还包括:确定要从所述容错企业对象存储系统中删除所述第一对象;从所述数据库中移除所述第一对象的所述名称;将存储所述第一对象的数据块标记为无效。11.根据权利要求10所述的方法,还包括:判断是否压缩所述聚合对象;以及基于确定要压缩所述聚合对象而压缩所述聚合对象。12.根据权利要求11所述的方法,其中,判断是否压缩所述聚合对象包括:确定所述聚合对象中的已被标记为无效的数据块的百分比;判断所述百分比是否高于阈值;以及当所述百分比高于所述阈值时,确定要压缩所述聚合对象。13.根据权利要求11或12所述的方法,其中,压缩所述聚合对象包括:实例化第二聚合对象;以及将所述聚合对象的有效数据块迁移到所述第二聚合对象,其中,有效数据块是未被标记为无效的数据块。14.一种容错企业对象存储系统,...
【专利技术属性】
技术研发人员:范达娜·希亚姆·拉格塔,德纳·马洛·亨里克森,梅尔·J·奥伊勒,凯文·韦恩·金登,
申请(专利权)人:思科技术公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。