System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种资源分配方法以及存储设备组成比例_技高网

一种资源分配方法以及存储设备组成比例

技术编号:40868466 阅读:2 留言:0更新日期:2024-04-08 16:34
本申请实施例公开了一种资源分配方法以及存储设备,用于实现存储设备中不同任务之间的资源分配。在本申请中,存储设备确定多个任务之间关于目标资源的目标关系,确定多个任务中各个任务的资源需求,资源需要包括单位时间内每写入或搬移1份数据所需的至少一种资源的消耗量,至少一种资源包括目标资源,确定至少一种资源中各个资源的资源余量,并接收关于目标资源的规划目标。然后,存储设备可以基于目标关系、多个任务中各个任务的资源需求、至少一种资源中各个资源的资源余量和规划目标建立规划模型,并解析规划模型,得到多个任务中各个任务的资源分配。使得存储设备可以在具备关联性的不同任务之间统一调控,达到性能最优。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种资源分配方法以及存储设备


技术介绍

1、在存储系统中存在着大量的后台任务。例如,前端写带宽任务,用于根据后端能力控制主机写入量;垃圾回收(garbage collecting,gc)任务,用于回收垃圾数据,以腾出空间给新数据写入;数据的搬移(tierdown)任务,用于定期将性能层数据搬移到容量层。不同的任务之间可能存在一定的关联性。例如,gc任务回收垃圾数据后,可以腾出空间给前端写带宽任务写入新数据,那么,gc任务的单位时间内回收垃圾数据的带宽等于前端写带宽任务的带宽。

2、为了不同的任务之间能够长期稳定运行,需要合理分配有限的资源(带宽资源和计算资源)。同时,随着存储系统的持续更新演进,会不断加入新的任务,资源的争抢情况会更加严重。那么,在不影响现有调控逻辑的基础上,如何支持新加入的任务,是一个亟需解决的问题。

3、在当前的存储系统中,对任务的调控主要有两种方式:第一种是根据人工经验静态配置执行策略,一般采用反馈式方法;第二种将系统黑盒化,采用强化学习等方法,根据反馈结果和激励值动态调整任务执行策略,以获取最优的任务参数。但是,这些方法都是针对单点的任务调控,不同的任务之间互不感知、独立决策,这对于具备关联性的任务无法做到统一的调控,不能达成存储系统的性能最优。


技术实现思路

1、本申请实施例提供了一种资源分配方法以及存储设备,用于实现存储设备中不同任务之间的资源分配。

2、本申请第一方面提供了一种资源分配方法,在本申请中,存储设备确定多个任务之间关于目标资源的目标关系,确定多个任务中各个任务的资源需求,资源需要包括单位时间内每写入或搬移1份数据所需的至少一种资源的消耗量,至少一种资源包括目标资源,确定至少一种资源中各个资源的资源余量,并接收关于目标资源的规划目标。然后,存储设备可以基于目标关系、多个任务中各个任务的资源需求、至少一种资源中各个资源的资源余量和规划目标建立规划模型,并解析规划模型,得到多个任务中各个任务的资源分配。使得存储设备可以在具备关联性的不同任务之间统一调控,达到性能最优。

3、在一些可能的实现方式中,所述多个任务中的任一个为垃圾回收gc任务、前端写入带宽任务或搬移tierdown任务,那么,本申请可以为gc任务、前端写入带宽任务或搬移tierdown任务进行资源分配。

4、在一些可能的实现方式中,所述至少一种资源包括盘带宽资源或中央处理器cpu资源,那么,本申请可以为多个任务实现关于盘带宽资源或cpu资源的资源分配。

5、在一些可能的实现方式中,所述多个任务包括第一任务和第二任务,所述目标资源为所述盘带宽,所述目标关系为所述第一任务所需的盘带宽等于所述第二任务所需的盘带宽的n倍,n为正数,从而确定了不同任务之间所需目标资源的目标关系。

6、在一些可能的实现方式中,所述第一任务的资源需求为写入和搬移每1份数据需要w1份所述盘带宽和w2份所述cpu资源,所述第一任务的资源需求为写入和搬移每1份数据需要w3份所述盘带宽和w4份所述cpu资源,所述盘带宽的资源余量为m1,所述cpu资源的资源余量为m2;其中,所述规划模型为:w1*x1+w3*x2<=m1;w2*x1+w4*x2<=m2;x1=n*x2;object=f(x1,x2),x1为所述第一任务的写入和搬移的数据量,x2为所述第二任务的写入和搬移的数据量,object表示所述规划目标,f(x1,x2)表示与x1和x2相关的规划。从而实现不同任务对不同资源的规划。

7、在一些可能的实现方式中,所述规划目标为优先执行所述第一任务,f(x1,x2)=max(x1),max(x1)表示使得x1最大,通过求解,从而实现对不同任务之间的资源分配。

8、本申请第二方面提供了一种存储设备,包括:

9、处理模块,用于确定多个任务之间关于目标资源的目标关系;

10、所述处理模块,还用于确定所述多个任务中各个任务的资源需求,所述资源需要包括单位时间内每写入或搬移1份数据所需的至少一种资源的消耗量,所述至少一种资源包括所述目标资源;

11、所述处理模块,还用于确定所述至少一种资源中各个资源的资源余量;

12、所述处理模块,还用于接收关于所述目标资源的规划目标;

13、所述处理模块,还用于基于所述目标关系、所述多个任务中各个任务的资源需求、所述至少一种资源中各个资源的资源余量和所述规划目标建立规划模型;

14、所述处理模块,还用于解析所述规划模型,得到所述多个任务中各个任务的资源分配。

15、在一些可能的实现方式中,所述多个任务中的任一个为垃圾回收gc任务、前端写入带宽任务或搬移tierdown任务。

16、在一些可能的实现方式中,所述至少一种资源包括盘带宽资源或中央处理器cpu资源。

17、在一些可能的实现方式中,所述多个任务包括第一任务和第二任务,所述目标资源为所述盘带宽,所述目标关系为所述第一任务所需的盘带宽等于所述第二任务所需的盘带宽的n倍,n为正数。

18、在一些可能的实现方式中,所述第一任务的资源需求为写入和搬移每1份数据需要w1份所述盘带宽和w2份所述cpu资源,所述第一任务的资源需求为写入和搬移每1份数据需要w3份所述盘带宽和w4份所述cpu资源,所述盘带宽的资源余量为m1,所述cpu资源的资源余量为m2;

19、所述规划模型为:w1*x1+w3*x2<=m1;w2*x1+w4*x2<=m2;x1=n*x2;object=f(x1,x2);

20、其中,x1为所述第一任务的写入和搬移的数据量,x2为所述第二任务的写入和搬移的数据量,object表示所述规划目标,f(x1,x2)表示与x1和x2相关的规划。

21、在一些可能的实现方式中,所述规划目标为优先执行所述第一任务,f(x1,x2)=max(x1),max(x1)表示使得x1最大。

22、本申请第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面或第三方面中任一项所述的方法。

23、本申请第四方面提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得设备实施上述第一方面或者第一方面的任一种可能的实现方式所提供的方法。

24、本申请第五方面提供一种通信装置,该通信装置可以包括至少一个处理器、存储器和通信接口。至少一个处理器与存储器和通信接口耦合。存储器用于存储指令,至少一个处理器用于执行该指令,通信接口用于在至少一个处理器的控制下与其他通信装置进行通信。该指令在被至少一个处理器执行时,使至少一个处理器执行第一方本文档来自技高网...

【技术保护点】

1.一种资源分配方法,其特征在于,包括:

2.根据权利要求1所述方法,其特征在于,所述多个任务中的任一个为垃圾回收GC任务、前端写入带宽任务或搬移Tierdown任务。

3.根据权利要求1或2所述方法,其特征在于,所述至少一种资源包括盘带宽资源或中央处理器CPU资源。

4.根据权利要求3所述方法,其特征在于,所述多个任务包括第一任务和第二任务,所述目标资源为所述盘带宽,所述目标关系为所述第一任务所需的盘带宽等于所述第二任务所需的盘带宽的N倍,N为正数。

5.根据权利要求4所述方法,其特征在于,所述第一任务的资源需求为写入和搬移每1份数据需要w1份所述盘带宽和w2份所述CPU资源,所述第一任务的资源需求为写入和搬移每1份数据需要w3份所述盘带宽和w4份所述CPU资源,所述盘带宽的资源余量为M1,所述CPU资源的资源余量为M2;

6.根据权利要求5所述方法,其特征在于,所述规划目标为优先执行所述第一任务,F(X1,X2)=MAX(X1),MAX(X1)表示使得X1最大。

7.一种存储设备,其特征在于,包括:>

8.根据权利要求7所述存储设备,其特征在于,所述多个任务中的任一个为垃圾回收GC任务、前端写入带宽任务或搬移Tierdown任务。

9.根据权利要求7或8所述存储设备,其特征在于,所述至少一种资源包括盘带宽资源或中央处理器CPU资源。

10.根据权利要求9所述存储设备,其特征在于,所述多个任务包括第一任务和第二任务,所述目标资源为所述盘带宽,所述目标关系为所述第一任务所需的盘带宽等于所述第二任务所需的盘带宽的N倍,N为正数。

11.根据权利要求10所述存储设备,其特征在于,所述第一任务的资源需求为写入和搬移每1份数据需要w1份所述盘带宽和w2份所述CPU资源,所述第一任务的资源需求为写入和搬移每1份数据需要w3份所述盘带宽和w4份所述CPU资源,所述盘带宽的资源余量为M1,所述CPU资源的资源余量为M2;

12.根据权利要求11所述存储设备,其特征在于,所述规划目标为优先执行所述第一任务,F(X1,X2)=MAX(X1),MAX(X1)表示使得X1最大。

13.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储有程序,所述程序使得计算机设备执行如权利要求1-6中任一项所述的方法。

14.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机执行指令,所述计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器从所述计算机可读存储介质中读取所述计算机执行指令,所述至少一个处理器执行所述计算机执行指令使得所述设备执行如权利要求1-6中任一项所述的方法。

15.一种通信装置,其特征在于,所述通信装置包括至少一个处理器、存储器和通信接口;

16.一种芯片系统,其特征在于,所述芯片系统包括处理器和存储器,所述存储器和所述处理器通过线路互联,所述存储器中存储有指令,所述处理器用于执行如权利要求1-6中任一项所述的方法。

...

【技术特征摘要】

1.一种资源分配方法,其特征在于,包括:

2.根据权利要求1所述方法,其特征在于,所述多个任务中的任一个为垃圾回收gc任务、前端写入带宽任务或搬移tierdown任务。

3.根据权利要求1或2所述方法,其特征在于,所述至少一种资源包括盘带宽资源或中央处理器cpu资源。

4.根据权利要求3所述方法,其特征在于,所述多个任务包括第一任务和第二任务,所述目标资源为所述盘带宽,所述目标关系为所述第一任务所需的盘带宽等于所述第二任务所需的盘带宽的n倍,n为正数。

5.根据权利要求4所述方法,其特征在于,所述第一任务的资源需求为写入和搬移每1份数据需要w1份所述盘带宽和w2份所述cpu资源,所述第一任务的资源需求为写入和搬移每1份数据需要w3份所述盘带宽和w4份所述cpu资源,所述盘带宽的资源余量为m1,所述cpu资源的资源余量为m2;

6.根据权利要求5所述方法,其特征在于,所述规划目标为优先执行所述第一任务,f(x1,x2)=max(x1),max(x1)表示使得x1最大。

7.一种存储设备,其特征在于,包括:

8.根据权利要求7所述存储设备,其特征在于,所述多个任务中的任一个为垃圾回收gc任务、前端写入带宽任务或搬移tierdown任务。

9.根据权利要求7或8所述存储设备,其特征在于,所述至少一种资源包括盘带宽资源或中央处理器cpu资源。

10.根据权利要求9所述存储设备,其特征在于,所述多个任务包括第...

【专利技术属性】
技术研发人员:李文思周西尧张霁
申请(专利权)人:成都华为技术有限公司
类型:发明
国别省市:

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

1