System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,尤其涉及一种io请求调度方法及存储装置。
技术介绍
1、随着云计算时代的来临,超融合产品,如超融合系统得到了越来越广泛的应用。然而,随着业务量的不断增大,超融合产品中负责不同业务的虚拟机(vm,virtual machine)之间存在存储资源争抢情况,如当负责不同业务的虚拟机高并发地访问存储资源时,导致超融合产品所在系统的io负载较高,不同虚拟机之间出现存储资源争抢情况,进而导致部分虚拟机io延迟较高,虚拟机内部应用无响应或无法稳定运行等。
2、目前,大部分超融合系统,其内置的默认策略通常不具备io请求精细化分配的能力,当不同虚拟机的io请求出现高并发情况时,由于缺少对不同io请求的针对性管理策略,导致部分io请求的时延较高,对业务的稳定运行造成不必要的影响。
技术实现思路
1、本专利技术提供一种io请求调度方法及存储装置,用以解决现有技术中当不同虚拟机的io请求出现高并发情况时,由于缺少对不同io请求的针对性管理策略,导致部分io请求的时延较高,对业务的稳定运行造成不必要的影响的问题。
2、本专利技术提供一种io请求调度方法,包括:
3、在完成存储资源lun创建、以及io调度队列创建的情况下,接收io管理装置发送的io请求;所述存储资源lun与所述io调度队列一一对应,所述存储资源lun的数量为至少两个,每个所述存储资源lun均关联有对应的优先级标签和io资源权重占比,每个所述io调度队列均关联有相应的所述优先级标签和所述
4、基于所述lun关联信息,确定所述io请求关联的所述存储资源lun;基于所述io请求关联的所述存储资源lun的所述优先级标签,将所述io请求放入对应的所述io调度队列;基于每个所述io调度队列关联的所述io资源权重占比,进行io请求调度。
5、根据本专利技术提供的一种io请求调度方法,还包括:接收所述io管理装置发送的存储资源lun创建请求,所述存储资源lun创建请求携带有每个存储资源lun的优先级标签、以及每个所述存储资源lun的io资源权重占比;
6、基于所述存储资源lun创建请求,进行存储资源lun创建,得到多个所述存储资源lun;
7、基于所述存储资源lun,创建与所述存储资源lun一一对应的io调度队列。
8、根据本专利技术提供的一种io请求调度方法,还包括:在完成所述存储资源lun创建的情况下,将每个所述存储资源lun关联的所述优先级标签和所述io资源权重占比存储于本地内存,并且,将每个所述存储资源lun关联的所述优先级标签和所述io资源权重占比同步存储于预设的集群分布式数据库;
9、在存储装置处于故障恢复状态的情况下,将所述集群分布式数据库中的所述优先级标签和所述io资源权重占比同步至本地内存,所述存储装置指执行所述io请求调度方法的装置,所述故障恢复状态指所述存储装置出现故障后恢复运行的情况。
10、根据本专利技术提供的一种io请求调度方法,基于每个所述io调度队列关联的所述io资源权重占比,进行io请求调度的步骤包括:
11、基于每个所述io调度队列的io请求数量、以及每个所述io调度队列各自关联的所述io资源权重占比,进行io请求调度。
12、根据本专利技术提供的一种io请求调度方法,基于每个所述io调度队列的io请求数量、以及每个所述io调度队列各自关联的所述io资源权重占比,进行io请求调度的步骤包括:
13、基于每个所述io调度队列的所述io请求数量,得到io请求总数,所述io请求总数为全部所述io调度队列中的所述io请求的数量;
14、基于所述io请求总数和每个所述io调度队列关联的所述io资源权重占比,得到每个所述io调度队列的第一目标调度io请求数,所述第一目标调度io请求数为任一所述io调度队列的所述io请求数量与当前所述io调度队列关联的所述io资源权重占比之间的乘积;
15、基于所述第一目标调度io请求数,进行io请求调度。
16、根据本专利技术提供的一种io请求调度方法,基于所述第一目标调度io请求数,进行io请求调度的步骤包括:
17、基于每个所述io调度队列的所述io请求数量和所述第一目标调度io请求数,得到第二目标调度io请求数;基于所述第二目标调度io请求数,进行io请求调度;
18、所述第二目标调度io请求数的获取步骤包括:在所述io调度队列的所述io请求数量小于或等于当前所述io调度队列的所述第一目标调度io请求数的情况下,得到当前所述io调度队列的所述第二目标调度io请求数,所述第二目标调度io请求数的取值为当前所述io调度队列的所述io请求数量。
19、根据本专利技术提供的一种io请求调度方法,所述第二目标调度io请求数的获取步骤还包括:在所述io调度队列的所述io请求数量大于当前所述io调度队列的所述第一目标调度io请求数,且剩余io配额总数大于或等于待配额请求数的情况下,将当前所述io调度队列的所述io请求数量,确定为当前所述io调度队列的所述第二目标调度io请求数的取值,并对所述剩余io配额总数进行更新;
20、所述剩余io配额总数的获取步骤为:在所述第一目标调度io请求数大于对应的所述io请求数量的情况下,将所述第一目标调度io请求数与对应的所述io调度队列中的所述io请求数量之间的差值,确定为剩余io配额;将全部所述剩余io配额之间的和值确定为所述剩余io配额总数;
21、所述待配额请求数的获取步骤包括:在所述io调度队列的所述io请求数量大于对应的所述第一目标调度io请求数的情况下,将所述io请求数量与对应的所述第一目标调度io请求数之间的差值,确定为所述待配额请求数;
22、对所述剩余io配额总数进行更新的步骤包括:将当前的所述剩余io配额总数与所述待配额请求数之间的差值,确定为新的所述剩余io配额总数。
23、根据本专利技术提供的一种io请求调度方法,所述第二目标调度io请求数的获取步骤还包括:
24、在所述io调度队列的所述io请求数量大于对应的所述第一目标调度io请求数,且所述剩余io配额总数小于所述待配额请求数的情况下,将补充调度数确定为当前所述io调度队列的所述第二目标调度io请求数的取值;
25、所述补充调度数的获取步骤包括:在所述io请求数量大于对应的所述第一目标调度io请求数,且所述剩余io配额总数小于待配额请求数的情况下,将所述io请求数量与所述剩余io配额总数之间的和值,确定为所述补充调度数;
26、在将当前所述io调度队列的所述第二目标调度io请求数的取值确定为补充调度数的情况下,将所述剩余io配额总数置为0。
27、根据本专利技术提供的一种io请求调度方法,基于所述第二目标调度io请求数,进行io请求调度的步骤包括:
28、基于全部所本文档来自技高网...
【技术保护点】
1.一种IO请求调度方法,其特征在于,包括:
2.根据权利要求1所述的IO请求调度方法,其特征在于,还包括:接收所述IO管理装置发送的存储资源LUN创建请求,所述存储资源LUN创建请求携带有每个存储资源LUN的优先级标签、以及每个所述存储资源LUN的IO资源权重占比;
3.根据权利要求1所述的IO请求调度方法,其特征在于,还包括:在完成所述存储资源LUN创建的情况下,将每个所述存储资源LUN关联的所述优先级标签和所述IO资源权重占比存储于本地内存,并且,将每个所述存储资源LUN关联的所述优先级标签和所述IO资源权重占比同步存储于预设的集群分布式数据库;
4.根据权利要求1所述的IO请求调度方法,其特征在于,基于每个所述IO调度队列关联的所述IO资源权重占比,进行IO请求调度的步骤包括:
5.根据权利要求4所述的IO请求调度方法,其特征在于,基于每个所述IO调度队列的IO请求数量、以及每个所述IO调度队列各自关联的所述IO资源权重占比,进行IO请求调度的步骤包括:
6.根据权利要求5所述的IO请求调度方法,其特征在于,基于
7.根据权利要求6所述的IO请求调度方法,其特征在于,所述第二目标调度IO请求数的获取步骤还包括:在所述IO调度队列的所述IO请求数量大于当前所述IO调度队列的所述第一目标调度IO请求数,且剩余IO配额总数大于或等于待配额请求数的情况下,将当前所述IO调度队列的所述IO请求数量,确定为当前所述IO调度队列的所述第二目标调度IO请求数的取值,并对所述剩余IO配额总数进行更新;
8.根据权利要求7所述的IO请求调度方法,其特征在于,所述第二目标调度IO请求数的获取步骤还包括:
9.根据权利要求6所述的IO请求调度方法,其特征在于,基于所述第二目标调度IO请求数,进行IO请求调度的步骤包括:
10.一种存储装置,其特征在于,包括:
11.一种IO请求调度方法,其特征在于,包括:
12.根据权利要求11所述的IO请求调度方法,其特征在于,还包括:
13.根据权利要求11所述的IO请求调度方法,其特征在于,所述存储装置创建的每个所述存储资源LUN关联的所述优先级标签和所述IO资源权重占比均存储于本地,并且,所述存储装置创建的每个所述存储资源LUN关联的所述优先级标签和所述IO资源权重占比同步存储于预设的集群分布式数据库。
14.根据权利要求11所述的IO请求调度方法,其特征在于,所述IO请求具体用于指示所述存储装置基于每个所述IO调度队列的IO请求数量、以及每个所述IO调度队列各自关联的所述IO资源权重占比,进行IO请求调度。
15.根据权利要求14所述的IO请求调度方法,其特征在于,所述IO请求还具体用于指示所述存储装置基于每个所述IO调度队列的所述IO请求数量,得到IO请求总数,所述IO请求总数为全部所述IO调度队列中的所述IO请求的数量;基于所述IO请求总数和每个所述IO调度队列关联的所述IO资源权重占比,得到每个所述IO调度队列的第一目标调度IO请求数,所述第一目标调度IO请求数为任一所述IO调度队列的所述IO请求数量与当前所述IO调度队列关联的所述IO资源权重占比之间的乘积;基于所述第一目标调度IO请求数,进行IO请求调度。
16.根据权利要求15所述的IO请求调度方法,其特征在于,所述IO请求还具体用于指示所述存储装置在所述IO调度队列的所述IO请求数量小于或等于当前所述IO调度队列的所述第一目标调度IO请求数的情况下,得到当前所述IO调度队列的第二目标调度IO请求数,所述第二目标调度IO请求数的取值为当前所述IO调度队列的所述IO请求数量;
17.根据权利要求16所述的IO请求调度方法,其特征在于,所述IO请求还具体用于指示所述存储装置基于全部所述IO调度队列、以及每个所述IO调度队列的所述第二目标调度IO请求数,得到待处理IO请求列表;对所述待处理IO请求列表中的所述IO请求进行调度;所述待处理IO请求列表中的全部所述IO请求均按照每个所述IO请求的优先级顺序依次排列。
18.一种IO管理装置,其特征在于,包括:
19.一种超融合系统,其特征在于,包括:
20.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任一项所述IO请求调度方法,或者如权利要求11至17任一项所述IO请求调度方法。
21.一种非暂态计算机可...
【技术特征摘要】
1.一种io请求调度方法,其特征在于,包括:
2.根据权利要求1所述的io请求调度方法,其特征在于,还包括:接收所述io管理装置发送的存储资源lun创建请求,所述存储资源lun创建请求携带有每个存储资源lun的优先级标签、以及每个所述存储资源lun的io资源权重占比;
3.根据权利要求1所述的io请求调度方法,其特征在于,还包括:在完成所述存储资源lun创建的情况下,将每个所述存储资源lun关联的所述优先级标签和所述io资源权重占比存储于本地内存,并且,将每个所述存储资源lun关联的所述优先级标签和所述io资源权重占比同步存储于预设的集群分布式数据库;
4.根据权利要求1所述的io请求调度方法,其特征在于,基于每个所述io调度队列关联的所述io资源权重占比,进行io请求调度的步骤包括:
5.根据权利要求4所述的io请求调度方法,其特征在于,基于每个所述io调度队列的io请求数量、以及每个所述io调度队列各自关联的所述io资源权重占比,进行io请求调度的步骤包括:
6.根据权利要求5所述的io请求调度方法,其特征在于,基于所述第一目标调度io请求数,进行io请求调度的步骤包括:
7.根据权利要求6所述的io请求调度方法,其特征在于,所述第二目标调度io请求数的获取步骤还包括:在所述io调度队列的所述io请求数量大于当前所述io调度队列的所述第一目标调度io请求数,且剩余io配额总数大于或等于待配额请求数的情况下,将当前所述io调度队列的所述io请求数量,确定为当前所述io调度队列的所述第二目标调度io请求数的取值,并对所述剩余io配额总数进行更新;
8.根据权利要求7所述的io请求调度方法,其特征在于,所述第二目标调度io请求数的获取步骤还包括:
9.根据权利要求6所述的io请求调度方法,其特征在于,基于所述第二目标调度io请求数,进行io请求调度的步骤包括:
10.一种存储装置,其特征在于,包括:
11.一种io请求调度方法,其特征在于,包括:
12.根据权利要求11所述的io请求调度方法,其特征在于,还包括:
13.根据权利要求11所述的io请求调度方法,其特征在于,所述存储装置创建的每个所述存储资源lun关联的所述优先级标签和所述io资源权重占比均存储于本地,并且,所述存储装置创建的每个所述存储资源lu...
【专利技术属性】
技术研发人员:郭毅,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。