CN112948092A - 批量作业的调度方法、装置、电子设备及存储介质 - Google Patents
批量作业的调度方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112948092A CN112948092A CN202110341974.6A CN202110341974A CN112948092A CN 112948092 A CN112948092 A CN 112948092A CN 202110341974 A CN202110341974 A CN 202110341974A CN 112948092 A CN112948092 A CN 112948092A
- Authority
- CN
- China
- Prior art keywords
- batch job
- batch
- running
- information
- computing node
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/5038—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种批量作业的调度方法、装置、电子设备及存储介质,其中,在本申请提供的批量作业的调度方法中,首先获取各个批量作业信息。然后将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。接着按照各个批量作业信息,对各个批量作业划分优先级。再结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。然后获取各个计算节点的资源可用度。最后基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种批量作业的调度方法、装置、电子设备及存储介质。
背景技术
随着大数据技术的发展,越来越多的行业重视到数据的重要性,大数据加工已经成为很多企业经营的基础。批量作业是企业科技的一项重要环节,如何有效的保证批量作业按时完成,不影响业务的开展已经成为批量运维工程师日常工作的重心。
而在现有技术中,在进行批量作业调度时,并没有一种很好的调度策略能够较准确地预测出批量作业的运行时长,从而对批量作业进行合理的调度,导致出现某些批量作业运行任务的失败率较大或者批量作业运行任务不能及时完成的问题。例如,当碰上业务高峰期的时候,待处理数据就会激增,此时如果不能根据各个批量作业的运行时长合理调度批量作业的运行,那么可能就会出现有些计算节点的资源消耗过于紧张,造成批量作业阻塞,而有些计算节点又处于空闲状态的情况。
发明内容
有鉴于此,本申请提供一种批量作业的调度方法、装置、电子设备及存储介质,以解决现有技术中不能准确地预测出批量作业的运行时长,从而对批量作业进行合理的调度,导致出现某些批量作业运行任务的失败率较大或者批量作业运行任务不能及时完成的问题。
为实现上述目的,本申请提供如下技术方案:
本申请第一方面公开了一种批量作业的调度方法,包括:
获取各个批量作业信息;
将各个所述批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个所述批量作业的运行时长,其中,所述批量作业运行预测模型预先根据历史批量作业运行数据构建得到;
按照各个所述批量作业信息,对各个所述批量作业划分优先级;
结合各个所述批量作业的运行时长以及各个所述批量作业的优先级,对各个所述批量作业的运行顺序进行排序;
获取各个计算节点的资源可用度;
基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度。
可选的,上述的方法,所述批量作业运行预测模型的构建过程,包括:
获取所述历史批量作业运行数据;
利用皮尔逊相关系数对所述历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素;
基于所述影响因素,建立多个预测模型;
通过计算各个所述预测模型的平均绝对误差,筛选出最优预测模型,作为所述批量作业运行预测模型。
可选的,上述的方法,所述获取各个计算节点的资源可用度,包括:
对各个所述计算节点进行资源监测;
针对每一个所述计算节点,获取各个所述计算节点的资源消耗信息,其中,所述资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息;
利用所述资源消耗信息,计算出每一个所述计算节点的资源可用度。
可选的,上述的方法,所述基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度,包括:
按照各个所述批量作业的运行顺序,依次对每一个所述批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点;
将所述当前待运行的批量作业分配至筛选出的计算节点上运行。
可选的,上述的方法,还包括:
对各个所述批量作业的运行情况进行监控;
若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息。
本申请第二方面公开了一种批量作业的调度装置,包括:
第一获取单元,用于获取各个批量作业信息;
预测单元,用于将各个所述批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个所述批量作业的运行时长,其中,所述批量作业运行预测模型预先根据历史批量作业运行数据构建得到;
等级划分单元,用于按照各个所述批量作业信息,对各个所述批量作业划分优先级;
排序单元,用于结合各个所述批量作业的运行时长以及各个所述批量作业的优先级,对各个所述批量作业的运行顺序进行排序;
第二获取单元,用于获取各个计算节点的资源可用度;
调度单元,用于基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度。
可选的,上述的装置,所述预测单元,包括:
第一获取子单元,用于获取所述历史批量作业运行数据;
分析子单元,用于利用皮尔逊相关系数对所述历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素;
模型建立子单元,用于基于所述影响因素,建立多个预测模型;
第一筛选子单元,用于通过计算各个所述预测模型的平均绝对误差,筛选出最优预测模型,作为所述批量作业运行预测模型。
可选的,上述的装置,所述第二获取单元,包括:
监测子单元,用于对各个所述计算节点进行资源监测;
第二获取子单元,用于针对每一个所述计算节点,获取各个所述计算节点的资源消耗信息,其中,所述资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息;
计算子单元,用于利用所述资源消耗信息,计算出每一个所述计算节点的资源可用度。
可选的,上述的装置,所述调度单元,包括:
第二筛选子单元,用于按照各个所述批量作业的运行顺序,依次对每一个所述批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点;
分配子单元,用于将所述当前待运行的批量作业分配至筛选出的计算节点上运行。
可选的,上述的装置,还包括:
监控单元,用于对各个所述批量作业的运行情况进行监控;
信息生成单元,用于若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息。
本申请第三方面公开了一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如本发明第一方面中任意一项所述的方法。
本申请第四方面公开了一种计算机存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如本发明第一方面中任意一项所述的方法。
从上述技术方案可以看出,本申请提供的批量作业的调度方法中,首先获取各个批量作业信息。然后将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。接着按照各个批量作业信息,对各个批量作业划分优先级。再结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。然后获取各个计算节点的资源可用度。最后基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。由此可知,利用本申请的调度方法,可以通过批量作业运行预测模型预测到各个批量作业的运行时长,然后再结合各个计算节点的资源可用度,对各个批量作业进行合理的调度。解决了现有技术不能准确预测批量作业的运行时长,对批量作业进行合理调度,所导致的某些批量作业运行任务失败率较大或批量作业运行任务不能及时完成的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种批量作业的调度方法的流程图;
图2为本申请另一实施例公开的步骤S102中批量作业运行预测模型的构建的过程的一种实施方式的流程图;
图3为本申请另一实施例公开的一种批量作业的调度装置的示意图;
图4为本申请另一实施例公开的一种电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
并且,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
由背景技术可知,在现有技术中,在进行批量作业调度时,并没有一种很好的调度策略能够较准确地预测出批量作业的运行时长,从而对批量作业进行合理的调度,一旦当碰上业务高峰期的时候,待处理数据就会激增,此时如果不能根据各个批量作业的运行时长合理调度批量作业的运行,那么可能就会出现有些计算节点的资源消耗过于紧张,造成批量作业阻塞,而有些计算节点又处于空闲状态的情况。
鉴于此,本申请提供一种批量作业的调度方法、装置、电子设备及存储介质,以解决现有技术中不能准确地预测出批量作业的运行时长,从而对批量作业进行合理的调度,导致出现某些批量作业运行任务的失败率较大或者批量作业运行任务不能及时完成的问题。
本申请实施例提供了一种批量作业的调度方法,如图1所示,具体包括:
S101、获取各个批量作业信息。
需要说明的是,当接收需要执行的批量作业时,首先获取各个批量作业的信息,其中,批量作业信息包括批量作业名称、批量作业所属的业务类别、批量作业的数据等信息。
S102、将各个批量作业信息输入到预先构建的批量作业运行预测模型,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。
需要说明的是,在获取到各个批量作业的信息之后,将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,从而预测出各个批量作业所对应的运行时长。只有能够准确的预测出各个批量作业所对应的运行时长,才能根据各个批量作业所对应的运行时长对各个批量作业进行合理的调度,避免批量作业调度过程中出现时间冲突。其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。
可选的,在本申请的另一实施例中,上述步骤S102中批量作业运行预测模型的构建过程的一种实施方式,如图2所示,具体包括:
S201、获取历史批量作业运行数据。
需要说明的是,在构建批量作业运行预测模型时,需要获取大量的历史批量作业运行数据作为数据样本,用于对各个批量作业进行影响批量作业运行的影响因素的相关性分析。
S202、利用皮尔逊相关系数对历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素。
需要说明的是,通过计算皮尔逊相关系数对历史批量作业运行数据进行相关性分析,量化影响因素与批量运行的相关关系。其中,皮尔逊相关系数的计算公式如下:
其中x和y分别代表影响因素和批量运行,n为样本容量,记为{x1,x2,...xn}和{y1,y2,...yn},用r(x,y)表示变量x和y的相关系数,和为均值。利用该公式就可以分析得到影响批量作业运行的影响因素。
S203、基于影响因素,建立多个预测模型。
需要说明的是,在分析得到影响作业批量运行的影响因素之后,基于相关影响因素,再结合历史批量作业运行的历史数据建立多个关于批量作业运行的相关预测模型。其中,可以分别利用最小二乘回归模型、弹性网模型、随机森林模型、梯度提升树模型建立批量作业运行的相关预测模型。
S204、通过计算各个预测模型的平均绝对误差,筛选出最优预测模型,作为批量作业运行预测模型。
需要说明的是,在建立多个批量作业运行的相关预测模型之后,为了从中筛选出最优预测模型,可以通过计算各个预测模型的平均绝对误差作为一项重要指标进行筛选。因为平均绝对误差可以避免误差因正负而相互抵消的问题,可以准确反映实际预测误差的大小。其中,各个预测模型的平均绝对误差的计算公式如下:
S103、按照各个批量作业信息,对各个批量作业划分优先级。
需要说明的是,根据获取到的各个批量作业的名称、批量作业所属的业务类别、批量作业的数据等信息,对各个批量作业划分优先级。因为有些业务的批量作业重要性比较高,在进行批量作业调度时,应该安排核心业务的批量作业在对应计算节点优先运行。
S104、结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。
需要说明的是,在获取到各个批量作业的运行时长以及各个批量作业的优先级的信息之后,则结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。例如优先级越高的批量作业的运行顺序应该更高,同时在各个批量作业的优先级的基础上,结合各个批量作业的运行时长,根据时间合理安排各个批量作业的运行顺序,避免出现例如某个批量作业因上一个批量作业的运行时长过长而导致运行任务不能及时完成的情况发生。因此,根据各个批量作业的运行时长对各个批量作业的运行任务进行调度也是至关重要的一项,避免了多个批量作业的运行时间发生冲突对整个批量作业运行任务产生影响。
S105、获取各个计算节点的资源可用度。
需要说明的是,为了能过保证各个批量作业能够调度到合适的计算节点上运行,那么掌握各个计算节点的资源情况也是必不可少的,因此需要获取各个计算节点的资源可用度,才能根据各个计算节点的资源可用度对批量作业进行调度,降低批量作业的运行失败率。
可选的,在本申请的另一实施例中,上述步骤105的一种实施方式,可以包括:
对各个计算节点进行资源监测。
针对每一个计算节点,获取各个计算节点的资源消耗信息,其中,资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息。
利用资源消耗信息,计算出每一个计算节点的资源可用度。
需要说明的是,对各个计算节点上的资源进行实时监测,这样就可以掌握每一个计算节点的实时情况,获取到各个计算节点的资源消耗信息,其中,资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息等一系列关于计算节点的信息。然后,就可以根据获取到的计算节点的资源消耗信息,以及计算节点本身初始资源容量,计算出每一个计算节点的资源可用度。
S106、基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。
需要说明的是,在获取到各个批量作业的运行顺序以及各个计算节点的资源可用度,便结合各个批量作业的运行顺序以及各个计算节点的资源可用度,合理对各个批量作业的运行进行调度。
可选的,在本申请的另一实施例中,步骤S106的一种实施方式,可以包括:
按照各个批量作业的运行顺序,依次对每一个批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点。
将当前待运行的批量作业分配至筛选出的计算节点上运行。
需要说明的是,首先按照各个批量作业的运行顺序,依次对每一个批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点,然后将当前待运行的批量作业分配至筛选出的计算节点上运行。每分配一个批量作业的运行任务,就会更新当前分配批量作业运行任务的计算节点的资源可用度,然后再按照各个批量作业的运行顺序,继续筛选资源可用度可满足当前待运行的批量作业运行需求的计算节点进行分配,直至所有的批量作业都调度完成。
本申请实施例提供的批量作业的调度方法中,首先获取各个批量作业信息。然后将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。接着按照各个批量作业信息,对各个批量作业划分优先级。再结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。然后获取各个计算节点的资源可用度。最后基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。由此可知,利用本申请的调度方法,可以通过批量作业运行预测模型预测到各个批量作业的运行时长,然后再结合各个计算节点的资源可用度,对各个批量作业进行合理的调度。解决了现有技术不能准确预测批量作业的运行时长,对批量作业进行合理调度,所导致的某些批量作业运行任务失败率较大或批量作业运行任务不能及时完成的问题。
可选的,在本申请的另一实施例中,上述批量作业的调度方法,还可以包括:
对各个批量作业的运行情况进行监控;
若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息。
需要说明的是,为了防止某些意外情况下,出现批量作业运行失败导致导致影响后续批量作业的运行任务,可以各个批量作业的运行情况进行监控,若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息,提醒工作人员采取相关的处理措施。
本申请另一实施例还公开了一种批量作业的调度装置,如图3所示,具体包括:
第一获取单元301,用于获取各个批量作业信息。
预测单元302,用于将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。
等级划分单元303,用于按照各个批量作业信息,对各个批量作业划分优先级。
排序单元304,用于结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。
第二获取单元305,用于获取各个计算节点的资源可用度。
调度单元306,用于基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。
本申请实施例提供的批量作业的调度装置中,首先第一获取单元301获取各个批量作业信息。然后预测单元302将各个批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个批量作业的运行时长,其中,批量作业运行预测模型预先根据历史批量作业运行数据构建得到。接着等级划分单元303按照各个批量作业信息,对各个批量作业划分优先级。排序单元304再结合各个批量作业的运行时长以及各个批量作业的优先级,对各个批量作业的运行顺序进行排序。然后第二获取单元305获取各个计算节点的资源可用度。最后调度单元306基于各个批量作业的运行顺序以及各个计算节点的资源可用度,对批量作业的运行进行调度。由此可知,利用本申请的调度方法,可以通过批量作业运行预测模型预测到各个批量作业的运行时长,然后再结合各个计算节点的资源可用度,对各个批量作业进行合理的调度。解决了现有技术不能准确预测批量作业的运行时长,对批量作业进行合理调度,所导致的某些批量作业运行任务失败率较大或批量作业运行任务不能及时完成的问题。
本实施例中,第一获取单元301、预测单元302、等级划分单元303、排序单元304、第二获取单元305以及调度单元306的具体执行过程,可参见对应图1的方法实施例内容,此处不再赘述。
可选的,在本申请的另一实施例中,预测单元302的一种实施方式,包括:
第一获取子单元,用于获取历史批量作业运行数据。
分析子单元,用于利用皮尔逊相关系数对历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素。
模型建立子单元,用于基于影响因素,建立多个预测模型。
第一筛选子单元,用于通过计算各个预测模型的平均绝对误差,筛选出最优预测模型,作为批量作业运行预测模型。
本实施例中,第一获取子单元、分析子单元、模型建立子单元、第一筛选子单元的具体执行过程,可参见对应图2的方法实施例内容,此处不再赘述。
可选的,在本申请的另一实施例中,第二获取单元305的一种实施方式,包括:
监测子单元,用于对各个计算节点进行资源监测。
第二获取子单元,用于针对每一计算节点,获取各个计算节点的资源消耗信息,其中,资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息。
计算子单元,用于利用资源消耗信息,计算出每一个计算节点的资源可用度。
本实施例中,监测子单元、第二获取子单元、计算子单元的具体执行过程,可参见对应上述方法实施例内容,此处不再赘述。
可选的,在本申请的另一实施例中,调度单元306的一种实施方式,包括:
第二筛选子单元,用于按照各个批量作业的运行顺序,依次对每一个批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点。
分配子单元,用于将当前待运行的批量作业分配至筛选出的计算节点上运行。
本实施例中,第二筛选子单元、分配子单元的具体执行过程,可参见对应上述方法实施例内容,此处不再赘述。
可选的,在本申请的另一实施例中,上述批量作业的调度装置,还可以包括:
监控单元,用于对各个批量作业的调度情况进行监控。
信息生成单元,用于若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息。
本实施例中,监控单元、信息生成单元的具体执行过程,可参见对应上述方法实施例内容,此处不再赘述。
本申请另一实施例还提供了一种电子设备,如图4所示,具体包括:
一个或多个处理器401。
存储装置402,其上存储有一个或多个程序。
当一个或多个程序被一个或多个处理器401执行时,使得一个或多个处理器401实现如上述实施例中任意一项方法。
本申请另一实施例还提供了计算机存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如上述实施例中任意一项方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种批量作业的调度方法,其特征在于,包括:
获取各个批量作业信息;
将各个所述批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个所述批量作业的运行时长,其中,所述批量作业运行预测模型预先根据历史批量作业运行数据构建得到;
按照各个所述批量作业信息,对各个所述批量作业划分优先级;
结合各个所述批量作业的运行时长以及各个所述批量作业的优先级,对各个所述批量作业的运行顺序进行排序;
获取各个计算节点的资源可用度;
基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度。
2.根据权利要求1所述的方法,其特征在于,所述批量作业运行预测模型的构建过程,包括:
获取所述历史批量作业运行数据;
利用皮尔逊相关系数对所述历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素;
基于所述影响因素,建立多个预测模型;
通过计算各个所述预测模型的平均绝对误差,筛选出最优预测模型,作为所述批量作业运行预测模型。
3.根据权利要求1所述的方法,其特征在于,所述获取各个计算节点的资源可用度,包括:
对各个所述计算节点进行资源监测;
针对每一个所述计算节点,获取各个所述计算节点的资源消耗信息,其中,所述资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息;
利用所述资源消耗信息,计算出每一个所述计算节点的资源可用度。
4.根据权利要求1所述的方法,其特征在于,所述基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度,包括:
按照各个所述批量作业的运行顺序,依次对每一个所述批量作业,筛选出资源可用度可满足当前待运行的批量作业运行需求的计算节点;
将所述当前待运行的批量作业分配至筛选出的计算节点上运行。
5.根据权利要求1所述的方法,其特征在于,还包括:
对各个所述批量作业的运行情况进行监控;
若检测到有某个批量作业运行失败,则生成当前批量作业运行失败的告警信息。
6.一种批量作业的调度装置,其特征在于,包括:
第一获取单元,用于获取各个批量作业信息;
预测单元,用于将各个所述批量作业信息输入到预先构建的批量作业运行预测模型中进行运算,得到各个所述批量作业的运行时长,其中,所述批量作业运行预测模型预先根据历史批量作业运行数据构建得到;
等级划分单元,用于按照各个所述批量作业信息,对各个所述批量作业划分优先级;
排序单元,用于结合各个所述批量作业的运行时长以及各个所述批量作业的优先级,对各个所述批量作业的运行顺序进行排序;
第二获取单元,用于获取各个计算节点的资源可用度;
调度单元,用于基于各个所述批量作业的运行顺序以及各个所述计算节点的资源可用度,对所述批量作业的运行进行调度。
7.根据权利要求6所述的装置,其特征在于,所述预测单元,包括:
第一获取子单元,用于获取所述历史批量作业运行数据;
分析子单元,用于利用皮尔逊相关系数对所述历史批量作业运行数据进行相关性分析,得到影响作业批量运行的影响因素;
模型建立子单元,用于基于所述影响因素,建立多个预测模型;
第一筛选子单元,用于通过计算各个所述预测模型的平均绝对误差,筛选出最优预测模型,作为所述批量作业运行预测模型。
8.根据权利要求6所述的装置,其特征在于,所述第二获取单元,包括:
监测子单元,用于对各个所述计算节点进行资源监测;
第二获取子单元,用于针对每一个所述计算节点,获取各个所述计算节点的资源消耗信息,其中,所述资源消耗信息包括磁盘信息、处理器信息以及正在运行的批量作业信息;
计算子单元,用于利用所述资源消耗信息,计算出每一个所述计算节点的资源可用度。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至5中任意一项所述的方法。
10.一种计算机存储介质,其特征在于,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110341974.6A CN112948092A (zh) | 2021-03-30 | 2021-03-30 | 批量作业的调度方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110341974.6A CN112948092A (zh) | 2021-03-30 | 2021-03-30 | 批量作业的调度方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948092A true CN112948092A (zh) | 2021-06-11 |
Family
ID=76230683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110341974.6A Pending CN112948092A (zh) | 2021-03-30 | 2021-03-30 | 批量作业的调度方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948092A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584567A (zh) * | 2022-03-04 | 2022-06-03 | 中国银行股份有限公司 | 基于区块链的批量作业处理方法及装置 |
-
2021
- 2021-03-30 CN CN202110341974.6A patent/CN112948092A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584567A (zh) * | 2022-03-04 | 2022-06-03 | 中国银行股份有限公司 | 基于区块链的批量作业处理方法及装置 |
CN114584567B (zh) * | 2022-03-04 | 2024-04-26 | 中国银行股份有限公司 | 基于区块链的批量作业处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bhattacharjee et al. | Barista: Efficient and scalable serverless serving system for deep learning prediction services | |
CN112162865B (zh) | 服务器的调度方法、装置和服务器 | |
CN111625331B (zh) | 任务调度方法、装置、平台、服务器及存储介质 | |
US20180260746A1 (en) | Job allocation | |
CN112579273B (zh) | 任务调度方法及装置、计算机可读存储介质 | |
CN112685153A (zh) | 微服务调度方法、装置以及电子设备 | |
CN115543577B (zh) | 基于协变量的Kubernetes资源调度优化方法、存储介质及设备 | |
CN114153580A (zh) | 一种跨多集群的工作调度方法及装置 | |
CN111752706B (zh) | 资源配置方法、装置及存储介质 | |
US20080256544A1 (en) | Stateless task dispatch utility | |
CN114518945A (zh) | 一种资源调度方法、装置、设备及存储介质 | |
Keerthika et al. | A hybrid scheduling algorithm with load balancing for computational grid | |
CN109614210B (zh) | 基于能耗感知的Storm大数据节能调度方法 | |
CN112948092A (zh) | 批量作业的调度方法、装置、电子设备及存储介质 | |
Li et al. | A QoS-based scheduling algorithm for instance-intensive workflows in cloud environment | |
CN117707759A (zh) | 一种多租户gpu集群弹性配额调度方法和系统 | |
CN117350640A (zh) | 一种项目进度管理方法与系统 | |
Iglesias et al. | Increasing task consolidation efficiency by using more accurate resource estimations | |
CN116700925A (zh) | 一种基于rpa的数字员工群体协作方法 | |
CN115330219A (zh) | 一种资源调度的方法及装置 | |
Abba et al. | Design, development and performance analysis of deadline based priority heuristic for job scheduling on a grid | |
CN115187097A (zh) | 一种任务排期方法、装置、电子设备以及计算机存储介质 | |
Talia et al. | The grid backfilling: a multi-site scheduling architecture with data mining prediction techniques | |
CN110908791B (zh) | 调度方法、调度装置和调度系统 | |
Sun et al. | Quality of service of grid computing: resource sharing |
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 |