任务调度方法技术

技术编号:39725989 阅读:5 留言:0更新日期:2023-12-17 23:30
本申请实施例属于云计算领域,涉及一种任务调度方法,包括获取待调度任务集,其中,待调度任务集包括若干个待调度任务

【技术实现步骤摘要】
任务调度方法、装置、设备及介质


[0001]本申请涉及云计算领域,尤其涉及一种任务调度方法

装置

设备及介质


技术介绍

[0002]随着互联网技术的发展,
Hadoop
平台进行任务调度以高可靠

高可扩展

高效

高容错

低成本等多种特性被广泛应用于企业中,例如,金融领域中,对用户的保险产品购买或者理财产品购买等交易数据需要进行保险出单及核保等保险任务,通过
Hadoop
平台可以实现保险任务的高效调度,以提高用户对保险产品的满意度

[0003]现有一种队列资源使用的方法,通过先进先出调度器
(FIFO Scheduler)
或容量调度器
(Capacity Scheduler)
对待调度任务进行队列资源分配,以实现任务调度

[0004]但是,由于每个任务都想尽早

尽快的完成计算,在任务集中调度的过程中,资源抢占在所难免,一般通过设置不同队列的权重达到区分资源分配优先级,然而提交到同一个队列的任务无法区分优先级,不同级别的任务无资源优先差异,高优先级任务无法得到资源优先保障,使得任务调度的队列资源利用率较低,进而导致任务调度的效率较低


技术实现思路

[0005]本申请实施例的目的在于提出一种任务调度方法

装置

设备及介质,其主要目的是提高任务调度的效率

[0006]为了解决上述技术问题,本申请实施例提供一种任务调度方法,采用了如下所述的技术方案:
[0007]获取待调度任务集,其中,所述待调度任务集包括若干个待调度任务

与每个所述待调度任务相对应的优先级及与每个所述待调度任务相对应的任务所需运行时长;
[0008]根据所述优先级及所述任务所需运行时长识别所述待调度任务集中每个待调度任务的时效等级;
[0009]识别所述待调度任务集对应的多个调度队列;
[0010]基于所述多个调度队列及所述时效等级为所述待调度任务集进行任务调度

[0011]进一步的,所述根据所述优先级及所述任务所需运行时长识别所述待调度任务集中每个待调度任务的时效等级,包括:
[0012]获取所述待调度任务集的时效策略,并将每个所述待调度任务对应的所述任务所需运行时长与所述时效策略中的时效运行时长进行对比,得到对比结果;
[0013]判断所述对比结果及所述优先级是否满足预设时效条件;
[0014]当所述对比结果及所述优先级满足所述预设时效条件时,确定所述待调度任务的时效等级为高时效等级;
[0015]当所述对比结果及所述优先级未满足所述预设时效条件时,确定所述待调度任务的时效等级为低时效等级

[0016]进一步的,所述基于所述多个调度队列及所述时效等级为所述待调度任务集进行
任务调度,包括:
[0017]当所述时效等级为高时效等级时,获取所述多个调度队列中的高优先级调度队列;
[0018]遍历所述高优先级调度队列的可用资源量,得到多个子队列的子队列权重;
[0019]选取所述子队列权重最高的子队列为所述待调度任务集进行任务调度;
[0020]当所述时效等级为低时效等级时,获取所述多个调度队列中的低优先级调度队列;
[0021]获取所述待调度任务的预估费用,并根据所述预估费用及所述任务所需运行时长确定所述待调度任务的目标时段;
[0022]从所述低优先级调度队列中选取所述目标时段对应的低优先级调度队列为所述待调度任务集进行任务调度

[0023]进一步的,所述当所述时效等级为高时效等级时,获取所述多个调度队列中的高优先级调度队列之后,所述方法还包括:
[0024]获取所述待调度任务集的所需队列资源及任务权重;
[0025]对所述任务权重进行标准化,得到标准权重;
[0026]根据所述标准权重对所述待调度任务集中的待调度任务进行所述高优先级调度队列的队列分配,得到初始队列分配结果;
[0027]将所述初始队列分配结果与所述所需队列资源进行对比,得到剩余队列资源;
[0028]将所述剩余队列资源重新分配给所述待调度任务集中的剩余待调度任务进行任务调度

[0029]进一步的,所述获取与每个所述待调度任务相对应的优先级及与每个所述待调度任务相对应的任务所需运行时长,包括:
[0030]获取每个所述待调度任务的历史运行时长,根据所述历史运行时长确定所述任务所需运行时长;
[0031]获取每个所述待调度任务的任务类型,并识别所述任务类型的所属的任务紧急程度等级;
[0032]根据所述任务紧急程度等级及所述任务所需运行时长确定每个所述待调度任务的优先级

[0033]进一步的,所述识别所述待调度任务集对应的多个调度队列之前,所述方法还包括:
[0034]配置所述待调度任务集的多个队列数量,以及每个队列的队列等级,其中,所述队列等级包括高优先级队列及低优先级队列;
[0035]获取所述低优先级队列在不同时段的资源费用,基于所述资源费用为所述低优先级队列配置不同时段对应的资源容量,以生成低优先级调度队列;
[0036]获取所述高优先级队列的多个子队列,识别每个所述子队列的子队列权重,基于所述子队列权重为所述高优先级队列配置每个所述子队列对应的资源容量,以生成高优先级调度队列;
[0037]合并所述高优先级调度队列及所述低优先级调度队列,得到所述多个调度队列

[0038]为了解决上述技术问题,本申请实施例还提供一种任务调度装置,采用了如下所
述的技术方案:
[0039]获取模块,用于获取待调度任务集,其中,所述待调度任务集包括若干个待调度任务

与每个所述待调度任务相对应的优先级及与每个所述待调度任务相对应的任务所需运行时长;
[0040]第一识别模块,用于根据所述优先级及所述任务所需运行时长识别所述待调度任务集中每个待调度任务的时效等级;
[0041]第二识别模块,用于识别所述待调度任务集对应的多个调度队列;及
[0042]调度模块,用于基于所述多个调度队列及所述时效等级为所述待调度任务集进行任务调度

[0043]为了解决上述技术问题,本申请实施例还提供一种设备,采用了如下所述的技术方案:
[0044]存储器,存储至少一个计算机程序;及
[0045]处理器,执行所述存储器中存储的计算机程序以实现上述所述的任务调度方法

[0046]为了解决上述技术问题,本申请实施例还提供一种计算机可读介质,采用了如下所述的技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种任务调度方法,其特征在于,包括下述步骤:获取待调度任务集,其中,所述待调度任务集包括若干个待调度任务

与每个所述待调度任务相对应的优先级及与每个所述待调度任务相对应的任务所需运行时长;根据所述优先级及所述任务所需运行时长识别所述待调度任务集中每个待调度任务的时效等级;识别所述待调度任务集对应的多个调度队列;基于所述多个调度队列及所述时效等级为所述待调度任务集进行任务调度
。2.
根据权利要求1所述的任务调度方法,其特征在于,所述根据所述优先级及所述任务所需运行时长识别所述待调度任务集中每个待调度任务的时效等级,包括:获取所述待调度任务集的时效策略,并将每个所述待调度任务对应的所述任务所需运行时长与所述时效策略中的时效运行时长进行对比,得到对比结果;判断所述对比结果及所述优先级是否满足预设时效条件;当所述对比结果及所述优先级满足所述预设时效条件时,确定所述待调度任务的时效等级为高时效等级;当所述对比结果及所述优先级未满足所述预设时效条件时,确定所述待调度任务的时效等级为低时效等级
。3.
根据权利要求1所述的任务调度方法,其特征在于,所述基于所述多个调度队列及所述时效等级为所述待调度任务集进行任务调度,包括:当所述时效等级为高时效等级时,获取所述多个调度队列中的高优先级调度队列;遍历所述高优先级调度队列的可用资源量,得到多个子队列的子队列权重;选取所述子队列权重最高的子队列为所述待调度任务集进行任务调度;当所述时效等级为低时效等级时,获取所述多个调度队列中的低优先级调度队列;获取所述待调度任务的预估费用,并根据所述预估费用及所述任务所需运行时长确定所述待调度任务的目标时段;从所述低优先级调度队列中选取所述目标时段对应的低优先级调度队列为所述待调度任务集进行任务调度
。4.
根据权利要求3所述的任务调度方法,其特征在于,所述当所述时效等级为高时效等级时,获取所述多个调度队列中的高优先级调度队列之后,所述方法还包括:获取所述待调度任务集的所需队列资源及任务权重;对所述任务权重进行标准化,得到标准权重;根据所述标准权重对所述待调度任务集中的待调度任务进行所述高优先级调度队列的队列分配,得到初始队列分配结果;将所述初始队列分配结果与所述所需队列资源进行对比,得到剩余队列资源;将所述剩余队列资源重新分配给所述待调度任务集中的剩余待调度任务进行任务调度
。5.
根据权利要求1‑4中任一项所述的任务调度方法,其特征在于,所述获取与每个所述待调度任务相对应的优先级及与每个所述待调度任务相对应的任务所需运行时长,包括:获取...

【专利技术属性】
技术研发人员:王富霖陈道长
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:

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

1