当前位置: 首页 > 专利查询>英特尔公司专利>正文

带有自适应纠删码生成的存储系统技术方案

技术编号:12910029 阅读:44 留言:0更新日期:2016-02-24 15:49
本发明专利技术公开了与生成用于要在存储系统中存储的数据的纠删码相关联的设备、方法和存储介质。在实施例中,方法可包括由存储系统至少部分基于存储系统的硬件配置,启动纠删码生成模块的多个实例。另外,方法可还包括由存储系统至少部分基于存储系统的当前系统负载,设置纠删码生成模块的多个实例的操作参数。此外,方法可包括由存储系统操作纠删码生成模块的多个实例以根据设置的操作参数,生成用于要在存储系统中存储的数据的纠删码。可描述其它实施例并要求保护。

【技术实现步骤摘要】
【国外来华专利技术】
本公开内容涉及数据存储领域,并且具体而言,涉及与用于横向扩展存储系统的纠删码的自适应生成相关联的设备、方法和存储介质。
技术介绍
本文中提供的背景描述是为了概括介绍公开内容的上下文。除非本文中另有指示,否则,此部分中描述的材料不是本申请的权利要求的现有技术,并且未由于包含在本部分中而被承认是现有技术。随着在集成电路、计算、连网和其它有关技术方面的发展,构建有可扩展数量的计算机存储节点的存储系统(也称为横向扩展存储系统)已变得越来越普遍。为实现数据可靠性,如从数据错误中恢复,经常采用将A个符号变换成#符号的纠删码以允许从个符号的子集恢复々个符号,λ大于k。随着普遍性增大,有效生成纠删码的能力已变成极大关注的主题。【附图说明】结合附图,通过下面的详细描述,将容易理解实施例。为有助于此描述,类似的标号指示类型的结构元素。在附图的图形中,实施例以示例方式而不是限制方式示出。图1示出根据各种实施例的与本公开内容的教导结合的存储系统的组件视图。图2示出根据各种实施例的与本公开内容的教导结合的用于存储数据的方法。图3-4示出根据各种实施例的用于为要存储的数据生成纠删码的方法。图5示出根据各种实施例的适合用于实践公开内容的示例计算系统。图6示出根据各种实施例的带有配置成允许设备实践本公开内容的指令的示例存储介质。【具体实施方式】本文公开了与生成用于要在存储系统中存储的数据的纠删码(erasure code)相关联的设备、方法和存储介质。在实施例中,方法可包括由存储系统至少部分基于存储系统的硬件配置,启动纠删码生成模块的多个实例。另外,方法可还包括由存储系统至少部分基于存储系统的当前系统负载,设置纠删码生成模块的多个实例的操作参数。此外,方法可包括由存储系统操作纠删码生成模块的多个实例以根据设置的操作参数,生成用于要在存储系统中存储的数据的纠删码。在实施例中,配置成实践上述方法及其变型的存储系统可包括纠删码生成模块和分派引擎。在实施例中,设备可还包括系统监视器和/或执行监视器。在实施例中,纠删码生成模块的实例可协作以将第一数据块复制到存储系统的第一、第二和第三计算机存储节点,将第二数据块复制到存储系统的第一、第四和第五计算机存储节点,以及将第三数据块复制到存储系统的第一、第三和第四计算机存储节点。纠删码生成模块的实例随后可协作以在第一计算机存储节点上生成第一、第二和第三数据块的第一和第二奇偶性。下面将参照形成本文一部分的附图,进一步更详细描述这些和其它方面。图形中类似的标号标示所有图形中的类似部分,并且其中作为说明,示出了可实践的实施例。要理解的是,在不脱离本公开内容的范围的情况下可利用其它实施例,并且可进行结构或逻辑更改。因此,下面的详细描述不可从限制的意义理解,并且实施例的范围只由所附权利要求及其等同物定义。各种操作可又以对理解所要求保护的主题最有帮助的方式描述为多个离散动作或操作。然而,描述的顺序不应理解为暗示这些操作一定与顺序相关。具体而言,可不以介绍的顺序执行这些操作。所述操作可以与所述实施例不同的顺序执行。可执行各种另外的操作,和/或可在另外的实施例中忽略所述操作。为便于理解本公开内容,短语“A和/或B”表示⑷、⑶或(A和B)。为便于理解本公开内容,短语“A、B和/或C”表示(A)、⑶、(0、(厶和8)、(厶和0、化和0或(八、8和C)。描述可使用短语“在一实施例中”或“在实施例中”,这均可指一个或多个相同或不同的实施例。此外,如相对于本公开内容的实施例使用的术语“包括”、“具有”及诸如此类同义。在包括权利要求的下文中使用时,术语“模块”可指以下所述、以下所述的一部分或包括以下所述:专用集成电路(“ASIC”)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用或群组)和/或存储器(共享、专用或群组)、组合逻辑电路和/或提供所需功能性的其它适合组件。术语“封闭式题注"要包括传统封闭式题注和/或子标题。现在参照图1,图中示出根据各种实施例的与本公开内容的教导结合的存储系统的组件视图。如图所示,在实施例中,存储系统100可包括连网在一起的多个计算机存储节点102。每个计算机存储节点102可具有一个或更多个微处理器104、一个或更多个高速缓存106、一个或更多个存储器单元108及一个或更多个存储单元110。在实施例中,一个或更多个微处理器104可包括多个处理器核。此外,存储系统100可包括配置成生成用于在计算机存储节点102的存储区中存储的数据的纠删码的纠删码生成模块120。另外,存储系统100可包括选择性由系统负载监视器114、执行监视器116和/或性能数据库118辅助的分派引擎112,以允许纠删码生成模块120的可变数量的实例自适应启动和/或参数化,以生成用于在存储单元110中存储的数据的纠删码。在实施例中,纠删码生成模块120的每个实例可在其自己的线程中执行。在实施例中,纠删码生成模块120的可变数量的实例可至少部分基于基础硬件配置和/或存储系统120的当前系统负载,自适应启动和参数化(例如,不同缓冲区大小、不同纠删码大小)。这些是存储系统100的其它方面,将在下面更详细描述。在实施例中,如更早所述,分派引擎112可配置成至少部分基于为各种硬件配置预确定和存储的优化信息,自适应启动136纠删码生成模块120的多个实例/线程,以生成用于在存储单元110中存储的数据的纠删码。在实施例中,纠删码生成模块120可配置成生成用于要存储的数据的纠删码,将要存储的k个数据符号变换成η个数据符号,以允许从η个数据符号的子集恢复k个数据符号,η大于k。下面将参照图3-4进一步描述纠删码生成模块120的示例实施例。在实施例中,硬件配置信息可包括但不限于处理器类型/速度、存储器容量、输入/输出(I/o)信道能力、数据块大小等等。在实施例中,分派引擎112可配置成查询存储系统100的各种组件以收集存储系统100的硬件配置数据132。在其它实施例中,存储系统100的硬件配置数据132可预收集和存储在诸如存储系统100的只读存储器(ROM)等预留存储区中。在实施例中,用于各种硬件配置的优化信息可由基准引擎140预确定,并且存储在性能数据库118中。基准引擎140可配置成预执行用于各种硬件配置的基准测试。在实施例中,系统负载监视器114可配置成监视存储系统100的当前系统负载,并且为分派引擎112提供当前系统负载数据134,以允许分派引擎112自适应参数化纠删码生成模块120的实例/线程。系统负载数据134的示例可包括但不限于处理器使用、存储器使用、输入/输出(I/O)信道使用、高速缓存未命中、中断量等等。纠删码生成模块120的示例参数可包括但不限于不同缓冲区大小、不同纠删码大小,如不同(k,n-k)组合。在实施例中,执行监视器116可配置成监视纠删码生成模块120的实例/线程的执行,并且为分派引擎112提供关于分派引擎112采用的当前和各种优化启动和参数化的反馈。在实施例中,执行监视器116可在性能数据库118中记录其观察138,并且经性能数据库118提供反馈到分派引擎112。观察的示例可包括但不限于纠删码生成速率、在某个时间期内忙、暂停或闲置线程的数量等等。在实施例中,微处理器104、高速缓存10本文档来自技高网...

【技术保护点】
一种用于存储数据的设备,包括:多个计算机存储节点,其中每个计算机存储节点包括至少一个处理器和至少一个存储单元;纠删码生成模块;以及执行以下操作的分派引擎:启动要由所述计算机存储节点的一个或更多个处理器操作的所述纠删码生成模块的一个或更多个实例,以便生成用于要在所述计算机存储节点的存储单元中存储的数据的纠删码,其中启动的纠删码生成模块的实例的所述数量至少部分基于所述计算机存储节点的硬件配置;以及设置所述纠删码生成模块的所述多个实例的操作参数,其中至少部分基于所述计算机存储节点的当前系统负载设置所述操作参数。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:J金Z金NS乔Z狄
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1