一种资源分配方法及装置制造方法及图纸

技术编号:26693985 阅读:23 留言:0更新日期:2020-12-12 02:50
本公开提供了一种资源分配方法及装置,其中,该方法包括:接收至少一个目标用户端发送的针对目标队列的作业资源分配请求;获取目标队列中包括目标用户端在内的多个用户端在目标队列的预定资源量,以及多个用户端分别对应的已分配资源量;根据多个用户端在目标队列的预定资源量,以及多个用户端分别对应的已分配资源量,为至少一个目标用户端进行作业资源分配。本公开实施例根据用户端在目标队列的预定资源量和该用户端在该目标队列的已分配资源量,为该用户端提交的目标作业分配资源,这样有利于满足提交不同作业类型的用户端对队列资源的基本需求,可以平衡不同用户端对队列的资源占用量,有利于不同类型作业的顺利进行。

【技术实现步骤摘要】
一种资源分配方法及装置
本公开涉及计算机网络
,具体而言,涉及一种资源分配方法及装置。
技术介绍
在HadoopYARN集群资源管理和调度基础平台中,通过物理划分的方法将相邻的多个节点划分为一个节点集合label,当用户向集群提交作业时,集群的资源管理器(ResourceManager,RM)根据用户的队列资源使用权限将相应节点集合下的队列资源分配给对应的用户作业,从而使作业能够顺利运行。根据上述资源分配机制,当用户A向集群提交了作业,集群的资源管理器将队列中的大部分资源分配给了用户A后,若用户B又向该队列提交了作业,若此时该作业申请的资源量大于该队列的剩余资源量时,集群资源管理器不能及时为用户B的作业分配资源,只能等用户A使用的资源释放后才能为用户B的作业分配资源,从而造成不同用户间资源分配的不平衡,导致某些作业类型无法进行。
技术实现思路
本公开实施例至少提供一种资源分配方法及装置。第一方面,本公开实施例提供了一种资源分配的方法,所述资源分配的方法包括:接收至少一个目标用户端发送的针对目标队列的作业资源分配请求;获取所述目标队列中包括所述目标用户端在内的多个用户端在所述目标队列的预定资源量,以及所述多个用户端分别对应的已分配资源量;所述已分配资源量为针对所述多个用户端提交的历史作业分配的所述目标队列的资源量;根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配。r>在一种可选的实施方式中,所述根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配,包括:根据所述多个用户端分别对应的所述预定资源量和所述已分配资源量,确定每个所述用户端对应的资源满足度;所述资源满足度为所述已分配资源量与所述预定资源量的比值;根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配。在一种可选的实施方式中,根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配,包括:根据所述目标队列对应的所述多个用户端的所述资源满足度,按照对应的资源满足度低则优先被分配资源的原则,为所述至少一个目标用户端进行资源分配。在一种可选的实施方式中,根据所述目标队列对应的多个用户端的所述资源满足度,按照对应的资源满足度低则优先被分配资源的原则,为所述至少一个目标用户端进行资源分配,包括:若接收到多个目标用户端发送的资源分配请求,将所述多个目标用户端按照对应的资源满足度由小到大的顺序进行排列;按照所述多个目标用户端的排列顺序,依次为所述多个目标用户端分配所述目标队列的资源,直到所述目标队列的资源不足。在一种可选的实施方式中,所述根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配,包括:判断所述目标队列的可用资源量是否小于所述作业资源分配请求中的资源需求量;所述可用资源量为所述目标队列的总资源量与所述多个用户端的所述已分配资源量之和的差值;若小于,判断所述目标队列的所述多个用户端中是否存在可抢占资源用户端,若存在,则释放所述可抢占资源用户端占用的可抢占资源,并将释放的所述可抢占资源分配给所述目标用户端;其中,所述可抢占资源用户端是指对应的资源满足度大于1、且当前允许释放资源的用户端。在一种可选的实施方式中,若接收到多个目标用户端的作业资源分配请求,将所述多个目标用户端按照对应的资源满足度由小到大的顺序进行排列,包括:若所述多个目标用户端对应的资源满足度相同,则将所述多个目标用户端按照提交的作业的优先级由高到低进行排列;若所述多个目标用户端提交的作业的优先级相同,则将所述多个目标用户端按照提交作业的时间的先后顺序进行排列;若所述多个目标用户端提交作业的时间相同,则将所述多个目标用户端按照提交的作业对应的被分配标识号由小到大的顺序进行排列。在一种可选的实施方式中,根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配,包括:根据所述多个用户端在所述目标队列的所述预定资源量、所述多个用户端分别对应的所述已分配资源量、以及不同类型作业对应的资源分配量上限,为所述至少一个目标用户端进行作业资源分配。第二方面,本公开实施例还提供一种资源分配装置,包括:接收模块,用于接收至少一个目标用户端发送的针对目标队列的作业资源分配请求;获取模块,用于获取所述目标队列中包括所述目标用户端在内的多个用户端在所述目标队列的预定资源量,以及所述多个用户端分别对应的已分配资源量;所述已分配资源量为针对所述多个用户端提交的历史作业分配的所述目标队列的资源量;资源分配模块,用于根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配。在一种可选的实施方式中,所述资源分配模块,具体用于:根据所述多个用户端分别对应的所述预定资源量和所述已分配资源量,确定每个所述用户端对应的资源满足度;所述资源满足度为所述已分配资源量与所述预定资源量的比值;根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配。在一种可选的实施方式中,所述资源分配模块,还具体用于:根据所述目标队列对应的多个用户端的所述资源满足度,按照对应的资源满足度低则优先被分配资源的原则,为所述至少一个目标用户端进行资源分配。在一种可选的实施方式中,所述资源分配模块,还具体用于:若接收到多个目标用户端发送的资源分配请求,将所述多个目标用户端按照对应的资源满足度由小到大的顺序进行排列;按照所述多个目标用户端的排列顺序,依次为所述多个目标用户端分配所述目标队列的资源,直到所述目标队列的资源不足。在一种可选的实施方式中,所述资源分配模块,还具体用于:判断所述目标队列的可用资源量是否小于所述作业资源分配请求中的资源需求量;所述可用资源量为所述目标队列的总资源量与所述多个用户端的所述已分配资源量之和的差值;若小于,判断所述目标队列的所述多个用户端中是否存在可抢占资源用户端,若存在,则释放所述可抢占资源用户端占用的可抢占资源,并将释放的所述可抢占资源分配给所述目标用户端;其中,所述可抢占资源用户端是指对应的资源满足度大于1、且当前允许释放资源的用户端。在一种可选的实施方式中,所述资源分配模块,还具体用于:若所述多个目标用户端对应的资源满足度相同,则将所述多个目标用户端按照提交的作业的优先级由高到低进行排列;若所述多个目标用户端提交的作业的优先级相同,则将所述多个目标用户端按照提交作业的时间的先后顺序进本文档来自技高网...

【技术保护点】
1.一种资源分配方法,其特征在于,包括:/n接收至少一个目标用户端发送的针对目标队列的作业资源分配请求;/n获取所述目标队列中包括所述目标用户端在内的多个用户端在所述目标队列的预定资源量,以及所述多个用户端分别对应的已分配资源量;所述已分配资源量为针对所述多个用户端提交的历史作业分配的所述目标队列的资源量;/n根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配。/n

【技术特征摘要】
1.一种资源分配方法,其特征在于,包括:
接收至少一个目标用户端发送的针对目标队列的作业资源分配请求;
获取所述目标队列中包括所述目标用户端在内的多个用户端在所述目标队列的预定资源量,以及所述多个用户端分别对应的已分配资源量;所述已分配资源量为针对所述多个用户端提交的历史作业分配的所述目标队列的资源量;
根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配。


2.根据权利要求1所述的方法,其特征在于,所述根据所述多个用户端在所述目标队列的所述预定资源量,以及所述多个用户端分别对应的所述已分配资源量,为所述至少一个目标用户端进行作业资源分配,包括:
根据所述多个用户端分别对应的所述预定资源量和所述已分配资源量,确定每个所述用户端对应的资源满足度;所述资源满足度为所述已分配资源量与所述预定资源量的比值;
根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配。


3.根据权利要求2所述的方法,其特征在于,根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配,包括:
根据所述目标队列对应的多个用户端的所述资源满足度,按照对应的资源满足度低则优先被分配资源的原则,为所述至少一个目标用户端进行资源分配。


4.根据权利要求3所述的方法,其特征在于,根据所述目标队列对应的多个用户端的所述资源满足度,按照对应的资源满足度低则优先被分配资源的原则,为所述至少一个目标用户端进行资源分配,包括:
若接收到多个目标用户端发送的资源分配请求,将所述多个目标用户端按照对应的资源满足度由小到大的顺序进行排列;
按照所述多个目标用户端的排列顺序,依次为所述多个目标用户端分配所述目标队列的资源,直到所述目标队列的资源不足。


5.根据权利要求2~4任一所述的方法,其特征在于,所述根据所述目标队列对应的多个用户端的所述资源满足度,为所述至少一个目标用户端进行资源分配,包括:
判断所述目标队列的可用资源量是否小于所述作业资源分配请求中的资源需求量;所述可用资源量为所述目标队列的总资源量与所述多个用户端的所述已分配资源量之和的差值;
若小于,判断所述目标队列的所述多个用户端中是否存在可抢占资源用户端,若存...

【专利技术属性】
技术研发人员:李亚坤刘纬
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:北京;11

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

1