一种高端磁盘阵列多控制器间的并行io调度方法

文档序号:6635461阅读:440来源:国知局
一种高端磁盘阵列多控制器间的并行io调度方法
【专利摘要】本发明公开一种高端磁盘阵列多控制器间的并行IO调度方法,属于数据存储【技术领域】,获取高端磁盘阵列中每个控制器上的IO请求负载值;根据获取的IO请求负载值,计算每个控制器的平均IO负载值;将IO请求负载值大于平均值的控制器上IO请求重新调度到IO请求负载值小于平均值的控制器上;解析每个IO请求的读写数据块起始位置和偏移量,根据每个控制器IO请求负载的情况,将IO请求拆分形成拆分数据链表,并发的派送到多个控制器上执行,待各个控制器上的IO请求都并行完成后,返回应答信息;本发明可以提高高端磁盘阵列多控制器间的存储性能,提高存储资源利用率,使产品在市场上的具有竞争力。
【专利说明】一种高端磁盘阵列多控制器间的并行1调度方法

【技术领域】
[0001]本发明公开一种并行1调度方法,属于数据存储【技术领域】,具体地说是一种高端磁盘阵列多控制器间的并行1调度方法。

【背景技术】
[0002]高端磁盘阵列提供存储数据的高可用服务,常采用多个控制器冗余设计。在多控制器的存储阵列体系中,采用基于存储端和主机端协同的多控多路径冗余和负载均衡来保证控制器的存储能力得到有效发挥。
[0003]主机端的路径管理通过映射机制来完成,多路径冗余和负载均衡由管理员根据特定时间段内的整体负载状态集中分配和管理,并在运行过程中根据各控制器的负载程度的不同而动态调整每个控制器的多路径负载分担系数。在多控制器的磁盘阵列运行中,由于各种因素的变动会导致各控制器之间不均衡,或想更有效的控制磁盘阵列的存储功能,都需要协调主机端对负载的调度,本发明就提供一种高端磁盘阵列多控制器间的并行1调度方法,使存储端多控制器能有效的协调主机端对负载的调度,更好的均衡各控制器性能,发挥存储阵列的存储能力,提升系统性能。


【发明内容】

[0004]本发明针对现有技术存在的不足和问题,提供一种高端磁盘阵列多控制器间的并行1调度方法,通过该方法可以指导多控制器协调主机端的多路径管理,提高数据随机访问的吞吐量,加速大批量数据传输的效率。
[0005]本发明提出的具体方案是:
一种高端磁盘阵列多控制器间的并行1调度方法,具体步骤为:
获取高端磁盘阵列中每个控制器上的1请求负载值;
根据获取的1请求负载值,计算每个控制器的平均1负载值;
将1请求负载值大于平均值的控制器上1请求重新调度到1请求负载值小于平均值的控制器上;
解析每个1请求的读写数据块起始位置和偏移量,根据每个控制器1请求负载的情况,将1请求拆分形成拆分数据链表,并发的派送到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
[0006]所述的根据1请求负载值,计算每个控制器的平均1负载值,再进一步计算控制器1请求负载的均方差,当控制器1请求负载值的均方差大于预设阀值时,将1请求负载值大于平均值的控制器的1请求调度到1请求负载值小于平均值的控制器中。
[0007]以256K的数据块大小为单元,按照求余的方式拆分1数据,形成拆分数据链表,并派发到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
[0008]一种高端磁盘阵列多控制器间的并行1调度系统,包括1收集单元,1计算单元,1调度单元,1解析单元,1拆分单元,1派发单元,1完成收集单元; 1收集单元,用于获取每个控制上1请求负载值;
1计算单元,用于计算阵列中每个控制器的1平均值;
1调度单元,用于将控制器1负载大于1平均值的1请求重新调度到1负载小于1平均值的控制器;
1解析单元,用于解析出1请求的地址和偏移;
1拆分单元,用于将1请求,拆分成并列执行的更小的1请求;
1派发单元,用于并发执行各个1请求;
1完成收集单元,用于判断所有的并行处理请求是否完成,并返回应答信息。
[0009]本发明的有益之处是:本发明提供一种高端磁盘阵列多控制器间的并行1调度方法,使存储端多控制器能有效的协调主机端对负载的调度,能够将1请求调度给多个控制器同时并发执行,该方法能从过载的控制器上重新调度1请求到负载较轻的控制器上,从而改善了系统中各个控制器的负载状态,完成了多控节点上的1负载调度和均衡,充分调度了设备的潜力,提升了系统性能。

【具体实施方式】
[0010]本发明的具体实施为:
实施例1
先调制:一种高端磁盘阵列多控制器间的并行1调度系统,包括1收集单元,1计算单元,1调度单元,1解析单元,1拆分单元,1派发单元,1完成收集单元;
1收集单元,用于获取每个控制上1请求负载值;
1计算单元,用于计算阵列中每个控制器的1平均值;
1调度单元,用于将控制器1负载大于1平均值的1请求重新调度到1负载小于1平均值的控制器;
1解析单元,用于解析出1请求的地址和偏移;
1拆分单元,用于将1请求,拆分成并列执行的更小的1请求;
1派发单元,用于并发执行各个1请求;
1完成收集单元,用于判断所有的并行处理请求是否完成,并返回应答信息。
[0011]根据上述系统,使用如下方法:
一种高端磁盘阵列多控制器间的并行1调度方法,具体步骤为:
获取高端磁盘阵列中每个控制器上的1请求负载值;
根据获取的1请求负载值,计算每个控制器的平均1负载值;
将1请求负载值大于平均值的控制器上1请求重新调度到1请求负载值小于平均值的控制器上;
解析每个1请求的读写数据块起始位置和偏移量,根据每个控制器1请求负载的情况,以256K的数据块大小为单元,按照求余的方式拆分1数据,将1请求拆分形成拆分数据链表,并发的派送到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
[0012]实施例2
先调制:一种高端磁盘阵列多控制器间的并行1调度系统,包括1收集单元,1计算单元,1调度单元,1解析单元,1拆分单元,1派发单元,1完成收集单元;
1收集单元,用于获取每个控制上1请求负载值;
1计算单元,用于计算阵列中每个控制器的1平均值;
1调度单元,用于将控制器1负载大于1平均值的1请求重新调度到1负载小于1平均值的控制器;
1解析单元,用于解析出1请求的地址和偏移;
1拆分单元,用于将1请求,拆分成并列执行的更小的1请求;
1派发单元,用于并发执行各个1请求;
1完成收集单元,用于判断所有的并行处理请求是否完成,并返回应答信息。
[0013]根据上述系统,使用如下方法:
一种高端磁盘阵列多控制器间的并行1调度方法,具体步骤为:
获取高端磁盘阵列中每个控制器上的1请求负载值;
根据获取的1请求负载值,计算每个控制器的平均1负载值,再进一步计算控制器1请求负载的均方差,当控制器1请求负载值的均方差大于预设阀值时,将1请求负载值大于平均值的控制器的1请求调度到1请求负载值小于平均值的控制器中;
解析每个1请求的读写数据块起始位置和偏移量,根据每个控制器1请求负载的情况,以256K的数据块大小为单元,按照求余的方式拆分1数据,将1请求拆分形成拆分数据链表,并发的派送到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
【权利要求】
1.一种高端磁盘阵列多控制器间的并行1调度方法,其特征是具体步骤为: 获取高端磁盘阵列中每个控制器上的1请求负载值; 根据获取的1请求负载值,计算每个控制器的平均1负载值; 将1请求负载值大于平均值的控制器上1请求重新调度到1请求负载值小于平均值的控制器上; 解析每个1请求的读写数据块起始位置和偏移量,根据每个控制器1请求负载的情况,将1请求拆分形成拆分数据链表,并发的派送到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
2.根据权利要求1所述的一种高端磁盘阵列多控制器间的并行1调度方法,其特征是所述的根据1请求负载值,计算每个控制器的平均1负载值,再进一步计算控制器1请求负载的均方差,当控制器1请求负载值的均方差大于预设阀值时,将1请求负载值大于平均值的控制器的1请求调度到1请求负载值小于平均值的控制器中。
3.根据权利要求1或2所述的一种高端磁盘阵列多控制器间的并行1调度方法,其特征是以256K的数据块大小为单元,按照求余的方式拆分1数据,形成拆分数据链表,并派发到多个控制器上执行,待各个控制器上的1请求都并行完成后,返回应答信息。
4.一种高端磁盘阵列多控制器间的并行1调度系统,其特征是包括1收集单元,1计算单元,1调度单元,1解析单元,1拆分单元,1派发单元,1完成收集单元; 1收集单元,用于获取每个控制上1请求负载值; 1计算单元,用于计算阵列中每个控制器的1平均值; 1调度单元,用于将控制器1负载大于1平均值的1请求重新调度到1负载小于1平均值的控制器; 1解析单元,用于解析出1请求的地址和偏移; 1拆分单元,用于将1请求,拆分成并列执行的更小的1请求; 1派发单元,用于并发执行各个1请求; 1完成收集单元,用于判断所有的并行处理请求是否完成,并返回应答信息。
【文档编号】G06F9/38GK104461733SQ201410678538
【公开日】2015年3月25日 申请日期:2014年11月24日 优先权日:2014年11月24日
【发明者】周耀辉, 赵静 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1