本申请涉及大数据处理技术,尤其涉及一种任务运行节点的确定方法、装置、设备及介质。
背景技术:
1、随着大数据技术的飞速发展,对数据进行处理和分析成为已成为必不可少的步骤,在数据进行处理和分析的过程中,大量的处理及分析任务会分配到不同的节点上,以提高任务的处理及分析效率。
2、现有技术中,在确定任务的运行节点时,通常是通过轮询分配算法、就近分配算法或随机分配算法中的一种或多种,从多个节点中确定出目标节点,然后将任务对应分配到目标节点中,由目标节点运行该任务。
3、但是现有技术确定任务运行节点的方式容易导致不同节点运行任务的时间不够均衡,降低了对节点资源的利用率。
技术实现思路
1、本申请提供一种任务运行节点的确定方法、装置、设备及介质,用以解决现有技术确定任务运行节点的方式容易导致不同节点运行任务的时间不够均衡,降低了对节点资源的利用率的问题。
2、第一方面,本申请提供一种任务运行节点的确定方法,包括:
3、获取多个候选节点,候选节点用于运行待分配任务;
4、对于任意一个候选节点,根据所述候选节点当前运行的任务及已分配但未运行的任务占用的资源,计算所述候选节点的剩余资源,所述资源至少包括中央处理器cpu资源和内存资源中的一种或多种;
5、获取所述待分配任务所需的资源;
6、根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点。
7、可选的,所述获取多个候选节点,包括:
8、获取所述待分配任务的分配请求,所述待分配任务封装在容器中;
9、根据所述分配请求,基于所述容器的标识信息及所述容器与预设节点的亲和性关系,确定运行所述待分配任务的第一候选节点集合;
10、根据所述第一候选节点集合中每个候选节点的请求资源限制信息,从所述第一候选节点集合中确定出运行所述待分配任务的第二候选节点集合;
11、获取所述第二候选节点集合中的多个候选节点。
12、可选的,所述对于任意一个候选节点,根据所述候选节点当前运行的任务及已分配但未运行的任务占用的资源,计算所述候选节点的剩余资源,包括:
13、对于任意一个候选节点,根据所述候选节点当前运行的任务,获取所述当前运行的任务占用的第一资源;
14、根据所述候选节点中已分配但未运行的任务的资源信息,确定运行所述已分配但未运行的任务所需的第二资源;
15、获取所述候选节点的总资源;
16、根据所述总资源、所述第一资源及所述第二资源,计算所述候选节点的剩余资源。
17、可选的,所述根据所述候选节点中已分配但未运行的任务的资源信息,确定运行所述已分配但未运行的任务所需的第二资源,包括:
18、根据所述候选节点中已分配但未运行的任务的执行器的核参数,确定运行所述已分配但未运行的任务所需的cpu资源;
19、和/或,
20、根据所述候选节点中已分配但未运行的任务的执行器的内存参数,确定运行所述已分配但未运行的任务所需的内存使用量资源;
21、根据所述内存使用量资源与预设的比例系数,确定运行所述已分配但未运行的任务所需的内存缓存量资源;
22、将所述内存使用量资源与所述内存缓存量资源进行加和处理,确定运行所述已分配但未运行的任务所需的内存资源。
23、可选的,所述根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点,包括:
24、基于每个候选节点的剩余资源,对候选节点根据剩余资源的大小进行优先级排序;
25、按照所述优先级排序,将剩余资源满足所述待分配任务所需的资源的候选节点,确定为运行所述待分配任务的目标节点。
26、可选的,所述根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点之后,还包括:
27、将所述待分配任务分配至所述目标节点,所述目标节点用于运行所述待分配任务。
28、可选的,还包括:
29、判断所述待分配任务是否分配至所述目标节点;
30、若未分配至所述目标节点,重新执行所述根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点的步骤。
31、第二方面,本申请提供一种任务运行节点的确定装置,包括:
32、获取模块,用于获取多个候选节点,候选节点用于运行待分配任务;
33、计算模块,用于对于任意一个候选节点,根据所述候选节点当前运行的任务及已分配但未运行的任务占用的资源,计算所述候选节点的剩余资源,所述资源至少包括中央处理器cpu资源和内存资源中的一种或多种;
34、所述获取模块,还用于获取所述待分配任务所需的资源;
35、确定模块,用于根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点。
36、第三方面,本申请提供一种电子设备,包括:至少一个处理器、存储器;
37、所述存储器存储计算机执行指令;
38、所述至少一个处理器执行所述存储器存储的计算机执行指令来执行第一方面任一项所述的任务运行节点的确定方法。
39、第四方面,本申请实施例提供一种可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面任一项所述的任务运行节点的确定方法。
40、本申请提供的一种任务运行节点的确定方法、装置、设备及介质,通过获取用于运行待分配任务的多个候选节点,对于任意一个候选节点,根据候选节点当前运行的任务及已分配但未运行的任务占用的资源,计算候选节点的剩余资源,其中,资源至少包括中央处理器cpu资源和内存资源中的一种或多种。获取待分配任务所需的资源,进而根据每个候选节点的剩余资源、待分配任务所需的资源,从多个候选节点中确定出运行待分配任务的目标节点。本申请的方法,通过根据候选节点当前运行的任务及已分配但未运行的任务占用的资源计算剩余资源,并根据剩余资源确定运行待分配任务的目标节点的方式,使得节点运行任务的时间更加均衡,有效的提高了节点资源的利用率。
1.一种任务运行节点的确定方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述获取多个候选节点,包括:
3.根据权利要求2所述的方法,其特征在于,所述对于任意一个候选节点,根据所述候选节点当前运行的任务及已分配但未运行的任务占用的资源,计算所述候选节点的剩余资源,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述候选节点中已分配但未运行的任务的资源信息,确定运行所述已分配但未运行的任务所需的第二资源,包括:
5.根据权利要求4所述的方法,其特征在于,所述根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点,包括:
6.根据权利要求1-5任一项所述的方法,其特征在于,所述根据每个候选节点的剩余资源、所述待分配任务所需的资源,从多个候选节点中确定出运行所述待分配任务的目标节点之后,还包括:
7.根据权利要求6所述的方法,其特征在于,还包括:
8.一种任务运行节点的确定装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:至少一个处理器、存储器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的任务运行节点的确定方法。