存储系统的带宽资源分配方法、装置、设备及存储介质

文档序号:1860764 发布日期:2021-11-19 浏览:3次 >En<

阅读说明:本技术 存储系统的带宽资源分配方法、装置、设备及存储介质 (Bandwidth resource allocation method, device, equipment and storage medium of storage system ) 是由 王勇 于 2021-07-15 设计创作,主要内容包括:本申请公开了一种存储系统的带宽资源分配方法,将存储系统的带宽资源在多个逻辑卷之间进行有效的分配,首先为每个逻辑卷设置对应的预设比例,在分配带宽资源时,如果逻辑卷的需求大,则无论系统繁忙或者空闲都保证该逻辑卷得到不低于预设比例的带宽资源,相反,如果逻辑卷的需求较小或者无需求,则把这部分空闲带宽资源给分配其他有需求的逻辑卷,最终达到尽可能的将可用带宽资源分配给有实际需求的逻辑卷的目的,保证有需求的逻辑卷能够得到足够的带宽资源,同时显著提升存储系统带宽资源的利用率,减少系统带宽资源的闲置。此外,本申请还提供了一种存储系统的带宽资源分配装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应。(The application discloses a bandwidth resource allocation method of a storage system, which is characterized in that bandwidth resources of the storage system are effectively allocated among a plurality of logical volumes, a corresponding preset proportion is firstly set for each logical volume, when the bandwidth resources are allocated, if the demand of the logical volumes is large, the logical volumes are guaranteed to obtain the bandwidth resources which are not lower than the preset proportion no matter the system is busy or idle, on the contrary, if the demand of the logical volumes is small or no demand exists, the idle bandwidth resources are distributed to other logical volumes with demands, and finally, the purpose of allocating the available bandwidth resources to the logical volumes with actual demands as far as possible is achieved, the logical volumes with demands can obtain enough bandwidth resources, meanwhile, the utilization rate of the bandwidth resources of the storage system is obviously improved, and the idle of the bandwidth resources of the system is reduced. In addition, the application also provides a bandwidth resource allocation device, equipment and a readable storage medium of the storage system, and the technical effect corresponds to that of the method.)

存储系统的带宽资源分配方法、装置、设备及存储介质

技术领域

本申请涉及计算机技术领域,特别涉及一种存储系统的带宽资源分配方法、装置、设备及可读存储介质。

背景技术

存储系统的带宽属于共享资源,通常需要在多个逻辑卷间进行分配,同时带宽资源又具有时效属性,每个单位时间内都有一定的带宽总量,只能在当时进行消费。为保证每个逻辑卷都能占用系统带宽资源,通常的分配手段为限制最大使用量的方式,避免个别逻辑卷消耗量过多带宽资源导致其他逻辑卷无法占用到带宽资源,但是这种分配方式一方面会限制系统带宽资源的最大利用率,另一方面并不能保证每个逻辑卷在需要的时候能够占用到足够的带宽资源。

可见,在存储系统中如何提供一种带宽资源的分配方案,避免上述缺点,是亟待本领域技术人员解决的问题。

发明内容

本申请的目的是提供一种存储系统的带宽资源分配方法、装置、设备及可读存储介质,用以解决当前的带宽资源分配方案既限制带宽资源的最大利用率又无法保证有需要的逻辑卷获得足够的带宽资源的问题。其具体方案如下:

第一方面,本申请提供了一种存储系统的带宽资源分配方法,包括:

为存储系统的每个逻辑卷设置相应的预设比例;

根据所述预设比例和所述存储系统在单位时间内的可用带宽资源,确定预计为每个所述逻辑卷分配的所述预设比例的带宽资源;

在为待占用带宽资源的逻辑卷分配带宽资源时,判断所述预设比例的带宽资源是否满足该逻辑卷的需求;

若满足,则为该逻辑卷分配所述预设比例的带宽资源;

若不满足,则为该逻辑卷分配所述预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中所述目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。

可选的,所述为该逻辑卷分配所述预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中所述目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷,包括:

判断是否存在第一目标逻辑卷,其中所述第一目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷;

若存在第一目标逻辑卷,则为该逻辑卷分配所述预设比例的带宽资源和所述第一目标逻辑卷的带宽资源,以满足该逻辑卷的需求;

若不存在第一目标逻辑卷或者所述预设比例的带宽资源和所述第一目标逻辑卷的带宽资源无法满足该逻辑卷的需求,则判断是否存在第二目标逻辑卷,其中所述第二目标逻辑卷为过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷;

若存在第二目标逻辑卷,则为该逻辑卷分配所述预设比例的带宽资源和所述第二目标逻辑卷的带宽资源,或者,为该逻辑卷分配所述预设比例的带宽资源、所述第一目标逻辑卷的带宽资源和所述第二目标逻辑卷的带宽资源,以满足该逻辑卷的需求。

可选的,在所述判断是否存在第一目标逻辑卷之后,还包括:

若存在多个第一目标逻辑卷,则按照借用时间从早到晚的顺序从所述多个第一目标逻辑卷中依次选出第一目标逻辑卷,并将选出的第一目标逻辑卷的带宽资源分配给该逻辑卷,直至满足该逻辑卷的需求或不存在未被选中的第一目标逻辑卷。

可选的,在所述为该逻辑卷分配所述预设比例的带宽资源和所述第二目标逻辑卷的带宽资源,或者,为该逻辑卷分配所述预设比例的带宽资源、所述第一目标逻辑卷的带宽资源和所述第二目标逻辑卷的带宽资源之后,还包括:

生成该逻辑卷与所述第二目标逻辑卷之间的借用记录;

相应的,在所述为该逻辑卷分配所述预设比例的带宽资源和所述第一目标逻辑卷的带宽资源之后,还包括:

对该逻辑卷与所述第一目标逻辑卷之间的借用记录进行销账。

可选的,在所述生成该逻辑卷与所述第二目标逻辑卷之间的借用记录之后,还包括:

在所述借用记录的存在时间超过T个单位时间时,对所述借用记录进行销账。

可选的,在为待占用带宽资源的逻辑卷分配带宽资源时,还包括:

获取目标队列,确定位于所述目标队列队首的逻辑卷,以作为下一个待分配带宽资源的逻辑卷,其中所述目标队列用于记录待占用带宽资源的逻辑卷,逻辑卷在所述目标队列中的排列顺序为:被借用过带宽资源的逻辑卷在前,因自身需求而等待占用带宽资源的逻辑卷在后。

可选的,如果存在多个所述被借用过带宽资源的逻辑卷或者多个所述因自身需求而等待占用带宽资源的逻辑卷,则逻辑卷在所述目标队列中的排列顺序为:过去T个单位时间内没有占用带宽资源的时间越长越靠前。

第二方面,本申请提供了一种存储系统的带宽资源分配装置,包括:

比例设置模块,用于为存储系统的每个逻辑卷设置相应的预设比例;

拟分配模块,用于根据所述预设比例和所述存储系统在单位时间内的可用带宽资源,确定预计为每个所述逻辑卷分配的所述预设比例的带宽资源;

判断模块,用于在为待占用带宽资源的逻辑卷分配带宽资源时,判断所述预设比例的带宽资源是否满足该逻辑卷的需求;

第一分配模块,用于在所述预设比例的带宽资源满足该逻辑卷的需求时,为该逻辑卷分配所述预设比例的带宽资源;

第二分配模块,用于在所述预设比例的带宽资源不满足该逻辑卷的需求时,为该逻辑卷分配所述预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中所述目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。

第三方面,本申请提供了一种存储系统的带宽资源分配设备,包括:

存储器:用于存储计算机程序;

处理器:用于执行所述计算机程序,以实现如上所述的存储系统的带宽资源分配方法。

第四方面,本申请提供了一种可读存储介质,所述可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时用于实现如上所述的存储系统的带宽资源分配方法。

本申请所提供的一种存储系统的带宽资源分配方法,包括:为存储系统的每个逻辑卷设置相应的预设比例;根据预设比例和存储系统在单位时间内的可用带宽资源,确定预计为每个逻辑卷分配的预设比例的带宽资源;在为待占用带宽资源的逻辑卷分配带宽资源时,判断预设比例的带宽资源是否满足该逻辑卷的需求;若满足,则为该逻辑卷分配预设比例的带宽资源;若不满足,则为该逻辑卷分配预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。

可见,该方法将存储系统的带宽资源在多个逻辑卷之间进行有效的分配,首先为每个逻辑卷设置对应的预设比例,在分配带宽资源时,如果逻辑卷的需求大,则无论系统繁忙或者空闲都保证该逻辑卷得到不低于预设比例的带宽资源,相反,如果逻辑卷的需求较小或者无需求,则把这部分空闲带宽资源给分配其他有需求的逻辑卷,最终达到尽可能的将可用带宽资源分配给有实际需求的逻辑卷的目的,保证有需求的逻辑卷能够得到足够的带宽资源,同时显著提升存储系统带宽资源的利用率,减少系统带宽资源的闲置。

此外,本申请还提供了一种存储系统的带宽资源分配装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。

附图说明

为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请所提供的存储系统的带宽资源分配方法实施例一的流程图;

图2为本申请所提供的存储系统的带宽资源分配方法实施例二的流程图;

图3为本申请所提供的存储系统的带宽资源分配装置实施例的功能框图;

图4为本申请所提供的存储系统的带宽资源分配设备实施例的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的核心是提供一种存储系统的带宽资源分配方法、装置、设备及可读存储介质,一方面保证需求大的逻辑卷能够分配到不低于预设比例的带宽资源,另一方面把需求较小或无需求的逻辑卷的空闲带宽资源分配给有实际需求的逻辑卷,尽可能的提高系统带宽利用率,避免系统带宽资源的浪费。

下面对本申请提供的存储系统的带宽资源分配方法实施例一进行介绍,参见图1,实施例一包括:

S11、为存储系统的每个逻辑卷设置相应的预设比例;

S12、根据预设比例和存储系统在单位时间内的可用带宽资源,确定预计为每个逻辑卷分配的预设比例的带宽资源;

S13、在为待占用带宽资源的逻辑卷分配带宽资源时,判断预设比例的带宽资源是否满足该逻辑卷的需求;若满足,进入S14,否则进入S15;

S14、为该逻辑卷分配预设比例的带宽资源;

S15、为该逻辑卷分配预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。

本实施例将带宽资源分配抽象化,认为存储系统在单位时间内只能提供一定数量的带宽资源,每次为逻辑卷分配单位时间的带宽资源。先根据经验分别对存储系统的每个逻辑卷设置预设比例(逻辑卷与预设比例一一对应),之后确定存储系统在单位时间内的可用带宽资源,进而确定预计分配给每个逻辑卷的预设比例的带宽资源,这部分带宽资源即该逻辑卷在单位时间内可以占用到的带宽资源。需要注意的是,这里只是拟分配,并未真正将带宽资源分配给逻辑卷。

在真正分配带宽资源时,首先确定一个待占用带宽资源的逻辑卷,然后确定该逻辑卷对应的预设比例的带宽资源和该逻辑卷的需求,判断预设比例的带宽资源是否满足该逻辑卷的需求,如果满足,则将预设比例的带宽资源分配给该逻辑卷;如果不满足,则除了将预设比例的带宽资源分配给该逻辑卷之外,还将目标逻辑卷的带宽资源分配给该逻辑卷,以满足该逻辑卷的需求。为保证带宽资源的利用率的最大化,本实施例中目标逻辑卷特指:过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。这里T的取值可以根据实际需求自行设置或调整,本实施例对此不做限定。

可见,本实施例引入了带宽资源借用,带宽资源归还,借用过期的概念。其中,带宽资源借用是指本实施例允许逻辑卷在自身需求得不到满足时借用其他逻辑卷的带宽资源;带宽资源归还是指借用方将带宽资源归还给需求得不到满足的被借用方,值得一提的是,由于带宽资源具有时间属性,所以这里归还的带宽资源与之前借来的带宽资源并非同一带宽资源;借用过期是指一旦借用关系超过T个单位时间,则对借用记录进行销账,认为二者不再存在借用关系,此时即便被借用方的需求得不到满足,也不会优先从借用方获取带宽资源。

作为一种具体的实施方式,可以在发生带宽资源借用时,生成借用记录;在发生带宽资源归还时,对借用记录进行销账;在借用记录的存在时间超过T个单位时间时,也对借用记录进行销账。

本实施例中,仅以逻辑卷占用存储系统带宽资源进行说明,实际上,本实施例的资源分配逻辑可以进一步应用到其他场景,如逻辑卷占用存储系统IOPS(Input/OutputOperations Per Second,每秒输出/输出操作数量)资源,对象读写占用存储系统带宽资源,对象读写占用存储系统IOPS资源等。

本实施例所提供的存储系统的带宽资源分配方法,将存储系统的带宽资源在多个逻辑卷之间进行有效的分配,首先为每个逻辑卷设置对应的预设比例,在分配带宽资源时,如果逻辑卷的需求大,则无论系统繁忙或者空闲都保证该逻辑卷得到不低于预设比例的带宽资源,相反,如果逻辑卷的需求较小或者无需求,则把这部分空闲带宽资源给分配其他有需求的逻辑卷,最终达到尽可能的将可用带宽资源分配给有实际需求的逻辑卷的目的,保证有需求的逻辑卷能够得到足够的带宽资源,同时显著提升存储系统带宽资源的利用率,减少系统带宽资源的闲置。

下面开始详细介绍本申请提供的存储系统的带宽资源分配方法实施例二,实施例二基于前述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。

具体的,在为逻辑卷分配带宽资源时,实施例二对各个逻辑卷的分配顺序进行了优化。

参见图2,实施例二具体包括:

S201、为存储系统的每个逻辑卷设置相应的预设比例;

S202、根据预设比例和存储系统在单位时间内的可用带宽资源,确定预计为每个逻辑卷分配的预设比例的带宽资源;

S203、获取目标队列,确定位于目标队列队首的逻辑卷,以作为下一个待分配带宽资源的逻辑卷;

其中,目标队列用于记录待占用带宽资源的逻辑卷,逻辑卷在目标队列中的排列顺序为:被借用过带宽资源的逻辑卷在前,因自身需求而等待占用带宽资源的逻辑卷在后。

如果存在多个被借用过带宽资源的逻辑卷或者多个因自身需求而等待占用带宽资源的逻辑卷,则逻辑卷在目标队列中的排列顺序为:过去T个单位时间内没有占用带宽资源的时间越长越靠前。

S204、判断预设比例的带宽资源是否满足该逻辑卷的需求;若满足,进入S205,否则进入S206;

S205、为该逻辑卷分配预设比例的带宽资源;

S206、为该逻辑卷分配预设比例的带宽资源,并判断是否存在第一目标逻辑卷,其中第一目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷;如果存在,进入S207,否则进入S209;

S207、为该逻辑卷进一步分配第一目标逻辑卷的带宽资源,对该逻辑卷与第一目标逻辑卷之间的借用记录进行销账;

具体的,若第一目标逻辑卷的数量为一个,则为该逻辑卷分配第一目标逻辑卷的带宽资源;若第一目标逻辑卷的数量为多个,则按照借用时间从早到晚的顺序从多个第一目标逻辑卷中依次选出第一目标逻辑卷,并将选出的第一目标逻辑卷的带宽资源分配给该逻辑卷,直至满足该逻辑卷的需求或不存在未被选中的第一目标逻辑卷。

S208、判断目前是否满足该逻辑卷的需求,若是,则不做处理,否则进入S209;

S209、判断是否存在第二目标逻辑卷,其中第二目标逻辑卷为过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷;若存在,进入S210,若不存在,则不做处理;

S210、为该逻辑卷进一步分配第二目标逻辑卷的带宽资源,生成该逻辑卷与第二目标逻辑卷之间的借用记录;

S211、在借用记录超过T个单位时间时未被销账时,对借用记录进行销账。

基于上述实施例二,下面以实际应用为例,对本实施例的实施过程进行说明。

假设存储系统单位时间内带宽资源可提供量为M,需要被N个逻辑卷按预设比例占用,将M按照预设比例拟分配给各个逻辑卷,则各个逻辑卷单位时间内预计可占用的带宽资源分别为m1,m2,…,mn。

当为逻辑卷分配带宽资源时,如果预设比例的带宽资源量能够满足该逻辑卷的需求,则只分配预设比例的带宽资源量给该逻辑卷,如果不能够满足该逻辑卷的需求,则除了分配预设比例的带宽资源之外,还分配目标逻辑卷的带宽资源。具体的,优先从借用过该逻辑卷带宽资源的逻辑卷处获取带宽资源,当存在多个借用过该逻辑卷带宽资源的逻辑卷时,则从最早发生借用关系的逻辑卷中开始依次获取带宽资源,如果仍不能够满足该逻辑卷的需求,则从过去T个单位时间内最长时间没有发生带宽资源占用的逻辑卷处借用资源。

当逻辑卷从借用方获取到了归还的带宽资源,则相应的借用记录需要销账,从T个单位时间内最早发生的借用开始销账。需要说明的是,当发生带宽资源借用时,只计算T个单位时间内发生的借用,超出T个单位时间的借用直接销账。

当有多个逻辑卷等待占用带宽资源时,优先选被其它逻辑卷借用过带宽资源的逻辑卷进行分配,如果存在多个被借用过带宽资源的逻辑卷,则从中选择过去T个单位时间内最长时间没有占用带宽的逻辑卷进行分配,如果不存在被借用过带宽资源的逻辑卷,则从等待占用带宽的逻辑卷中选择过去T个单位时间内最长时间没有占用带宽资源的逻辑卷进行分配。

一旦逻辑卷自己占用带宽资源,或被发生过借用关系的逻辑卷占用带宽资源,或被其它逻辑卷借用带宽资源,都算作自己的带宽资源发生了占用,带宽资源发生占用的时刻为带宽资源的最后占用时间点。

值得一提的是,逻辑卷需要占用带宽资源的时候,单次占用带宽资源的最大量为T个单位时间与其单位时间分配量的乘积,通过这种方式,避免由于单次占用带宽资源过多导致长时间没有新的分配调度过程。

下面对本申请实施例提供的存储系统的带宽资源分配装置进行介绍,下文描述的存储系统的带宽资源分配装置与上文描述的存储系统的带宽资源分配方法可相互对应参照。

本实施例的存储系统的带宽资源分配装置,如图3所示,包括:

比例设置模块31,用于为存储系统的每个逻辑卷设置相应的预设比例;

拟分配模块32,用于根据所述预设比例和所述存储系统在单位时间内的可用带宽资源,确定预计为每个所述逻辑卷分配的所述预设比例的带宽资源;

判断模块33,用于在为待占用带宽资源的逻辑卷分配带宽资源时,判断所述预设比例的带宽资源是否满足该逻辑卷的需求;

第一分配模块34,用于在所述预设比例的带宽资源满足该逻辑卷的需求时,为该逻辑卷分配所述预设比例的带宽资源;

第二分配模块35,用于在所述预设比例的带宽资源不满足该逻辑卷的需求时,为该逻辑卷分配所述预设比例的带宽资源和目标逻辑卷的带宽资源以满足该逻辑卷的需求,其中所述目标逻辑卷为过去T个单位时间内借用过该逻辑卷带宽资源的逻辑卷和/或过去T个单位时间内最长时间没有占用过带宽资源的逻辑卷。

本实施例的存储系统的带宽资源分配装置用于实现前述的存储系统的带宽资源分配方法,因此该装置的具体实施方式可见前文中的存储系统的带宽资源分配方法的实施例部分,例如,比例设置模块31,拟分配模块32,判断模块33,第一分配模块34,第二分配模块35,分别用于实现上述存储系统的带宽资源分配方法中步骤S11,S12,S13,S14,S15。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。

另外,由于本实施例的存储系统的带宽资源分配装置用于实现前述的存储系统的带宽资源分配方法,因此其作用与上述方法的作用相对应,这里不再赘述。

此外,本申请还提供了一种存储系统的带宽资源分配设备,如图4所示,包括:

存储器100:用于存储计算机程序;

处理器200:用于执行所述计算机程序,以实现如上文所述的存储系统的带宽资源分配方法。

最后,本申请提供了一种可读存储介质,所述可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时用于实现如上文所述的存储系统的带宽资源分配方法。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:流处理系统的数据读写方法和流处理系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类