用于小对象的容错企业对象存储系统技术方案

技术编号:20083808 阅读:30 留言:0更新日期:2019-01-15 03:38
本文公开的各种实施方式提供了能够存储小对象的容错企业对象存储系统。在各种实施方式中,容错企业对象存储系统将小对象写入分布在多个存储实体上的聚合对象。在一些实施方式中,所述小对象的数量级至少小于聚合对象的数量级,并且所述小对象在与能够在存储实体中的每个存储实体内寻址的块单元的相同的数量级内。在一些实施方式中,响应于将小对象写入聚合对象,所述存储系统基于该小对象来更新与聚合对象相关联的奇偶校验数据。在各种实施方式中,所述存储系统更新经处理的数据结束偏移指示符,其指示用于聚合对象的奇偶校验数据包括直至该小对象并包括该小对象的有效数据。

Fault-tolerant Enterprise Object Storage System for Small Objects

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是根据一些实施方式的在检测到存储实体处的数据丢失时恢复小对象的方法的流程图表示。图4B是根据一些实施方式的判断与聚合对象相关联的奇偶校验数据是否包括用于小对象的有效数据的方法的流程图表示。图5A是根据一些实施方式的从企业存储系统中删除小对象的方法的流程图表示。图5B是根据一些实施方式的压缩聚合对象的方法的流程图表示。图6是示出根据一些实施方式的小对象正被写入企业存储系统的示图。图7是示出根据一些实施方式的小对象正被写入企业存储系统的另一示图。图8是根据一些实施方式的用有助于小对象的写入、恢复和/或删除的各种模块实现的服务器系统的框图。根据惯例,附图中所示的各种特征可以不按比例绘制。因此,为了清楚起见,各种特征的大小可以任意扩大或缩小。此外,一些附图可以不描绘给定系统、方法或设备的所有组件。最后,在整个说明书和附图中可以使用相同的附图标记来表示相同的特征。具体实施方式为了提供对附图中所示的示例性实施方式的透彻理解,描述了许多细节。然而,附图仅仅示出了本公开的一些示例性方面,并且因此不被认为是限制性的。本领域普通技术人员将理解的是,其他有效方面和/或变型不包括本文描述的所有具体细节。此外,公知的系统、方法、组件、设备和电路尚未被详尽地描述,以免模糊本文描述的示例性实施方式的更相关方面。在独立权利要求中列出了本专利技术的各个方面,并且在从属权利要求中列出了优选特征。一个方面的特征可以单独地或与其他方面组合地应用于每个方面。一些先前可用的容错企业对象存储系统(下文中被称为存储系统)被配置为存储大对象。大对象通常指的是至少比存储系统中的最小可寻址的存储器块(例如,数据的分配单元)大一个数量级的对象。然而,在一些先前可用的存储系统中,由于所利用的误差控制编码的方法,用于小对象的奇偶校验数据通常占用磁盘上与小对象的大小相同的空间量,并且削弱了擦除编码的益处。小对象指的是通常小于存储系统中的最小可寻址的存储器块或与存储系统中的最小可寻址的存储器块相同大小的对象。因此,一些先前可用的存储系统在存储小对象方面效率低下。此外,一些先前可用的存储系统在接收到小对象时并不为这些小对象合成奇偶校验数据。因此,一些先前可用的存储系统在数据丢失的情况下不能恢复小对象,这是因为通常不存在用于小对象的奇偶校验数据。相比之下,本文公开的各种实施方式实现将小对象写入容错企业对象存储系统,该容错企业对象存储系统以相对有效的方式存储小对象,并且在数据丢失的情况下恢复小对象。例如,在各种实施方式中,写入小对象的方法由被配置为合成奇偶校验数据以保护所存储的数据免于丢失的容错企业对象存储系统执行。下文中,容错企业对象存储系统被称为存储系统。在各种实施方式中,存储系统包括多个存储实体,这些存储实体被配置为以块为基础存储数据。在各种实施方式中,存储系统包括一个或多个处理器。在各种实施方式中,该方法包括将第一对象(例如,小对象)写入分布在多个存储实体上的聚合对象。在一些实施方式中,第一对象的第一大小至少是小于聚合对象的第二大小的数量级,并且在与每个存储实体内可寻址的块单元相同的数量级内。在各种实施方式中,该方法包括响应于将第一对象写入聚合对象来基于第一对象更新与聚合对象相关联的奇偶校验数据。奇偶校验信息存储在一个或多个奇偶校验存储实体中。在各种实施方式中,该方法还包括更新经处理的数据结束偏移指示符,该指示符指示用于聚合对象的奇偶校验数据包括直至并包含第一对象的有效数据。图1是根据一些实施方式的存储系统环境10的框图。虽然示出了相关的特征,但是本领域普通技术人员将从本公开中理解,为了简洁起见,未示出各种其他特征,并且从而以免模糊本文公开的示例性实施方式的更相关的方面。为此,作为非限制性示例,存储系统环境10包括一个或多个客户端设备20、网络30(例如,诸如互联网之类的公共/外部网络)、和容错企业对象存储系统100(下文中被称为存储系统100)。在操作中,存储系统100用于存储各种对象。在一些实施方式中,对象指的是任何数据资产。在一些实施方式中,对象包括能够经由客户端设备20向用户呈现的数据资产。例如,对象包括表示电影的视频文件、表示歌曲的音频文件、文本文件等。更一般地,在各种实施方式中,对象包括任何文件类型(例如,.mov、.wma、.mp4、.avi、.mp3、.jpg、.txt、.doc、.docx、.xls、.ppt等)的文件。在一些实施方式中,对象包括表示在客户端设备20处可执行的计算机可读指令集的数据资产。例如,在一些实施方式中,对象包括下载并安装在客户端设备20处的原生应用程序、浏览器插件等。在各种实施方式中,存储系统100包括一个或多个数据存储实体110、一个或多个奇偶校验存储实体120、以及摄取实体130。数据存储实体110存储与对象相关联的数据。在下文中,与对象相关联的数据被称为对象数据。在一些实施方式中,数据存储实体110包括一个或多个计算机可读存储介质。例如,数据存储实体110包括固态存储器设备、硬盘存储器设备、光盘驱动器、只读存储器和/或基于纳米管的存储设备。在一些实施方式中,数据存储实体110包括执行计算机可读指令的数据服务器。在各种实施方式中,数据存储实体110包括用于存储对象数据的各种数据块(未示出)。如本文所述的,在各种实施方式中,数据块指的是数据存储实体110中的最小可寻址的存储器块(例如,数据的最小分配单元)。在一些实施方式中,数据块是大小等同的(例如,均为2MB)。在各种实施方式中,奇偶校验存储实体120存储与对象相关联的奇偶校验数据。在一些实施方式中,存储系本文档来自技高网...

【技术保护点】
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

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

1