CN110609745A - 一种作业任务的执行方法、装置、电子设备、存储介质 - Google Patents

一种作业任务的执行方法、装置、电子设备、存储介质 Download PDF

Info

Publication number
CN110609745A
CN110609745A CN201810621461.9A CN201810621461A CN110609745A CN 110609745 A CN110609745 A CN 110609745A CN 201810621461 A CN201810621461 A CN 201810621461A CN 110609745 A CN110609745 A CN 110609745A
Authority
CN
China
Prior art keywords
job task
task
resource
job
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810621461.9A
Other languages
English (en)
Inventor
陶涛
李杰亮
黄岩
尚晶
李光瑞
郭志伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongchang (suzhou) Software Technology Co Ltd
China Mobile Communications Group Co Ltd
Original Assignee
Zhongchang (suzhou) Software Technology Co Ltd
China Mobile Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongchang (suzhou) Software Technology Co Ltd, China Mobile Communications Group Co Ltd filed Critical Zhongchang (suzhou) Software Technology Co Ltd
Priority to CN201810621461.9A priority Critical patent/CN110609745A/zh
Publication of CN110609745A publication Critical patent/CN110609745A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种作业任务的执行方法、装置、电子设备、存储介质,用以解决集群资源利用率低的问题。方法包括:获取待执行的第一作业任务针对每种资源的理论需求量;获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;判断当前保存的集群针对每种资源的剩余量是否不小于获取的对应种资源的理论需求量;若均为是,将第一作业任务及其针对每种资源的理论需求量发送给集群,使集群采用每种资源的理论需求量执行第一作业任务。因为根据相同类型的其他作业任务对资源的实际使用情况,为该第一作业任务确定资源量,在一定程度上提高了集群资源的利用率。

Description

一种作业任务的执行方法、装置、电子设备、存储介质
技术领域
本发明涉及大数据技术领域,特别涉及一种作业任务的执行方法、装置、电子设备、存储介质。
背景技术
随着科技的进步,大数据从科学前沿逐渐深入到各行业。在对大数据进行执行时,一般的,将一个作业流程包括的每个作业任务提交给集群进行执行,集群为该作业流程分配每种资源的资源量,用来执行该作业流程中的每个作业任务,其中资源可以包括CPU,运行内存,并发容器等。
在现有技术中,集群在为该作业流程分配每种资源的资源量时,是管理人员根据经验为该作业流程设置的每种资源的资源量。管理人员针对每个作业流程分配相应的资源量时,为该作业流程中每个作业任务分配的资源量是相同的。而集群在执行每个作业任务时,对每种资源的实际需求量可能是不同的,针对同一资源,有的作业任务需要的资源量较少,有的作业任务需要的资源量较多。
在为作业流程分配相应的资源量时,必须要保证该作业流程中的每个作业任务都可以被正常执行,则针对实际需求量较多的作业任务,为其分配的资源量在其被执行时使用的较多,资源浪费的较少,但针对于实际需求量较少的作业任务,其被执行时使用的较少,资源浪费的较多。
综上,集群在执行作业流程中的作业任务时,对为作业流程分配的资源造成了浪费,导致集群的资源利用率不是很高。在集群性能压力很大时,集群资源紧张时,性能越来越低下,就没有能力执行较大的数据量,甚至导致集群无法正常工作。
发明内容
本发明实施例公开了一种作业任务的执行方法、装置、电子设备、存储介质,用以解决现有技术中集群在执行作业任务时,资源利用率低的问题。
为达到上述目的,本发明实施例公开了一种作业任务的执行方法,所述方法包括:
当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,所述方法还包括:
判断所述第一作业任务是否位于任务对列中;
如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,获取所述第一作业任务针对每种资源的理论需求量包括:
判断是否保存有所述第一作业任务针对每种资源的理论需求量;
如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;
如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,资源包括以下至少一种:
并发容器、运行内存、CPU。
进一步地,
如果所述资源包括并发容器,根据集群执行每个其他作业任务时针对并发容器的实际使用量,确定所述第一作业任务针对并发容器的理论需求量包括:
根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时针对运行内存的实际使用量,确定所述第一作业任务针对运行内存的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时针对CPU的实际使用量,确定所述第一作业任务针对CPU的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,识别存在待执行的第一作业任务的过程包括:
判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述方法还包括:
将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,所述判断任务对列中是否保存有未被执行的第二作业任务包括:
按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,所述方法还包括:
将第四作业任务的状态更新为已执行完成。
本发明实施例公开了一种作业任务的执行装置,所述装置包括:
识别模块,用于识别是否存在待执行的第一作业任务;
获取模块,用于当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
判断模块,用于根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
发送模块,用于在所述判断模块的判断结果均为是时,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
本发明实施例公开了一种电子设备,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,所述收发机,用于在所述处理器的控制下,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,所述处理器,还用于判断所述第一作业任务是否位于任务对列中;如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,所述处理器,具体用于判断是否保存有所述第一作业任务针对每种资源的理论需求量;如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,资源包括以下至少一种:
并发容器、运行内存、CPU。
进一步地,
如果所述资源包括并发容器,所述处理器,还用于根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,所述处理器,还用于判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述处理器,还用于将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,所述处理器,具体用于按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,所述处理器,还用于将第四作业任务的状态更新为已执行完成。
本发明实施例公开了一种电子设备,所述电子设备包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述任一项所述方法的步骤。
本发明实施例公开了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述任一项所述方法的步骤。
本发明实施例公开了一种作业任务的执行方法、装置、电子设备、存储介质,方法包括:当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;根据每种资源,判断当前保存的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;如果均为是,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。由于在本发明实施例中,针对每个待执行的第一作业任务,根据集群在执行与第一作业任务的类型相同的其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量,因为本发明实施例中根据相同类型的其他作业任务对资源的实际使用情况,为该待执行的第一作业任务确定资源量,在一定程度上提高了集群资源的利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种作业任务的执行过程示意图;
图2为本发明实施例提供的一种作业任务的执行过程示意图;
图3为本发明实施例提供的一种作业任务的执行过程示意图;
图4为本发明实施例9提供的一种作业任务的执行过程示意图;
图5为本发明实施例10提供的一种作业任务的执行过程示意图;
图6为本发明实施例11提供的一种作业任务的执行装置结构图;
图7为本发明实施例12提供的一种电子设备;
图8为本发明实施例13提供的一种电子设备。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
图1为本发明实施例1提供的一种作业任务的执行过程示意图,该过程包括以下步骤:
S101:当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与第一作业任务的类型相同的每个其他作业任务时,针对每种资源的实际使用量确定的。
本发明实施例提供的作业任务的执行方法应用于电子设备,该电子设备可以是手机、平板电脑、笔记本电脑、服务器等。
电子设备可以识别是否存在待执行的作业任务,将待执行的作业任务称为第一作业任务。
电子设备中针对每种类型的作业任务,预先保存有该类型对应的每种资源,不同类型的作业任务对应的资源可以是不同的,一般情况下,每种类型的作业任务对应的每种资源大致是相同的,如CPU资源,内存资源等。电子设备当识别存在待执行的第一作业任务时,可以识别该第一作业任务的类型,根据预设保存有该类型的作业任务对应的每种资源,获取该第一作业任务针对每种资源的理论需求量。
电子设备获取到的第一作业任务针对每种资源的理论需求量的确定过程,根与第一作业任务的类型相同的每个其他作业任务有关,具体的,第一作业任务针对每种资源的理论需求量根据与第一作业任务的类型相同的每个其他作业任务在集群上被执行时,针对每种资源的实际使用量确定的。其他作业任务可以是预设时间段内集群执行的每个作业任务,该预设时间段可以较长,例如可以是1天,2天,也可以较短,例如可以是10分钟等。
上述的过程可以是电子设备中的执行引擎模块来处理的。也就是电子设备中的执行引擎模块识别是否存在待执行的第一作业任务,当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量。
执行作业任务的集群可以理解为服务器集群,服务器集群执行作业任务的过程属于现有技术。
S102:根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量,如果均为是,则执行S103,如果有至少一个为否,则执行S104。
电子设备在获取到第一作业任务针对每种资源的理论需求量后,可以判断集群是否有足够的资源执行该第一作业任务,因此需要获取集群针对每种资源的剩余量。电子设备可以按照预设的时间周期获取集群资源的剩余量并保存,则电子设备获取到的集群针对每种资源的剩余量可以是当前自身保存的;电子设备也可以是当前向集群获取其针对每种资源的剩余量。获取集群针对每种资源的剩余量的过程可以是电子设备中的监控告警模块处理的。
当获取到第一作业任务针对每种资源的理论需求量,以及集群针对每种资源的剩余量后,可以判断集群是否有足够的资源执行该第一作业任务,具体可以针对每种资源,判断集群针对该种资源的剩余量是否不小于获取到的理论需求量,如果针对每种资源,集群的剩余量均不小于理论需求量,则认为集群有足够的资源执行该第一作业任务。
上述判断集群针对每种资源的剩余量是否不小于获取的第一作业任务针对每种资源的理论需求量的过程,可以是电子设备中的执行引擎模块处理的。
S103:将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
当电子设备确定集群针对每种资源的剩余量均不小于获取到的第一作业任务针对对应资源的理论需求量后,说明集群有足够的资源执行该第一作业任务,就可以将该第一作业任务发送给集群进行执行。为了使集群采用合理的资源执行该第一作业任务,在将该第一作业任务发送给集群时,还可以将获取到的第一作业任务针对每种资源的理论需求量发送给集群。集群在接收到第一作业任务及其针对每种资源的理论需求量后,可以为该第一作业任务分配对应资源的理论需求量,采用每种资源的理论需求量执行该第一作业任务。
电子设备在将第一作业任务及获取的其针对每种资源的理论需求量发送给集群时,可以是自身中的执行引擎模块进行发送的,也可以是通过自身中的组件进行发送的。电子设备识别预先保存的该第一作业任务对应的组件agent,电子设备中的执行引擎模块可以将该第一作业任务及获取的其针对每种资源的理论需求量发送给该第一作业任务对应的组件agent,该第一作业任务对应的组件agent进行初始化作业实例,将第一作业任务及获取的其针对每种资源的理论需求量发送给集群。
电子设备在保存每个作业任务对应的组件agent时,可以是根据作业任务的类型进行保存的,在识别预先保存有该第一作业任务对应的组件agent时,可以是先识别第一作业任务的类型,判断是否保存有处理该类型的作业任务的组件agent,如果有,则将处理该类型的作业任务的组件agent作为该第一作业任务对应的组件agent。
由于在本发明实施例中,针对每个待执行的第一作业任务,根据集群在执行与第一作业任务的类型相同的其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量,因为本发明实施例中根据相同类型的其他作业任务对资源的实际使用情况,为该待执行的第一作业任务确定资源量,在一定程度上提高了集群资源的利用率。
实施例2:
在上述各实施例的基础上,在本发明实施例中,如图1所示,如果集群针对至少一种资源的剩余量小于获取的该资源对应的理论需求量,即S102的判断结果为:至少一个为否时,执行以下过程:
S104:判断所述第一作业任务是否位于任务对列中;如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
在本发明实施例中,如果针对某种资源,集群针对该种资源的剩余量小于获取到的该种资源的理论需求量,则认为当前集群没有足够的资源来执行该第一作业任务,则不能将该第一作业任务发送给集群进行执行。
电子设备中预先保存有任务对列,针对集群不能及时执行的作业任务,可以先将其添加到的任务对列中。集群在执行完某个作业任务时,占用的资源会被释放,则集群的资源的剩余量就会增加,因此可以等待集群有足够的资源来执行该作业任务时,再将该作业任务从任务对列中获取出来,提交给集群进行执行,该任务对列中的获取出来的作业任务在任务对列中被删除。
电子设备当确定当前保存的集群针对至少一种资源的剩余量小于获取的对应资源的理论需求量时,可以判断该第一作业任务是否位于任务对列中,如果不位于任务对列中,则将该第一作业任务添加到任务对列中;如果第一作业任务位于任务对列中,电子设备可以不进行添加到任务对列中的操作。
任务对列中的作业任务可以是预先保存的,电子设备可以将未执行的作业任务均放置于任务对列中,为了节省后续确定资源的理论需求量的过程,节省计算资源,以及使集群可以及时处理作业任务,电子设备可以保存获取到的第一作业任务针对每种资源的理论需求量。
如果在确定集群针对至少一种资源的剩余量小于获取的对应资源的理论需求量后,才会将作业任务添加到任务对列中的,当待执行的第一作业任务位于任务对列中时,则之前一定获取过该第一作业任务针对每种资源的理论需求量。一般情况下,在之前添加到任务对列时,就已经保存了第一作业任务针对每种资源的理论需求量。则在本次的判断结果为第一作业任务位于任务对列中时,可以保持原有的理论需求量不变。
如果在确定集群针对至少一种资源的剩余量小于获取的对应资源的理论需求量后,才会将作业任务添加到任务对列中的,且当前该第一作业任务不位于任务对列中,说明之前可能未进行确定集群的资源剩余量是否满足第一作业任务的理论需求量的过程,之前也就可能未保存过第一作业任务针对每种资源的理论需求量,则在本次将第一作业任务添加到对列中时,还可以保存第一作业任务针对每种资源的理论需求量。保存的理论需求量可以是保存到任务对列中,也可以是保存到其他的位置,只要电子设备知道保存到哪里,后续可以找到并使用即可。
该实施例中的过程,可以是电子设备中的执行引擎模块处理的。
实施例3:
在上述各实施例的基础上,在本发明实施例中,获取所述第一作业任务针对每种资源的理论需求量包括:
判断是否保存有所述第一作业任务针对每种资源的理论需求量;
如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;
如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
在本发明实施例中,电子设备在识别到存在待执行的第一作业任务时,可以获取第一作业任务针对每种资源的理论需求量。
电子设备在确定获取到的集群针对至少一种资源的剩余量小于对应资源的理论需求量时,即集群没有足够的资源执行该第一作业任务时,将该第一作业任务添加到任务对列中,并保存作业任务针对每种资源的理论需求量,当集群再次获取到待执行的第一任务时,为了快速地获取到第一作业任务针对每种资源的理论需求量,以及节省计算资源,电子设备可以是先判断自身是否保存有该第一作业任务针对每种资源的理论需求量;如果保存有,可以直接利用,则将保存的每种类型的资源的理论需求量,作为获取到的该第一作业任务的针对每种资源的理论需求量;如果未保存,电子设备则可以确定第一作业任务针对每种资源的理论需求量,将确定出的作为获取到的。
电子设备中预先保存有集群在执行每种类型的作业任务时,针对每种资源的实际使用量。电子设备具体可以是保存集群执行所有的作业任务的实际使用量,为了节省空间,也可以是保存预设时间段内的。
电子设备在确定第一作业任务针对每种资源的理论需求量时,可以是先识别第一作业任务的类型,并识别出与该第一作业任务的类型相同的其他作业任务,根据集群在执行每个其他作业任务时,针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
资源可以包括以下至少一种:并发容器、运行内存、CPU。
如果资源包括并发容器,在确定并发容器的理论需求量时,可以是识别集群在执行每个其他作业任务时针对并发容器的实际使用数量,确定其平均值,因为并发容器的数量是整数,并且需要保证该第一作业任务在集群上被正常执行,则可以对该平均值进行向上取整,将向上取整后的数值作为第一作业任务针对并发容器的理论需求量。
如果资源包括运行内存,在确定运行内存的理论需求量时,可以是识别出集群在执行每个其他作业任务时针对运行内存的实际使用量,将运行内存的实际使用量的最大值作为第一作业任务针对运行内存的理论需求量。
如果资源包括CPU,在确定CPU的理论需求量时,可以是识别出集群在执行每个其他作业任务时针对CPU的实际使用量,并且识别出CPU的实际使用量的最大值,因为CPU的数量是整数,并且需要保证该第一作业任务在集群上被正常执行,则可以对该最大值进行向上取整,将向上取整后的数值作为第一作业任务针对CPU的理论需求量。CPU的实际使用量根据每个其他作业任务分配的CPU的数量以及每个CPU的利用率确定,具体的可以是针对每个其他作业任务,将每个CPU的利用率相加,得到该作业任务针对CPU的实际使用量。
该实施例中的获取第一作业任务针对每种资源的理论需求量的过程,可以是电子设备中的执行引擎模块处理的。
实施例4:
为了使确定的第一作业任务针对每种资源的理论需求量更加准确,在上述各实施例的基础上,在本发明实施例中,如果所述资源包括并发容器,根据集群执行每个其他作业任务时针对并发容器的实际使用量,确定所述第一作业任务针对并发容器的理论需求量包括:
根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;
根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时针对运行内存的实际使用量,确定所述第一作业任务针对运行内存的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;
根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时针对CPU的实际使用量,确定所述第一作业任务针对CPU的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;
根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
在本发明实施例中,每个作业任务都有其对应的数据量,电子设备确定每个作业任务的数据量的过程属于现有技术。集群在执行每个其他作业任务时,会使用一定数量的并发容器。一般情况下,作业任务的数据量与集群执行该作业任务时使用的并发容器的数量有一定的关系。电子设备可以根据每个其他作业任务的数据量,及集群执行每个其他作业任务时实际使用的并发容器的数量,确定数据量与并发容器的数量的对应关系。将其他作业任务的数据量称为第二数据量,将实际使用的并发容器的数量称为第二数量。集群执行每个其他作业任务时实际使用的并发容器的第二数量即每个其他作业任务针对并发容器的实际使用量。
因为其他作业任务与待执行的第一作业任务的类型相同,在确定数据量与并发容器的数量的对应关系时,不能代表其他类型的对应关系,则可以将该对应关系作为该类型的作业任务的对应关系。
该对应关系可以是并发容器的数量关于作业任务的数据量的函数表达式。
当确定出了该类型的作业任务的数据量与并发容器的数量的对应关系后,就可以根据识别出的第一作业任务的数据量,以及确定出的该类型的作业任务的对应关系,确定第一作业任务针对并发容器的理论需求量了。
第一作业任务的数据量称为第一数据量。具体可以是将该第一数据量输入到并发容器的数量关于作业任务的数据量的函数表达式中,将函数表达式的输出结果作为确定出的该第一作业任务针对并发容器的理论需求量。
在本发明实施例中,集群在执行每个作业任务时会占用一定的运行内存,电子根据集群在执行每个其他作业任务时实际使用的运行内存,即针对运行内存的实际使用量,确定其平均值,根据平均值确定第一作业任务针对运行内存的理论需求量。
具体可以是将运行内存的平均值作为确定的运行内存的理论需求量,为了保证集群能够正常的执行该第一作业任务,以及提高执行该第一作业任务的速率,可以对平均值采用向上取整的方式,将平均值向上取整后的数值作为第一作业任务针对运行内存的理论需求量。
在本发明实施例中,集群在执行每个作业任务时,会占用一定数量的CPU,针对占用的每个CPU,有其对应的利用率,每个CPU的利用率的和为作业任务针对CPU的实际使用量。电子设备在确定第一作业任针对CPU的理论需求量时,可以根据其他作业任务针对CPU的实际使用量的平均值确定的,具体的可以是每个其他作业针对CPU的实际使用量的平均值作为第一作业任针对CPU的理论需求量,因为CPU的数量是整数,所以在确定理论需求量时,可以是对CPU的平均值进行向上取整,将向上取整后的数值作为CPU的理论需求量。
该实施例中的确定第一作业任务针对每种资源的理论需求量的过程,可以是电子设备中的执行引擎模块处理的。
实施例5:
在上述各实施例的基础上,在本发明实施例中,识别存在待执行的第一作业任务的过程包括:
判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
电子设备可以将未执行的作业任务均放置于任务对列中。
根据上述实施例的描述,也可以是电子设备在确定集群针对至少一种资源的剩余量小于获取的对应资源的理论需求量时,会判断第一作业任务是否位于任务对列中,如果不位于,则将第一作业任务添加到任务对列中,则该任务对列中保存的第二作业任务为集群针对至少一种资源的剩余量小于获取的该第二作业任务针对该种资源的理论需求量的在作业任务。由此可以得到,任务对列中的作业任务为集群不能及时执行的作业任务。电子设备在识别是否存在待执行的第一作业任务时,可以是判断任务对列中是否保存有未被执行的作业任务,将任务对列中的未被执行的作业任务称为第二作业任务。任务队列中的作业任务有其对应的优先级,该优先级可以是人为规定的,也可以是根据该作业任务的类型确定的。例如数据加工类型的优先级高于算法类型,算法类型的优先级高于数据加工类型。
电子设备在确定任务对列中保存有第二作业任务时,可以识别任务对列中的每个第二作业任务的优先级,识别出优先级最高的第二作业任务,将优先级最高的第二作业任务确定为待执行的第一作业任务。
在本发明实施例中,如图2所示,电子设备中的设计开发模块接收用户在显示界面的托拉拽操作,生成包含至少两个作业任务的作业流程,并接收用户输入的针对该作业流程的优先级;设计开发模块向调度引擎模块发送携带该作业流程及对应的优先级的调度请求;调度引擎模块将该作业流程添加到调度对列中,并保存该作业流程对应的优先级;调度引擎模块根据监控告警模块监控到的集群的资源情况,以及该作业流程对应的优先级,判断当前是否执行该作业流程;如果是,调度引擎模块将作业流程发送给执行引擎模块。
如图3所示,执行引擎模块接收调度引擎发送的待调度的作业流程,解析所述作业流程中包括的至少两个作业任务;根据所述作业流程中的每个作业任务的执行顺序,将每个作业任务映射至有向图的每个节点上,则有向图上的每个节点代表一个作业任务。将作业流程中的作业任务称为第三作业任务。
执行引擎模块根据有向图上的节点识别存在待执行的第一作业任务,并获取其对应的理论资源量。执行引擎模块将该第一作业任务及获取的其针对每种资源的理论需求量发送给该第一作业任务对应的组件agent,该第一作业任务对应的组件agent进行初始化作业实例,将第一作业任务及获取的其针对每种资源的理论需求量发送给集群。
电子设备在识别是否存在待执行的第一作业任务时,可以是根据当前保存的待调度的作业流程转化的有向图确定的。
每个作业任务在被从作业流程中解析出来,至被集群执行完成,其经历的过程大致包括:a、获取其针对每种资源的理论需求量;b、将其及获取到的每种资源的理论需求量发送给集群;c、集群采用每种资源的理论需求量执行作业任务;d、执行完该作业任务。
在执行a及之前,该作业任务的状态可以是未被执行;在执行完a之后,在执行b及之前,该作业任务的状态可以是等待分配资源;在执行完b之后,在执行c即之前,该作业任务的状态可以是执行中,在执行完c,也就是执行d及之后,该作业任务的状态可以是执行完成。
电子设备在根据当前保存的待调度的作业流程转化的有向图,确定是否存在待执行的第一作业任务时,可以是判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
在根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务时,具体可以是判断该有向图上是否存在标记的状态为未被执行的节点。
在根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务时,可以是识别标记的状态为未被执行的节点中是否存在入度为0的节点,如果存在,将该入度为0的节点对应的作业流程作为待执行的第一作业任务。
因为入度为0的节点指有向图中的点不作为任何边的终点,也就是说,这一点所连接的边都把这一点作为起点。入度为0的节点对应的第三作业任务也就是执行顺序最靠前的第三作业任务。
在一个作业流程中,入度为0的节点可以只有一个,也可以有多个。在将某个第三作业任务提交给集群进行处理,监控到集群对该第三作业任务执行完成后,需要对有向图进行重新排序,也就是将该第三作业任务对应的有向图上的节点删除,以及删除与这一节点连接的所有边,以便后续准确地确定出入度为0的节点,进一步准确地找到待执行的第一作业任务。
实施例5:
为了准确地识别出是否存在待执行的第一作业任务,可以根据作业任务的执行情况,对该作业任务的状态进行更新。在上述各实施例的基础上,在本发明实施例中,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述方法还包括:
将该第三作业任务的状态由未被执行更新为等待分配资源。
在本发明实施例中,为了保证电子设备在确定是否存在待执行的第一作业任务时,不会将作业流程中的第三作业任务重复确定为待执行的第一作业任务,导致重复执行。在获取到第三作业任务针对每种资源的理论需求量之后,可以对该第三作业任务的状态进行更新,具体为将该第三作业任务的状态由未被执行更新为等待分配资源,在进行更新时,具体为将该第三作业任务对应的有向图上的节点的状态由未被执行更新为等待分配资源。
根据上述各实施例的描述,如果待执行的第一作业任务为,作业流程转化的有向图上标记为未被执行的,且入度为0的节点对应的第三作业任务,在确定出该第一作业任务针对每种资源的理论需求量后,确定监控模块获取到的集群的资源的剩余量是否满足该有向图上的作业任务针对资源的理论需求量;如果不满足,将该第一作业任务添加到任务队列中。
如果将任务对列中的第二作业任务作为待执行的第一作业任务,因为任务对列中作业任务已经被更新为等待分配资源,因此可以无需进行状态更新。
实施例6:
在上述各实施例的基础上,在本发明实施例中,所述判断任务对列中是否保存有未被执行的第二作业任务包括:
按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
在本发明实施例中,电子设备中预先保存有预设的时间间隔,可以是1s,3s,或其他的时间间隔,电子设备在识别是否存在待执行的第一作业任务时,可以是判断任务对列中是否保存有未被执行的第二作业任务。
电子设备在判断任务对列中是否保存有未被执行的第二作业任务时,具体可以是按照预设的时间将该判断任务对列中是否保存有未被执行的第二作业任务。
电子设备将作业任务提交给集群进行执行,电子设备中的监控告警模块可以监控集群对作业任务的执行情况。
监控告警模块具体监控集群在执行作业任务时的运行时间、运行状态、资源申请量和资源使用量等。监控告警模块对集群进行监控的过程属于现有技术,在本发明实施例中不进行赘述。
综上,可以得到电子设备可以监控到集群是否执行完作业任务,将集群执行完的作业任务称为第四作业任务,集群在执行完某个第四作业任务时,集群的资源得到释放,为了使集群更快地执行作业任务,提高作业任务执行的效率。电子设备在判断任务对列中是否保存有未被执行的第二作业任务时,可以是在监控到集群执行完第四作业任务后,判断任务对列中是否存在有未被执行的第二作业任务。
实施例7:
为了使电子设备可以更加准确地识别出待执行的作业任务,在上述各实施例的基础上,在本发明实施例中,在监控到集群对第四作业任务执行完成后,所述方法还包括:
将第四作业任务的状态更新为已执行完成。
在本发明实施例中,电子设备将作业任务发送给集群进行执行,集群执行完成的作业任务称为第四作业任务,电子设备在监控到集群对第四作业任务执行完成后,可以对第四作业的状态进行更新,可以将该第四作业任务的状态更新为已执行完成。第四作业任务在集群未执行完成之前的处于执行中的状态,在对第四作业任务的状态进行更新时,可以是将第四作业任务的状态由执行中更新为已执行完成。
在将第四作业任务的状态更新为已执行完成时,具体可以是将该第四作业任务对应的有向图上的节点的状态更新为已执行完成。
实施例8:
上述提到监控告警模块可以对集群进行监控。以下对电子设备中的监控告警模块的功能进行具体的描述。
监控告警模块从功能上分为监控和告警两大功能,从业务上分为agent的监控告警和作业流程的监控告警。综合来说就有了四大功能。
Agent监控是指实时监控agent的状态。Agent的状态主要包括正常、启动中、关闭。用户在运维中可以对agent进行的操作包括重启、停止和启动等三项操作。
Agent告警是指通过在监控告警模块设置,对agent的某些状态进行告警,如关闭状态、被重启了以及停止操作;并将相应的状态通过邮件或者短信的方式发送给运维人员。用户能够方便的知道agent是否正常或者是否有异常操作。
作业流程监控是指实时监控运行的作业的状态。主要会记录下作业的运行时间、运行状态、资源申请量和资源使用量。方便后续的利用这些数据进行分析,智能优化作业的资源量。
作业流程告警是指对作业任务的运行情况进行告警,方便用户能够得知实时的作业任务运行状况。告警分为四种情况,分别为:作业任务成功告警、作业任务失败重试后告警、作业任务运行时长超时告警、作业任务运行超过时间点告警。
其中作业任务成功告警是方便用户知道对核心作业的运行状态。
作业任务失败重试后告警是在作业任务运行失败后,间隔一定的时间后,重新恢复作业任务的运行,恢复一定次数后,对作业任务运行仍然失败的情况进行告警,方便用户得知作业流程的运行状态,能够及时做出处理。
作业任务运行时长超时告警是指作业任务的实时运行时间已经超过了设置的最大运行时间,作业惹怒还在继续运行,可能有异常,提醒用户进行排查处理。
作业任务运行超过时间点告警是指作业任务的实时运行时刻超过了设定的时刻,作业任务没有如期执行结束,可能会影响其他作业任务或者环境可能有问题,需要进行排查处理。
电子设备中设置有agent管理模块,用来管理组件agent。agent主要分内置的agent和自定义的agent两部分。其中内置的agent能够支持大多数的数据处理任务。
内置的agent只有查询、生效、禁用操作。其中生效是指agent可用,在设计开发页面是可以进行使用的,并且是启动并注册到执行引擎上的;禁用是指agent是不可用的,即在设计开发页面状态是灰掉的,无法进行设计,并且没有启动以及注册到执行引擎上。
自定义的agent是指需要用户按照执行引擎提供的sdk接口,自行实现满足自身数据处理需求的agent。通过自定义agent模块前端页面,将自行实现的agent上传到电子设备内。自定义agent部分相对于内置的agent,多了一个删除的功能,即可以将不再使用的agent进行删除。自定义agent组件功能给电子设备带来了极大的可扩展性,使调度系统变得更加通用。当现有的内置的agent组件无法满足数据处理需求时,用户可以通过自行实现agent进行支持,极大的丰富了大数据处理的能力。
电子设备中预先保存的组件agent,可以是电子设备内置的组件agent,也可以是自定义的组件agent,自定义组件agent的过程属于现有技术,在本发明实施例中不进行赘述。
每种组件agent可以执行对应类型的作业任务,作业任务的类型可以包括数据加工类型,算法类型等。
执行数据加工类型的作业任务的组件agent可以对数据进行各种转换加工操作,以满足用户对数据的转换加工需求。内置组件agent支持的转换操作包括缺值处理、去重、去极值、条件过滤、条件替换、排序、抽样、区间化、归一化、统计汇总、隐私化、去隐私化等等。基本满足数据加工的各类需求。如不满足用户需求,用户可以通过自定义agent自行支持符合自己需求的组件。
执行算法类型的作业任务的组件agent可以执行数据挖掘的算法,用来分析数据,并挖掘出数据内在的价值。内置组件agent可以用于执行内置的分类算法,如决策树、随机森林、朴素贝叶斯等;内置的聚类算法,如K-Means算法;内置的回归算法,如ALS、基于物品的推荐等。如不满足用户需求,用户可以通过自定义agent自行支持符合自己需求的组件。
除了上述两类外,作业任务还会有其他类型,处理该其他类型的组件agent可以执行数据的抽取和数据的装载。内置的组件agent可以执行抽取数据库、抽取文件传输协议FTP(File Transfer Protocol)、装载数据库以及装载FTP等等。
实施例9:
图4为本发明实施例提供的作业任务的执行方法的流程图,agent管理模块根据执行引擎模块提供的api接口实现agent,包括内置的agent组件,用户也可以自定义,方便扩展调度能力;设计开发模块接收用户的托拉拽操作,形成待调度的作业流程,并接收用户配置的作业流程的优先级,将该作业流程及对应的优先级发送给调度引擎模块;调度引擎模块在确定调度满足时,将作业流程发送给执行引擎模块;执行引擎模块对该的作业流程进行解析处理,优化资源量,生成发送计划,并依次发送给集群进行执行;监控告警模块监控作业任务的执行状态,反馈给调度引擎模块及执行引擎模块。
实施例10:
图5为本发明实施例提供的作业任务的执行方法的流程图:
(1)、执行引擎模块识别存在一个待调度的作业流程时,将该作业流程转换为有向图,有向图上的每个节点对应作业流程中的每个作业任务;
(2)、对该有向图进行排序;
(3)、判断该有向图上是否存在状态标记为被执行的节点,且该节点为入度为0的节点,如果否,则执行(4)结束,如果是,则执行(5);
(4)、结束;
(5)、将该节点对应的作业任务确定为待执行的第一作业任务,根据与该节点对应的第一作业任务的类型相同的其他作业任务,确定该节点对应的第一作业任务针对每种资源的理论需求量;
(6)、判断集群针对每种资源的剩余量是否满足每种理论需求量,如果均为是,执行(7),如果有至少一个否,执行(11);
(7)、执行引擎模块将该作业任务及对应的理论需求量发送给对应的agent组件;
(8)、agent组件初始化作业实例,将该作业任务及对应的理论需求量发送给集群;
(9)在识别存在一个待调度的作业流程时,可以加载监控告警模块,监控集群对该作业任务的执行情况,并保存;
(10)集群执行完成作业任务,执行(12),并执行(2);
(11)将该第一作业任务添加到任务对列中,并保存其对应的理论资源量,按预设的时间将,执行(12);
(12)判断优先级对列中是否存在未被执行的第二作业任务,如果是,执行(6);
当第一次对有向图进行排序时,也就是按照作业任务执行的顺序,确定了有向图,当非第一次对有向图进行排序时,是在有向图上删除已执行完成的作业任务对应的节点。
实施例11:
图6为本发明实施例提供的一种作业任务的执行装置结构图,所述装置包括:
识别模块61,用于识别是否存在待执行的第一作业任务;
获取模块62,用于当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
判断模块63,用于根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
发送模块64,用于在所述判断模块63的判断结果均为是时,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,所述装置还包括:
添加保存模块65,用于在所述判断模块63的判断结果为至少一个为否时,判断所述第一作业任务是否位于任务对列中;如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,获取模块62,具体用于判断是否保存有所述第一作业任务针对每种资源的理论需求量;如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,所述装置还包括:
确定模块66,用于如果所述资源包括并发容器,根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,识别模块61,具体用于判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述装置还包括:
更新模块67,用于将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,识别模块61,具体用于按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,所述装置还包括:
更新模块67,用于将第四作业任务的状态更新为已执行完成。
实施例12:
图7为本发明实施例提供的一种电子设备,所述电子设备包括:处理器71、存储器72和收发机73;
在图7中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器71代表的一个或多个处理器71和存储器72代表的存储器72的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。收发机73可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器71负责管理总线架构和通常的处理,存储器72可以存储处理器71在执行操作时所使用的数据。
可选的,处理器71可以是CPU(中央处埋器)、ASIC(Application SpecificIntegrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。
所述处理器,用于读取所述存储器中的程序,执行下列过程:当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,所述收发机,用于在所述处理器的控制下,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,所述处理器,还用于判断所述第一作业任务是否位于任务对列中;如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,所述处理器,具体用于判断是否保存有所述第一作业任务针对每种资源的理论需求量;如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,资源包括以下至少一种:
并发容器、运行内存、CPU。
进一步地,
如果所述资源包括并发容器,所述处理器,还用于根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,所述处理器,还用于判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述处理器,还用于将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,所述处理器,具体用于按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,所述处理器,还用于将第四作业任务的状态更新为已执行完成。
实施例13:
图8为本发明实施例提供的一种电子设备,所述电子设备包括:处理器81、通信接口82、存储器83和通信总线84,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行以下步骤:
当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,判断所述第一作业任务是否位于任务对列中;
如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,判断是否保存有所述第一作业任务针对每种资源的理论需求量;
如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;
如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,
如果所述资源包括并发容器,根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,将第四作业任务的状态更新为已执行完成。
上述各实施例中的电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口,用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例14:
本发明实施例提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行以下步骤:
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行以下步骤:
当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
进一步地,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,判断所述第一作业任务是否位于任务对列中;
如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
进一步地,判断是否保存有所述第一作业任务针对每种资源的理论需求量;
如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;
如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
进一步地,
如果所述资源包括并发容器,根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
进一步地,判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
进一步地,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,将该第三作业任务的状态由未被执行更新为等待分配资源。
进一步地,按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
进一步地,在监控到集群对第四作业任务执行完成后,将第四作业任务的状态更新为已执行完成。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全应用实施例、或结合应用和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式执行机或其他可编程数据执行设备的执行器以产生一个机器,使得通过计算机或其他可编程数据执行设备的执行器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据执行设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据执行设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的执行,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (21)

1.一种作业任务的执行方法,其特征在于,所述方法包括:
当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
2.如权利要求1所述的方法,其特征在于,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,所述方法还包括:
判断所述第一作业任务是否位于任务对列中;
如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
3.如权利要求2所述的方法,其特征在于,获取所述第一作业任务针对每种资源的理论需求量包括:
判断是否保存有所述第一作业任务针对每种资源的理论需求量;
如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;
如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
4.如权利要求1或3所述的方法,其特征在于,资源包括以下至少一种:
并发容器、运行内存、CPU。
5.如权利要求4所述的方法,其特征在于,
如果所述资源包括并发容器,根据集群执行每个其他作业任务时针对并发容器的实际使用量,确定所述第一作业任务针对并发容器的理论需求量包括:
根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,根据集群执行每个其他作业任务时针对运行内存的实际使用量,确定所述第一作业任务针对运行内存的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,根据集群执行每个其他作业任务时针对CPU的实际使用量,确定所述第一作业任务针对CPU的理论需求量包括:
根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
6.如权利要求1所述的方法,其特征在于,识别存在待执行的第一作业任务的过程包括:
判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
7.如权利要求6所述的方法,其特征在于,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述方法还包括:
将该第三作业任务的状态由未被执行更新为等待分配资源。
8.如权利要求6所述的方法,其特征在于,所述判断任务对列中是否保存有未被执行的第二作业任务包括:
按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
9.如权利要求1或8所述的方法,其特征在于,在监控到集群对第四作业任务执行完成后,所述方法还包括:
将第四作业任务的状态更新为已执行完成。
10.一种作业任务的执行装置,其特征在于,所述装置包括:
识别模块,用于识别是否存在待执行的第一作业任务;
获取模块,用于当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;
判断模块,用于根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
发送模块,用于在所述判断模块的判断结果均为是时,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
11.一种电子设备,其特征在于,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:当识别存在待执行的第一作业任务时,获取所述第一作业任务针对每种资源的理论需求量;其中,获取到的针对每种资源的理论需求量为根据在预设时间段内集群执行与所述第一作业任务的类型相同的其他作业任务时,针对每种资源的实际使用量确定的;根据每种资源,判断当前获取的集群针对该种资源的剩余量是否不小于获取的该种资源的理论需求量;
如果均为是,所述收发机,用于在所述处理器的控制下,将所述第一作业任务及获取的其针对每种资源的理论需求量发送给集群,使集群采用所述每种资源的理论需求量执行所述第一作业任务。
12.如权利要求11所述的电子设备,其特征在于,如果集群针对至少一种资源的剩余量小于获取的该资源的对应理论需求量,所述处理器,还用于判断所述第一作业任务是否位于任务对列中;如果否,则将所述第一作业任务添加到任务对列中,并保存所述第一作业任务针对每种资源的理论需求量。
13.如权利要求12所述的电子设备,其特征在于,所述处理器,具体用于判断是否保存有所述第一作业任务针对每种资源的理论需求量;如果是,则将保存的每种资源的理论需求量作为获取到的所述第一作业任务针对每种资源的理论需求量;如果否,则识别所述第一作业任务的类型,根据保存的在预设时间段内集群执行所述类型的每个其他作业任务时针对每种资源的实际使用量,确定所述第一作业任务针对每种资源的理论需求量。
14.如权利要求11或13所述的电子设备,其特征在于,资源包括以下至少一种:
并发容器、运行内存、CPU。
15.如权利要求14所述的电子设备,其特征在于,
如果所述资源包括并发容器,所述处理器,还用于根据每个其他作业任务的第二数据量,及集群执行每个其他作业任务时实际使用的并发容器的第二数量,确定所述类型的作业任务的数据量与并发容器的数量的对应关系;根据识别出的所述第一作业任务的第一数据量,以及确定出的所述对应关系,确定所述第一作业任务针对并发容器的理论需求量;
如果所述资源包括运行内存,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的运行内存,确定运行内存的平均值;根据运行内存的平均值,确定所述第一作业任务针对运行内存的理论需求量;
如果所述资源包括CPU,所述处理器,还用于根据集群执行每个其他作业任务时实际使用的CPU,确定CPU的平均值;根据CPU的平均值,确定所述第一作业任务针对CPU的理论需求量。
16.如权利要求11所述的电子设备,其特征在于,所述处理器,还用于判断任务对列中是否保存有未被执行的第二作业任务;如果是,则根据任务对列中的每个第二作业任务的优先级,将优先级最高的第二作业任务确定为待执行的第一作业任务;或,
根据当前保存的待调度的作业流程转化的有向图,判断包含至少两个作业任务的作业流程中是否存在未被执行的第三作业任务;如果是,则根据有向图上的入度为0的节点,将作业流程中的执行顺序最靠前的第三作业任务确定为待执行的第一作业任务。
17.如权利要求16所述的电子设备,其特征在于,如果待执行的第一作业任务为作业流程中的未被执行的第三作业任务,在获取到所述待执行的第一作业任务针对每种资源的理论需求量之后,所述处理器,还用于将该第三作业任务的状态由未被执行更新为等待分配资源。
18.如权利要求16所述的电子设备,其特征在于,所述处理器,具体用于按预设的时间间隔判断任务对列中是否保存有未被执行的第二作业任务;或,
在监控到集群对第四作业任务执行完成后,判断任务对列中是否保存有未被执行的第二作业任务。
19.如权利要求11或18所述的电子设备,其特征在于,在监控到集群对第四作业任务执行完成后,所述处理器,还用于将第四作业任务的状态更新为已执行完成。
20.一种电子设备,其特征在于,所述电子设备包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1-9任一项所述方法的步骤。
21.一种计算机可读存储介质,其特征在于,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行权利要求1-9任一项所述方法的步骤。
CN201810621461.9A 2018-06-15 2018-06-15 一种作业任务的执行方法、装置、电子设备、存储介质 Pending CN110609745A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810621461.9A CN110609745A (zh) 2018-06-15 2018-06-15 一种作业任务的执行方法、装置、电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810621461.9A CN110609745A (zh) 2018-06-15 2018-06-15 一种作业任务的执行方法、装置、电子设备、存储介质

Publications (1)

Publication Number Publication Date
CN110609745A true CN110609745A (zh) 2019-12-24

Family

ID=68888369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810621461.9A Pending CN110609745A (zh) 2018-06-15 2018-06-15 一种作业任务的执行方法、装置、电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN110609745A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221629A (zh) * 2020-01-09 2020-06-02 上海沄界信息科技有限公司 计算资源使用量量化方法及装置
CN111324470A (zh) * 2020-01-20 2020-06-23 北京百度网讯科技有限公司 用于生成信息的方法及装置
CN111552569A (zh) * 2020-04-28 2020-08-18 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质
CN111597037A (zh) * 2020-04-15 2020-08-28 北京文思海辉金信软件有限公司 作业分配方法、装置、电子设备及可读存储介质
CN111722928A (zh) * 2020-06-12 2020-09-29 北京字节跳动网络技术有限公司 一种资源调度方法、装置、电子设备及存储介质
CN111985531A (zh) * 2020-07-10 2020-11-24 招联消费金融有限公司 异常资源需求集群的确定方法、装置、设备和存储介质
CN112965803A (zh) * 2021-03-22 2021-06-15 共达地创新技术(深圳)有限公司 Ai模型生成方法及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699440A (zh) * 2012-09-27 2014-04-02 北京搜狐新媒体信息技术有限公司 一种云计算平台系统为任务分配资源的方法和装置
CN104391749A (zh) * 2014-11-26 2015-03-04 北京奇艺世纪科技有限公司 一种资源分配方法及装置
CN106528216A (zh) * 2016-10-26 2017-03-22 深圳市金立通信设备有限公司 一种启动应用程序的方法及终端
CN107179945A (zh) * 2017-03-31 2017-09-19 北京奇艺世纪科技有限公司 一种资源分配方法及装置
CN107239335A (zh) * 2017-06-09 2017-10-10 中国工商银行股份有限公司 分布式系统的作业调度系统及方法
CN107343023A (zh) * 2017-05-25 2017-11-10 北京奇艺世纪科技有限公司 一种Mesos管理集群中的资源分配方法、装置及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699440A (zh) * 2012-09-27 2014-04-02 北京搜狐新媒体信息技术有限公司 一种云计算平台系统为任务分配资源的方法和装置
CN104391749A (zh) * 2014-11-26 2015-03-04 北京奇艺世纪科技有限公司 一种资源分配方法及装置
CN106528216A (zh) * 2016-10-26 2017-03-22 深圳市金立通信设备有限公司 一种启动应用程序的方法及终端
CN107179945A (zh) * 2017-03-31 2017-09-19 北京奇艺世纪科技有限公司 一种资源分配方法及装置
CN107343023A (zh) * 2017-05-25 2017-11-10 北京奇艺世纪科技有限公司 一种Mesos管理集群中的资源分配方法、装置及电子设备
CN107239335A (zh) * 2017-06-09 2017-10-10 中国工商银行股份有限公司 分布式系统的作业调度系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘雄: "《实战Matlab之并行程序设计》", 31 March 2012, 北京航空航天大学出版社 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221629A (zh) * 2020-01-09 2020-06-02 上海沄界信息科技有限公司 计算资源使用量量化方法及装置
CN111221629B (zh) * 2020-01-09 2023-09-05 上海沄界信息科技有限公司 计算资源使用量量化方法及装置
CN111324470A (zh) * 2020-01-20 2020-06-23 北京百度网讯科技有限公司 用于生成信息的方法及装置
CN111324470B (zh) * 2020-01-20 2023-11-07 北京百度网讯科技有限公司 用于生成信息的方法及装置
CN111597037A (zh) * 2020-04-15 2020-08-28 北京文思海辉金信软件有限公司 作业分配方法、装置、电子设备及可读存储介质
CN111552569A (zh) * 2020-04-28 2020-08-18 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质
CN111552569B (zh) * 2020-04-28 2023-10-20 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质
CN111722928A (zh) * 2020-06-12 2020-09-29 北京字节跳动网络技术有限公司 一种资源调度方法、装置、电子设备及存储介质
CN111985531A (zh) * 2020-07-10 2020-11-24 招联消费金融有限公司 异常资源需求集群的确定方法、装置、设备和存储介质
CN111985531B (zh) * 2020-07-10 2023-12-01 招联消费金融有限公司 异常资源需求集群的确定方法、装置、设备和存储介质
CN112965803A (zh) * 2021-03-22 2021-06-15 共达地创新技术(深圳)有限公司 Ai模型生成方法及电子设备

Similar Documents

Publication Publication Date Title
CN110609745A (zh) 一种作业任务的执行方法、装置、电子设备、存储介质
CN111625331B (zh) 任务调度方法、装置、平台、服务器及存储介质
US9870269B1 (en) Job allocation in a clustered environment
CN105049268A (zh) 分布式计算资源分配系统和任务处理方法
CN112667376A (zh) 任务调度处理方法、装置、计算机设备及存储介质
CN111338791A (zh) 集群队列资源的调度方法、装置、设备及存储介质
US20160062929A1 (en) Master device, slave device and computing methods thereof for a cluster computing system
CN115373835A (zh) Flink集群的任务资源调整方法、装置及电子设备
CN112486642B (zh) 资源调度方法、装置、电子设备及计算机可读存储介质
CN112148468A (zh) 一种资源调度方法、装置、电子设备及存储介质
CN111381970A (zh) 集群任务的资源分配方法及装置、计算机装置及存储介质
CN111651595A (zh) 一种异常日志处理方法及装置
CN113886069A (zh) 一种资源分配方法、装置、电子设备及存储介质
CN105874426A (zh) 一种系统调用命令的批处理方法及装置
CN115756822A (zh) 高性能计算应用性能调优的方法及系统
CN112860387A (zh) 分布式任务调度方法、装置、计算机设备及存储介质
CN109992408B (zh) 一种资源分配方法、装置、电子设备和存储介质
CN114416849A (zh) 数据处理方法、装置、电子设备及存储介质
CN112099937A (zh) 一种资源治理方法和装置
US11693702B2 (en) Systems and methods for managing usage of computing resources
CN111143033B (zh) 基于可伸缩操作系统的操作执行方法及装置
CN112749062A (zh) 服务端程序监控方法、装置、计算机设备及存储介质
CN111782466A (zh) 一种大数据任务资源利用检测方法及装置
CN109670932B (zh) 信贷数据核算方法、装置、系统和计算机存储介质
CN116881003A (zh) 资源分配方法、装置、服务设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20191224

RJ01 Rejection of invention patent application after publication