当前位置: 首页 > 专利查询>清华大学专利>正文

资源全局共享的基于RAID机制的数据存储系统技术方案

技术编号:24019747 阅读:143 留言:0更新日期:2020-05-02 04:50
一种资源全局共享的基于RAID机制的数据存储系统,包括第一数目个磁盘,以RAID机制来在各个磁盘上存储数据,不同磁盘上的分块组成条带,条带的分块中的至少一块存储奇偶校验信息,其中条带的宽度小于第一数目,以及数据存储系统的数据布局满足如下特征:条带内部任意的两个物理块分布在不同磁盘上;各个磁盘上分布的数据块相同,分布的校验块也相同;与任意一块磁盘数据相关的条带的其它数据均衡分布在剩余所有磁盘上。可以通过正交拉丁方来具体实现正常数据布局和降级数据布局。该系统能够解除通常数据存储系统中磁盘的数目与条带宽度相等的限制,打破各个磁盘组之间的资源隔离,并在磁盘发生故障时,实现重建读取负载的完全均衡。

A raid based data storage system with global resource sharing

【技术实现步骤摘要】
【国外来华专利技术】资源全局共享的基于RAID机制的数据存储系统
本专利技术涉及存储阵列技术,特别涉及一种快速恢复的存储阵列数据组织。
技术介绍
经过三十年的发展,独立磁盘冗余阵列(Redundant Array of Inexpensive/Independent Disks,RAID)已经发展成为当今主流的高可靠和高可用的持久化存储技术,并被广泛用于企业服务器、现代数据中心、云平台和超级计算机。存储阵列利用条带化技术将多块磁盘组织在一起,对外提供更大的存储容量和更高的处理能力。目前,大多数组织使用基于奇偶校验的RAID级别(RAID5和RAID6),借助条带内部的冗余数据,实现数据的容错保护。在传统的存储阵列数据组织方式中,磁盘被划分为不同RAID级别和不同磁盘数量的磁盘组,磁盘组彼此之间形成存储孤岛。当磁盘失效时,故障磁盘组中的所有幸存磁盘参与数据重建,需要完整读取全盘的数据,并将重建数据写入单块热备盘当中。这种孤立模式造成其余空闲磁盘组无法分担数据重建的负载。近些年随着磁盘容量的不断增长,大容量的磁盘阵列面临着数十小时乃至数天的重建时间。漫长的修复过程中,上层业务面临着较高的数据丢失风险和长时间的I/O性能下降。可见,当前存储阵列的数据组织方式存在数据重建缓慢的问题。
技术实现思路
针对以上问题,提出了本专利技术。根据本专利技术的一个方面,提供了一种资源全局共享的基于RAID机制的数据存储系统(下文中有时称之为RAID+),包括第一数目个磁盘,以RAID机制来在各个磁盘上存储数据,不同磁盘上的分块组成条带,条带的分块中的至少一块存储奇偶校验信息,其中条带的宽度小于第一数目,以及数据存储系统的数据布局满足如下特征:条带内部任意的两个物理块分布在不同磁盘上;各个磁盘上分布的数据块相同,分布的校验块也相同;与任意一块磁盘数据相关的条带的其它数据均衡分布在剩余所有磁盘上。根据本专利技术一个实施例,所述第一数目为质数幂,用数字n表示第一数目,n大于等于4,用数字k表示条带的宽度,其中对于n,能够得到(n-1)个正交拉丁方,所述数据存储系统的数据布局按下述方式生成:得到(n-1)个正交拉丁方中的k个正交拉丁方,将k个正交拉丁方中元素值完全相同的行忽略,然后按照行优先的方式,遍历正交拉定方中剩余的所有位置,将处于就行列而言相同位置的元素值组合成映射组,每个映射组对应于一个条带,映射组中的各个元素值指示对应条带上的各个块所放置的磁盘的编号。根据本专利技术一个实施例,按照下述定理生成k个正交拉丁方,忽略每个正交拉丁方的第一行,第1个正交拉丁方用L0表示,设第m个正交拉丁方中第i行,第j列的元素值为Lm-1[i j],则映射组(L0[i j],L1[i j],…Lm-1[i j],…,Lk-1[i j])指示第(i-1)*n+j个条带上的各个块所放置的磁盘的编号,其中第1个块放置于第L0[i j]个磁盘,第m个块放置在第Lm-1[i j]个磁盘,第k个块放置在第Lk-1[i j]个磁盘,其中每个磁盘的数据是按块为单位放置的。定理:n为质数幂时,对于完备正交拉丁方组中的第i个拉丁方fi(i∈[1,n-1]),其在第x行,第y列的元素值fi[x,y]=i·x+y。这里的操作符“·”和“+”分别代表有限域中的乘法和加法。根据本专利技术一个实施例,其中当一块磁盘出故障时,针对与该出故障磁盘相关联的每个故障条带,从和所述故障条带相关联的其它磁盘上并发读取用于计算重构的数据,将重构的数据存储在其它所有磁盘保留的空闲空间中,其中重构的数据所被写入的磁盘的编号是如下确定的:选择(n-1)个正交拉丁方中除了所述k个正交拉丁方之外的一个正交拉丁方,称之为第(k+1)个正交拉丁方,对于出故障磁盘,对于每个相关联的出故障条带,确认与该相关联的出故障条带对应的、在正交拉丁方上的位置,获得第(k+1)个正交拉丁方上的该位置处的元素值,该元素值指示重构的数据块被分配到的磁盘的编号,重构的数据块被存储在该编号指示的磁盘的空闲空间中。根据本专利技术一个实施例,当又一块磁盘出现故障时,选择(n-1)个正交拉丁方中除了所述(k+1)个正交拉丁方之外的一个正交拉丁方,称之为第(k+2)个正交拉丁方,对于出故障磁盘,对于每个相关联的出故障条带,确认与该相关联的出故障条带对应的、在正交拉丁方上的位置,获得第(k+2)个正交拉丁方上的该位置处的元素值,该元素值指示重构的数据块被分配到的磁盘的编号,重构的数据块被存储在该编号指示的磁盘的空闲空间中。根据本专利技术一个实施例,当p块磁盘同时出现故障时,确定与该P块磁盘中的任一块相关联的条带,对于与该P块磁盘中的任一块相关联的任一条带,确定所述条带的数据块中的位于该P块磁盘中数据块的数目;以及为位于该P块磁盘中数据块的数目较多的条带,分配较高的恢复优先级;优先恢复该恢复优先级较高的条带。根据本专利技术一个实施例,所述数据存储系统存储具有不同存储模板的数据,其中针对来到的要以第一模板方式存储的第一数据,将所述第一数目个磁盘中的第一相应空间分给所述第一数据;对于第一数目个磁盘中的第一相应空间,针对第一模板的数据条带与第一相应空间之间的映射关系按照上述基于正交拉丁方的方式来建立;其中针对来到的要以第二模板方式存储的第二数据,将所述第一数目个磁盘中的第二相应空间分给所述第二数据;对于第一数目个磁盘中的第二相应空间,针对第二模板的数据条带与第二相应空间之间的映射关系按照上述基于正交拉丁方的方式来建立。根据本专利技术一个实施例,不同模板包括RAID级别、条带宽度、物理块大小、条带间编址策略中的至少一项不同。根据本专利技术一个实施例,称相应空间为逻辑卷,每个逻辑卷使用同一类数据模板作为存储空间分配的粒度,通过索引技术跟踪逻辑卷中每个数据模板的物理位置,维护元数据,来实现用户卷与物理空间之间的映射,运行中将元数据缓存与内存中。根据本专利技术一个实施例,当用户请求到来时,通过定位数据模板、查询索引表、定位条带、定位条带内部位置、计算全局位置来定位具体的物理访问位置。根据本专利技术一个实施例,对于待存储的数据,当希望以顺序读友好方式来存储时,根据上述基于正交拉丁方的方式确定了条带和磁盘之间的映射关系,其中一个条带中的校验块是该条带的最后一个数据块,对各个条带进行排序,使得一个条带中的最后一个块所位于的磁盘编号是下一条带中的第一个数据块所位于的磁盘的编号。根据本专利技术一个实施例,对于待存储的数据,当希望以顺序写友好方式来存储时,其中一个条带中的校验块是该条带的最后一个数据块,对各个条带进行排序,使得一个条带中的最后一个块所位于的磁盘编号比下一条带中的第一个数据块所位于的磁盘的编号小一个数目,该数目为所述条带对应的映射组在所用拉丁方中的位置的行号。本专利技术上述实施例提供了一种正常数据布局,利用所述正常数据布局实现短数据条带在更大磁盘池中的均衡分布;本专利技术上述实施例提供了设计了一种降级数据布局,利用所述降级数据布局来指导磁本文档来自技高网...

【技术保护点】
一种资源全局共享的基于RAID机制的数据存储系统,包括第一数目个磁盘,以RAID机制来在各个磁盘上存储数据,不同磁盘上的分块组成条带,条带的分块中的至少一块存储奇偶校验信息,其中条带的宽度小于第一数目,以及数据存储系统的数据布局满足如下特征:/n条带内部任意的两个物理块分布在不同磁盘上;/n各个磁盘上分布的数据块相同,分布的校验块也相同;/n与任意一块磁盘数据相关的条带的其它数据均衡分布在剩余所有磁盘上。/n

【技术特征摘要】
【国外来华专利技术】一种资源全局共享的基于RAID机制的数据存储系统,包括第一数目个磁盘,以RAID机制来在各个磁盘上存储数据,不同磁盘上的分块组成条带,条带的分块中的至少一块存储奇偶校验信息,其中条带的宽度小于第一数目,以及数据存储系统的数据布局满足如下特征:
条带内部任意的两个物理块分布在不同磁盘上;
各个磁盘上分布的数据块相同,分布的校验块也相同;
与任意一块磁盘数据相关的条带的其它数据均衡分布在剩余所有磁盘上。


根据权利要求1的数据存储系统,所述第一数目为质数幂,用数字n表示第一数目,n大于等于4,用数字k表示条带的宽度,其中对于n,能够得到(n-1)个正交拉丁方,所述数据存储系统的数据布局按下述方式生成:
得到(n-1)个正交拉丁方中的k个正交拉丁方,将k个正交拉丁方中元素值完全相同的行忽略,然后按照行优先的方式,遍历正交拉定方中剩余的所有位置,将处于就行列而言相同位置的元素值组合成映射组,每个映射组对应于一个条带,映射组中的各个元素值指示对应条带上的各个块所放置的磁盘的编号。


根据权利要求2的数据存储系统,
按照下述定理生成k个正交拉丁方,忽略每个正交拉丁方的第一行,第1个正交拉丁方用L0表示,设第m个正交拉丁方中第i行,第j列的元素值为Lm-1[ij],则映射组(L0[ij],L1[ij],…Lm-1[ij],…,Lk-1[ij])指示第(i-1)*n+j个条带上的各个块所放置的磁盘的编号,其中第1个块放置于第L0[ij]个磁盘,第m个块放置在第Lm-1[ij]个磁盘,第k个块放置在第Lk-1[ij]个磁盘,
其中每个磁盘的数据是按块为单位放置的。
定理:n为质数幂时,对于完备正交拉丁方组中的第i个拉丁方fi(i∈[1,n-1]),其在第x行,第y列的元素值fi[x,y]=i·x+y。这里的操作符“·”和“+”分别代表有限域中的乘法和加法。


根据权利要求2的数据存储系统,其中当一块磁盘出故障时,针对与该出故障磁盘相关联的每个故障条带,从和所述故障条带相关联的其它

磁盘上并发读取用于计算重构的数据,将重构的数据存储在其它所有磁盘保留的空闲空间中,
其中重构的数据所被写入的磁盘的编号是如下确定的:
选择(n-1)个正交拉丁方中除了所述k个正交拉丁方之外的一个正交拉丁方,称之为第(k+1)个正交拉丁方,
对于出故障磁盘,对于每个相关联的出故障条带,确认与该相关联的出故障条带对应的、在正交拉丁方上的位置,获得第(k+1)个正交拉丁方上的该位置处的元素值,该元素值指示重构的数据块被分配到的磁盘的编号,
重构的数据块被存储在该编号指示的磁盘的空闲空间中。


根据权利要求4的数据存储系统,当又一块磁盘出现故障时,选择(n-1)个正交拉丁方中除了所述(k+1)个正交拉丁方之外的...

【专利技术属性】
技术研发人员:张广艳郑纬民
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

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

1