一种提高raid-6可扩展性的数据迁移方法

文档序号:8905182阅读:365来源:国知局
一种提高raid-6可扩展性的数据迁移方法
【技术领域】
[0001] 本发明属于计算机存储领域,具体设及一种提高RAID-6可扩展性的数据迁移方 法。
【背景技术】
[000引随着多盘故障的可能性的增长,RAID-6也受到了越来越多的关注。目前存在着大 量的基于多种可擦除编码技术的RAID-6的实现,MDS(MaximumDistanceS巧ar油le,最大 距离可分码)编码便是其中的一种传统编码。MDS编码通过提供一定量的冗余来实现应对 磁盘故障的保护。根据数据与检验的分布,MDS编码可W分为水平编码与垂直编码。
[000引然而,目前磁盘阵列中的已有的解决方案并不适用于RAID-6的扩展(向已有的磁 盘阵列中添加新的磁盘)。在寻找有效的解决方案,W有效地对基于MDS编码的RAID-6系统 进行扩展的问题上,研究人员面临着极大的挑战。首先,目前已有的针对RAID-0或RAID-5 的通用性的方案并不适用于多种多样的RAID-6的编码。例如,RDP与P-code中数据与检 验有着不同的布局,如图1与图2所示。因此扩展方案需要根据RDP或P-code的特性分别 进行设计。其次,传统的扩展方案是基于round-robin顺序的,但其较高的校验迁移、修改 与计算的代价使其不适用于RAID-6。原因之一在于RAID-6编码的校验布局十分复杂。另 一个原因在于扩展之后条带会发生戏剧性的变化。例如,任意数据元素的移动将会在与其 相关的校验元素上导致可达8次的额外的I/O操作。

【发明内容】

[0004] 本发明的目的在于提供一种提高RAID-6可扩展性的数据迁移方法,能够加速 RAID-6的扩展过程,减少迁移时间。
[0005] 为解决上述问题,本发明提供一种提高RAID-6可扩展性的数据迁移方法,包括:
[0006] 为扩展前编码矩阵的单个数据块与校验块定义不同的优先级;
[0007] 比较扩展前后的编码矩阵的陈列布局并寻找一个代价最小的方式改变扩展前的 使用中的条带的陈列布局,确定移动扩展前的使用中的条带中具有最高的移动优先级的数 据块与校验块;
[0008] 根据编码矩阵的条带中数据块的分布,确定选择一组条带中的一小部分条带W进 行后续平衡工作负载;
[0009] 根据确定的移动扩展前的使用中的条带中具有最高的移动优先级的数据块与校 验块和确定选择的一组条带中的一小部分条带为每个条带进行数据迁移。
[0010] 进一步的,在上述方法中,当所述编码矩阵为水平编码矩阵,比较扩展前后的编码 矩阵的陈列布局并寻找一个代价最小的方式改变扩展前的使用中的条带的陈列布局,确定 移动扩展前的使用中的条带中具有最高的移动优先级的数据块与校验块包括:
[0011] 标记扩展后的校验盘,其中,校验盘保留,扩展的磁盘均作为数据盘使用;
[0012] 标记扩展后的磁盘,其中,将m块磁盘添加到磁盘阵列中,新添加的磁盘被插在所 有数据磁盘的中间,m为正整数;
[0013] 进行行标记,其中,如果一个扩展前的使用中的条带包含了n,个数据行,则会在扩 展后的使用中的条带标记上相同的行标记,n,为正整数;
[0014] 进行特殊校验处理,W确定移动扩展前的使用中的条带中具有最高的移动优先级 的数据块与校验块。
[0015] 进一步的,在上述方法中,进行特殊校验处理,W确定移动扩展前的使用中的条带 中具有最高的移动优先级的数据块与校验块包括:
[0016] 如果水平校验块参加构成了斜向或反斜向校验块,那么水平链中数据块或校验块 有着比斜向或反斜向校验链中更高的优先级;
[0017] 相反地,如果斜向或反斜向校验块参与构成了水平校验块,那么斜向或反斜向校 验块中的数据块与校验块移动有着比水平链中更高的优先级。
[0018] 进一步的,在上述方法中,当所述编码矩阵为垂直编码矩阵,比较扩展前后的编码 矩阵的陈列布局并寻找一个代价最小的方式改变扩展前的使用中的条带的陈列布局,确定 移动扩展前的使用中的条带中具有最高的移动优先级的数据块与校验块包括:
[0019] 进行原始盘标记,其中,原始磁盘标识(ID)被保留,而扩展磁盘将用作数据盘;
[0020] 进行扩展盘标记,将m块盘加入一个阵列中,新加入的m块盘被标记为最后的m 列。
[0021] 进一步的,在上述方法中,所述条带中数据块的分布根据数据块分布的统计信息 得到。
[0022] 进一步的,在上述方法中,确定选择一组条带中的一小部分条带W进行后续平衡 工作负载中,水平编码矩阵的一小部分条带因为较高的迁移代价而进行平衡工作负载牺 牲。
[0023] 进一步的,在上述方法中,确定选择一组条带中的一小部分条带W进行后续平衡 工作负载中,垂直编码矩阵的一小部分条带为不作迁移的保留的条带。
[0024] 与现有技术相比,本发明根据对单个/多个条带的全局,实现数据迁移最小化和 校验的修改与计算,该方法通过减少修改校验的次数,异或计算的次数,总共的I/O操作的 次数W及迁移时间来加速RAID-6的扩展过程;该方法使I/O在磁盘阵列中的磁盘上均匀分 布,减少了迁移时间。
【附图说明】
[00巧]图1显示了畑P编码磁盘数从6到8的扩展示意图,其中,图1 (a)显示P= 5时RDP编码的行校验示意图,图1 (a)显示P= 5时RDP编码的斜校验示意图,图1 (C)显示P =7时RDP编码的行校验示意图,图1 (d)显示P= 7时RDP编码的斜校验示意图;
[0026] 图2说明了P-Code编码磁盘数从6扩展到7的示意图,其中,图2 (a)显示P= 7,p-1块磁盘时P-Code的垂直校验示意图,图2化)显示P=7,P块磁盘时P-Code的垂直 校验示意图;
[0027] 图3为总结不同优先级的数据的校验修改开销的示意图;
[002引图4是BlockO的数据移动情况示意图,其中,图4(a)为行校验示意图,图4(b)为 斜松验不意图;
[0029] 图5为总结扩展盘标记开销情况的示意图;
[0030] 图6是本发明一实施例(RDP编码)的基于优先级的迁移过程示意图,其中,图 6(a)为逻辑地址示意图,图6(b)为行校验示意图,图6(c)为斜校验示意图;
[0031] 图7是本发明一实施例(P-Code编码)的基于优先级的迁移过程示意图,其中,图 7(a)为逻辑地址示意图,图7(b)为垂直校验示意图;
[0032] 图8是本发明一实施例(RDP编码)的条带集中的数据分布示意图;
[0033] 图9是本发明一实施例(P-Code编码)的条带集中的数据分布示意图;
[0034] 图10是本发明一实施例伽P编码)的在负载平衡步骤中基于优先级的迁移过程 示意图,其中,图10(a)为逻辑地址示意图,图10化)为行校验示意图,图10(C)为斜校验示 意图;
[00巧]图11是本发明一实施例(P-Code编码)的在负载平衡步骤中基于优先级的迁移 过程示意图,其中,图11(a)为逻辑地址示意图,图11(b)为垂直校验示意图;
【具体实施方式】
[0036] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实 施方式对本发明作进一步详细的说明。
[0037] 本发明提供一种提高RAID-6可扩展性的数据迁移方法,包括:
[0038] 步骤S1,优先级定义;为扩展前编码矩阵的单个数据块与校验块定义不同的优先 级;根据图3中总结的校验修改次数,我们定义了该方法中数据块与
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1