CN115981865B - 一种业务资源调度方法、装置、电子设备及存储介质 - Google Patents
一种业务资源调度方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115981865B CN115981865B CN202211743243.5A CN202211743243A CN115981865B CN 115981865 B CN115981865 B CN 115981865B CN 202211743243 A CN202211743243 A CN 202211743243A CN 115981865 B CN115981865 B CN 115981865B
- Authority
- CN
- China
- Prior art keywords
- task
- node
- time
- scheduling
- aggregation
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 230000002776 aggregation Effects 0.000 claims abstract description 122
- 238000004220 aggregation Methods 0.000 claims abstract description 122
- 238000010586 diagram Methods 0.000 claims abstract description 82
- 238000009826 distribution Methods 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000035484 reaction time Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005293 physical law Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种业务资源调度方法、装置、电子设备及存储介质,用于解决现有的业务资源调度方法资源利用率低、且业务调度效率低的技术问题。本发明包括:获取各所述任务的调度编排信息;采用所述调度编排信息生成业务时序图;基于所述业务时序图对各所述业务进行亲和性聚合,得到聚合分群;获取所述聚合分群的最低资源需求量和执行起止时间;采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;基于所述节点租赁需求获取机器节点,并按照所述节点任务分配信息将各所述任务分配至所述机器节点进行资源调度。
Description
技术领域
本发明涉及资源调度技术领域,尤其涉及一种业务资源调度方法、装置、电子设备及存储介质。
背景技术
随着云计算的崛起,资源按需动态伸缩已经成为常态。如何更加高效地实现自动伸缩服务,从而避免资源过度浪费,成为研究重点。目前开源社区基于Kubernetes方案提供了三种自动伸缩的解决方案:Pod水平自动伸缩(Horizontal Pod Autoscaler,HPA)、Pod垂直自动伸缩(Vertical Pod Autoscaler,VPA)和集群自动伸缩(Cluster Autoscaler,CA)。而在开源社区方案的基础上,引入了任务队列的机制对上述的方案进行改良,基于任务队列,能够将集群进行逻辑分组,方便对用户进行项目制管理。一方面能够对不同项目配置不同限额的计算资源,另一方面能够将不同类型的业务分到不同的任务队列中进行管理。对业务和计算资源进行更加精细化的管理。
然而,即使云计算拥有着良好的弹性能力,但弹性能力依旧会受制约于现实的物理规律,同时弹性伸缩需要依靠数据的收集和分析,默认地,开源社区只能被动地每10秒抓取一次Pod的CPU和内存使用情况。每分钟进行一次汇总分析(抓取和汇总分析频率过高也会造成资源浪费)。若新节点创建过多,会导致资源浪费。而在新节点上创建新的新Pod所需的时间共有四个主要因素决定:HPA的反应时间、CA的反应时间、Node节点的反应时间以及Pod创建的时间。在业务执行过程中创建新节点,则会导致时延,影响业务效率。
发明内容
本发明提供了一种业务资源调度方法、装置、电子设备及存储介质,用于解决现有的业务资源调度方法资源利用率低、且业务调度效率低的技术问题。
本发明提供了一种业务资源调度方法,所述业务包括若干任务;所述方法包括:
获取各所述任务的调度编排信息;
采用所述调度编排信息生成业务时序图;
基于所述业务时序图对各所述业务进行亲和性聚合,得到聚合分群;
获取所述聚合分群的最低资源需求量和执行起止时间;
采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
基于所述节点租赁需求获取机器节点,并按照所述节点任务分配信息将各所述任务分配至所述机器节点进行资源调度。
可选地,所述采用所述调度编排信息生成业务时序图的步骤,包括:
采用所述调度编排信息生成执行资源需求图;
获取各所述执行资源需求图的任务起始时间;
根据所述任务起始时间和各所述执行资源需求图生成业务时序图。
可选地,所述采用所述调度编排信息生成执行资源需求图的步骤,包括:
从所述调度编排信息中获取各所述任务的资源需求信息;
获取各所述任务之间的依赖关系;
按照所述依赖关系将所有所述任务划分为多个任务组;
获取所述任务组内各任务的调度时长;
采用所述任务组内各任务的资源需求信息和调度时长生成执行资源需求图。
可选地,所述根据所述任务起始时间和各所述执行资源需求图生成业务时序图的步骤,包括:
根据所述执行资源需求图的任务起始时间、各所述任务的调度时长和所述依赖关系,计算各任务的调度时间;
根据所述业务的所有任务的调度时间,生成所述业务的业务时序图。
可选地,所述执行起止时间包括执行起始时间和执行终止时间;所述聚合分群包括若干个聚合任务;所述获取所述聚合分群的最低资源需求量和执行起止时间的步骤,包括:
根据各所述聚合任务的调度时长、调度时间计算各聚合任务的执行结束时间;
将所述聚合任务中时间最前的调度时间作为所述聚合分群的执行起始时间;
将所述聚合任务中时间最后的执行结束时间作为所述聚合分群的执行终止时间;
获取各所述聚合任务的资源需求下限值;
计算所述聚合分群所有所述聚合任务的资源需求下限值的加和,得到所述聚合分群的最低资源需求量。
可选地,所述机器节点租赁需求包括机器节点个数和机器节点租赁时长;所述采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息的步骤,包括:
采用各所述聚合分群的最低资源需求量和预设节点资源上限确定各所述聚合分群所需的参与节点的个数;
根据各聚合分群的参与节点的个数和执行起止时间,对各所述聚合分群的参与节点进行拼接,生成若干个参与节点组合,并确定每个参与节点组合的时长;
将所述参与节点组合的个数确定为机器节点个数,将所述参与节点组合的时长确定为机器节点租赁时长;
依据每个所述参与节点组合中的任务确定节点任务分配信息。
本发明还提供了一种业务资源调度装置,所述业务包括若干任务;所述装置包括:
调度编排信息获取模块,用于获取各所述任务的调度编排信息;
业务时序图生成模块,用于采用所述调度编排信息生成业务时序图;
聚合模块,用于基于所述业务时序图对各所述业务进行亲和性聚合,得到聚合分群;
最低资源需求量和执行起止时间获取模块,用于获取所述聚合分群的最低资源需求量和执行起止时间;
机器节点租赁需求和节点任务分配信息确定模块,用于采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
调度模块,用于基于所述节点租赁需求获取机器节点,并按照所述节点任务分配信息将各所述任务分配至所述机器节点进行资源调度。
可选地,所述业务时序图生成模块,包括:
执行资源需求图生成子模块,用于采用所述调度编排信息生成执行资源需求图;
任务起始时间获取子模块,用于获取各所述执行资源需求图的任务起始时间;
业务时序图生成子模块,用于根据所述任务起始时间和各所述执行资源需求图生成业务时序图。
本发明还提供了一种电子设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行如上任一项所述的业务资源调度方法。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行如上任一项所述的业务资源调度方法。
从以上技术方案可以看出,本发明具有以下优点:本发明提供了一种业务资源调度方法,包括:获取各任务的调度编排信息;采用调度编排信息生成业务时序图;基于业务时序图对各业务进行亲和性聚合,得到聚合分群;获取聚合分群的最低资源需求量和执行起止时间;采用最低资源需求量、执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;基于节点租赁需求获取机器节点,并按照节点任务分配信息将各任务分配至机器节点进行资源调度。本发明通过生成业务中任务的业务时序图,以确定各任务的执行时间之间的关系,从而根据该关系对各任务进行亲和性聚合,以从执行时序的角度将相同时间区间内的任务划分到一起进行机器节点的分配,从而尽可能地提高机器节点资源利用率;同时,通过预先计算对机器节点的需求,可以提前创建机器节点,以在进行资源调度时可以直接调用,减少等待时间,提高了业务调度的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种业务资源调度方法的步骤流程图;
图2为本发明另一实施例提供的一种业务资源调度方法的步骤流程图;
图3为本发明实施例提供的一种初始执行资源需求图的示意图;
图4为本发明实施例提供的一种执行资源需求图的示意图;
图5为本发明实施例提供的一种业务时序图的结构示意图;
图6为以执行资源需求图为分配原则的机器节点分配示意图;
图7为本发明实施例提供的一种聚合分群划分示意图;
图8为本发明实施例提供的一种参与节点分配示意图;
图9为本发明实施例提供的一种参与节点拼接示意图;
图10为本发明实施例提供的一种业务资源调度装置的结构框图。
具体实施方式
本发明实施例提供了一种业务资源调度方法、装置、电子设备及存储介质,用于解决现有的业务资源调度方法资源利用率低、且业务调度效率低的技术问题。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明实施例提供的一种业务资源调度方法的步骤流程图。
本发明提供的一种业务资源调度方法,业务包括若干任务,方法具体可以包括以下步骤:
步骤101,获取各任务的调度编排信息;
在本发明实施例中,调度编排信息可以包括任务的名称、类型、任务的调度时间、任务所需计算资源和内存资源。
步骤102,采用调度编排信息生成业务时序图;
业务时序图,是业务中任务执行的时序图,通过业务时序图,可以了解各任务的执行先后顺序。
在获取到任务的调度编排信息后,可以基于业务的所有任务的调度编排信息来生成业务时序图。
步骤103,基于业务时序图对各业务进行亲和性聚合,得到聚合分群;
在本发明实施例中,亲和性,是指各任务彼此之间的执行时间的时间重叠度,时间重叠度越高,亲和性越强。
根据业务时序图中各业务彼此之间的时间重叠度可以对业务进行聚合,得到不同的聚合分群。同一个聚合分群中的任务的执行时间相近。
步骤104,获取聚合分群的最低资源需求量和执行起止时间;
聚合分群的最低资源需求量是聚合分群内各任务最低需求的计算资源和内存资源的总和。
执行起止时间,是聚合分群中最先开始执行的任务的开始时间和最后完成的任务的结束时间。
根据聚合分群的最低资源需求量,可以知晓聚合分群需要的节点资源上限;根据聚合分群的执行起止时间,可以知晓聚合分群需要的节点的使用时长。
步骤105,采用最低资源需求量、执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
节点资源上限,是指一个节点在单位时间内所能提供的资源上限,该资源包括计算资源和内存资源。
机器节点租赁需求是指需要租赁的已知资源上限的机器节点的租赁个数和租赁时长。
由于在云计算中,机器节点的调用是需要支付费用的,减少机器节点的租赁个数和租赁时长,可以有效节约租赁费用。同时,控制机器节点的租赁个数和租赁时长,可以在满足任务执行需求的情况下,提高资源的利用率。
节点任务分配信息是指记录了分配到机器节点运行的任务的信息,不同的机器节点会分配不同的任务。
在本发明实施例中,在获取到最低资源需求量、执行起止时间和预设节点资源上限后,可以根据执行起止时间和、最低资源需求量确定机器节点租赁需求和节点任务分配信息。
步骤106,基于节点租赁需求获取机器节点,并按照节点任务分配信息将各任务分配至机器节点进行资源调度。
在本发明实施例中,可以获取符合租赁需求的机器节点,并按照节点任务分配信息将各任务分配至相应机器节点进行资源调度,以实现任务的正常运行。
本发明通过生成业务中任务的业务时序图,以确定各任务的执行时间之间的关系,从而根据该关系对各任务进行亲和性聚合,以从执行时序的角度将相同时间区间内的任务划分到一起进行机器节点的分配,从而尽可能地提高机器节点资源利用率;同时,通过预先计算对机器节点的需求,可以提前创建机器节点,以在进行资源调度时可以直接调用,减少等待时间,提高了业务调度的效率。
请参阅图2,图2为本发明另一实施例提供的一种业务资源调度方法的步骤流程图。具体可以包括以下步骤:
步骤201,获取各任务的调度编排信息;
在本发明实施例中,调度编排信息可以包括任务的名称、类型、任务的调度时间、任务所需计算资源和内存资源。
其中,调度编排信息的示例代码如下:
步骤202,采用调度编排信息生成执行资源需求图;
资源需求图,用于表征具有依赖关系的一系列任务执行时需要的资源。资源需求图中记录中任务之间的依赖关系以及各任务的名称、类型、调度时间以及需要的资源。
在本发明实施例中,根据各任务的调度编排信息,可以生成执行系列任务的执行资源需求图。
在一个示例中,采用调度编排信息生成执行资源需求图的步骤,可以包括以下子步骤:
S21,从调度编排信息中获取各任务的资源需求信息;
S22,获取各任务之间的依赖关系;
S23,按照依赖关系将所有任务划分为多个任务组;
S24,获取任务组内各任务的调度时长;
S25,采用任务组内各任务的资源需求信息和调度时长生成执行资源需求图。
在具体实现中,一个业务可以包含若干个具有依赖关系的任务组,每一个任务组可以生成一个执行资源需求图。依赖关系是指一个任务的完成需要以另一个任务的执行结果为基础。
因此,通过获取各个任务之间的依赖关系,可以得到若干个任务组,将每个任务组按照依赖关系进行编排,可以得到如图3所示的一个初始执行资源需求图。在图3中,A、B、C、D为四个任务,其中,任务B、C的执行基础是任务A的执行结果,任务D的执行基础是任务B和任务C的执行结果。每个任务都记录有相应的类型Type(如alpine:3.7)、资源需求信息(CPU:100m,Memory:32Mi)。
考虑到每个任务的调度时长不同,基于依赖关系导致的任务的执行时间会受在先的任务的执行时间、调度时长的大小影响,为了每个任务的准确调度,可以在初始执行资源需求图中添加每个任务的调度时长,以便于计算每个任务的执行时间。相应地,其生成的携带有调度时长(Duration)的执行资源需求图如图4所示。
步骤203,获取各执行资源需求图的任务起始时间;
步骤204,根据任务起始时间和各执行资源需求图生成业务时序图;
在获取到各任务组的执行资源需求图后,可以根据各执行资源需求图的任务起始时间将各任务组按时间进行编排,得到业务的业务时序图。
在一个示例中,根据任务起始时间和各执行资源需求图生成业务时序图的步骤,可以包括以下子步骤:
S41,根据执行资源需求图的任务起始时间、各任务的调度时长和依赖关系,计算各任务的调度时间;
S42,根据业务的所有任务的调度时间,生成业务的业务时序图。
执行资源需求图的任务起始时间,是指执行资源需求图中第一个开始执行的任务的执行时间。
调度时间,是个各任务开始执行时的执行时间。
在具体实现中,可以根据执行资源需求图的任务起始时间和各任务的调度时长、依赖关系来计算各任务的调度时间。
以图4为例,任务A为该执行资源需求图中的第一个开始执行的任务,其调度时间为0分0秒,调度时长为32秒,则依赖其执行结果的任务B和任务C的调度时间为0分32秒;任务B的调度时长为35秒,任务C的调度时长为55秒;由于任务D需要依赖任务B和任务C的共同结果才能开始执行,因此任务D的调度时间以最晚结束的任务C的结束时间为基础,因此,任务D的调度时间为1分27秒。
同理可以计算各执行资源需求图中各任务的调度时间。
如图5所示,图5为本发明实施例提供的一种业务时序图的结构示意图。假设业务包括A-Z共26个任务,根据依赖关系共可形成A-D、E-G、H-I、J-O、P-V、W-Z6个任务组。其中,在业务执行过程中,任务组H-I需要执行两次。从而可以生成7个执行资源需求图。基于各执行资源需求图内任务的调度时间,可以生成相应的业务时序图。
步骤205,基于业务时序图对各业务进行亲和性聚合,得到聚合分群;
亲和性,是指各任务彼此之间的执行时间的时间重叠度,时间重叠度越高,亲和性越强。
在实际场景中,如果按照执行资源需求图来分配机器节点,则会形成如图6所示机器节点分配结果。
而由于在云计算中,机器节点的调用是需要支付费用的。按照图6的机器节点分配方式,将任务划分为三个机器节点(机器节点1、2、3),对机器节点的利用率会较低。而为了减少支付费用,则需要对机器节点的个数及租赁时间进行缩减。
在本发明实施例中,可以通过亲和性对任务进行聚合,从而使得同一时间区间的任务可以被集中处理,通过将原来分散由不同机器节点处理的任务进行集中处理,可以减少机器节点的参与个数。
在具体实现中,根据业务时序图中各业务彼此之间的时间重叠度可以对业务进行聚合,得到不同的聚合分群。同一个聚合分群中的任务的执行时间相近。
需要说明的是,本发明实施例不对聚合算法进行约束,本领域技术人员可以以亲和性为聚合条件,采取任何可行的聚合算法进行聚合。
在一个示例中,基于图5的业务时序图,可以聚合出如图7所示的聚合分群,包括聚合分群1-4。
步骤206,获取聚合分群的最低资源需求量和执行起止时间;
在获取到聚合分群后,可以计算聚合分群的最低资源需求量和执行起止时间,以为聚合分群安排节点进行资源调度。
在一个示例中,执行起止时间包括执行起始时间和执行终止时间;聚合分群包括若干个聚合任务;获取聚合分群的最低资源需求量和执行起止时间的步骤,可以包括以下子步骤:
S61,根据各聚合任务的调度时长、调度时间计算各聚合任务的执行结束时间;
S62,将聚合任务中时间最前的调度时间作为聚合分群的执行起始时间;
S63,将聚合任务中时间最后的执行结束时间作为聚合分群的执行终止时间;
S64,获取各聚合任务的资源需求下限值;
S65,计算聚合分群所有聚合任务的资源需求下限值的加和,得到聚合分群的最低资源需求量。
在实际场景中,单个机器节点的装载能力是有限的,每个任务的需求算力是一个范围,任务的需求内存也是一个范围,任务还受制于调度时间的约束。因此,根据每个任务的资源需求、调度时间和机器节点的装载能力,可以计算每个机器节点能容纳的任务数量。同理,根据聚合分群中聚合任务的资源需求量和调度时间,可以计算聚合分群需要的参与节点(预分配的机器节点)数量和租赁时长。
而在具体实现中,每个聚合分群中可以包括若干个聚合任务,根据各聚合任务的调度时长和调度时间可以计算各个聚合任务的执行结束时间,根据各任务的执行结束时间和调度时间可以计算需求的参与节点的租赁时长。根据各聚合任务的资源需求下限值,可以计算聚合分群总的最低资源需求量。
步骤207,采用最低资源需求量、执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
在本发明实施例中,可以采用最低资源需求量、执行起止时间和预设节点资源上限,来确定机器节点租赁需求和节点任务分配信息。
在一个示例中,机器节点租赁需求包括机器节点个数和机器节点租赁时长;采用最低资源需求量、执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息的步骤,包括:
S71,采用各聚合分群的最低资源需求量和预设节点资源上限确定各聚合分群所需的参与节点的个数;
S72,根据各聚合分群的参与节点的个数和执行起止时间,对各聚合分群的参与节点进行拼接,生成若干个参与节点组合,并确定每个参与节点组合的时长;
S73,将参与节点组合的个数确定为机器节点个数,将参与节点组合的时长确定为机器节点租赁时长;
S74,依据每个参与节点组合中的任务确定节点任务分配信息。
预设节点资源上限,是指参与节点(预分配的机器节点)的资源上限,同时包括计算资源上限和内存资源上限。
在具体实现中,可以根据每个聚合分群的最低资源需求量和预设节点资源上限来计算各聚合分群所需的参与节点的个数。如图8所示,a、b、c、d、e为五个参与节点。
按照参与节点的执行时间,将各参与节点进行拼接,可以得到若干个参与节点组合,其中,参与节点组合的个数,可以为机器节点个数,参与节点组合的总时长,可以为机器节点租赁时长,而每个参与节点组合中的任务即为分配给相应机器节点的节点任务(记录在节点任务分配信息中)。拼接结果如图9所示。
步骤208,基于节点租赁需求获取机器节点,并按照节点任务分配信息将各任务分配至机器节点进行资源调度。
在本发明实施例中,可以获取符合租赁需求的机器节点,并按照节点任务分配信息将各任务分配至相应机器节点进行资源调度,以实现任务的正常运行。
本发明通过生成业务中任务的业务时序图,以确定各任务的执行时间之间的关系,从而根据该关系对各任务进行亲和性聚合,以从执行时序的角度将相同时间区间内的任务划分到一起进行机器节点的分配,从而尽可能地提高机器节点资源利用率;同时,通过预先计算对机器节点的需求,可以提前创建机器节点,以在进行资源调度时可以直接调用,减少等待时间,提高了业务调度的效率。
请参阅图10,图10为本发明实施例提供的一种业务资源调度装置的结构框图。
本发明实施例提供了一种业务资源调度装置,业务包括若干任务;装置包括:
调度编排信息获取模块1001,用于获取各任务的调度编排信息;
业务时序图生成模块1002,用于采用调度编排信息生成业务时序图;
聚合模块1003,用于基于业务时序图对各业务进行亲和性聚合,得到聚合分群;
最低资源需求量和执行起止时间获取模块1004,用于获取聚合分群的最低资源需求量和执行起止时间;
机器节点租赁需求和节点任务分配信息确定模块1005,用于采用最低资源需求量、执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
调度模块1006,用于基于节点租赁需求获取机器节点,并按照节点任务分配信息将各任务分配至机器节点进行资源调度。
在本发明实施例中,业务时序图生成模块1002,包括:
执行资源需求图生成子模块,用于采用调度编排信息生成执行资源需求图;
任务起始时间获取子模块,用于获取各执行资源需求图的任务起始时间;
业务时序图生成子模块,用于根据任务起始时间和各执行资源需求图生成业务时序图。
在本发明实施例中,执行资源需求图生成子模块,包括:
资源需求信息获取单元,用于从调度编排信息中获取各任务的资源需求信息;
依赖关系获取单元,用于获取各任务之间的依赖关系;
任务组划分单元,用于按照依赖关系将所有任务划分为多个任务组;
调度时长获取单元,用于获取任务组内各任务的调度时长;
执行资源需求图生成单元,用于采用任务组内各任务的资源需求信息和调度时长生成执行资源需求图。
在本发明实施例中,业务时序图生成子模块,包括:
调度时间计算单元,用于根据执行资源需求图的任务起始时间、各任务的调度时长和依赖关系,计算各任务的调度时间;
业务时序图生成单元,用于根据业务的所有任务的调度时间,生成业务的业务时序图。
在本发明实施例中,执行起止时间包括执行起始时间和执行终止时间;聚合分群包括若干个聚合任务;最低资源需求量和执行起止时间获取模块1004,包括:
执行结束时间计算子模块,用于根据各聚合任务的调度时长、调度时间计算各聚合任务的执行结束时间;
执行起始时间确定子模块,用于将聚合任务中时间最前的调度时间作为聚合分群的执行起始时间;
执行终止时间确定子模块,用于将聚合任务中时间最后的执行结束时间作为聚合分群的执行终止时间;
资源需求下限值获取子模块,用于获取各聚合任务的资源需求下限值;
最低资源需求量确定子模块,用于计算聚合分群所有聚合任务的资源需求下限值的加和,得到聚合分群的最低资源需求量。
在本发明实施例中,机器节点租赁需求包括机器节点个数和机器节点租赁时长;机器节点租赁需求和节点任务分配信息确定模块1005,包括:
个数确定子模块,用于采用各聚合分群的最低资源需求量和预设节点资源上限确定各聚合分群所需的参与节点的个数;
时长确定子模块,用于根据各聚合分群的参与节点的个数和执行起止时间,对各聚合分群的参与节点进行拼接,生成若干个参与节点组合,并确定每个参与节点组合的时长;
机器节点个数和机器节点租赁时长确定子模块,用于将参与节点组合的个数确定为机器节点个数,将参与节点组合的时长确定为机器节点租赁时长;
节点任务分配信息确定子模块,用于依据每个参与节点组合中的任务确定节点任务分配信息。
本发明实施例还提供了一种电子设备,设备包括处理器以及存储器:
存储器用于存储程序代码,并将程序代码传输给处理器;
处理器用于根据程序代码中的指令执行本发明实施例的业务资源调度方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行本发明实施例的业务资源调度方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种业务资源调度方法,其特征在于,所述业务包括若干任务;所述方法包括:
获取各所述任务的调度编排信息;
采用所述调度编排信息生成业务时序图;
基于所述业务时序图对各所述业务进行亲和性聚合,得到聚合分群;
获取所述聚合分群的最低资源需求量和执行起止时间;
采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
基于所述节点租赁需求获取机器节点,并按照所述节点任务分配信息将各所述任务分配至所述机器节点进行资源调度;
其中,所述机器节点租赁需求包括机器节点个数和机器节点租赁时长;所述采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息的步骤,包括:
采用各所述聚合分群的最低资源需求量和预设节点资源上限确定各所述聚合分群所需的参与节点的个数;
根据各聚合分群的参与节点的个数和执行起止时间,对各所述聚合分群的参与节点进行拼接,生成若干个参与节点组合,并确定每个参与节点组合的时长;
将所述参与节点组合的个数确定为机器节点个数,将所述参与节点组合的时长确定为机器节点租赁时长;
依据每个所述参与节点组合中的任务确定节点任务分配信息。
2.根据权利要求1所述的方法,其特征在于,所述采用所述调度编排信息生成业务时序图的步骤,包括:
采用所述调度编排信息生成执行资源需求图;
获取各所述执行资源需求图的任务起始时间;
根据所述任务起始时间和各所述执行资源需求图生成业务时序图。
3.根据权利要求1所述的方法,其特征在于,所述采用所述调度编排信息生成执行资源需求图的步骤,包括:
从所述调度编排信息中获取各所述任务的资源需求信息;
获取各所述任务之间的依赖关系;
按照所述依赖关系将所有所述任务划分为多个任务组;
获取所述任务组内各任务的调度时长;
采用所述任务组内各任务的资源需求信息和调度时长生成执行资源需求图。
4.根据权利要求3所述的方法,其特征在于,所述根据所述任务起始时间和各所述执行资源需求图生成业务时序图的步骤,包括:
根据所述执行资源需求图的任务起始时间、各所述任务的调度时长和所述依赖关系,计算各任务的调度时间;
根据所述业务的所有任务的调度时间,生成所述业务的业务时序图。
5.根据权利要求4所述的方法,其特征在于,所述执行起止时间包括执行起始时间和执行终止时间;所述聚合分群包括若干个聚合任务;所述获取所述聚合分群的最低资源需求量和执行起止时间的步骤,包括:
根据各所述聚合任务的调度时长、调度时间计算各聚合任务的执行结束时间;
将所述聚合任务中时间最前的调度时间作为所述聚合分群的执行起始时间;
将所述聚合任务中时间最后的执行结束时间作为所述聚合分群的执行终止时间;
获取各所述聚合任务的资源需求下限值;
计算所述聚合分群所有所述聚合任务的资源需求下限值的加和,得到所述聚合分群的最低资源需求量。
6.一种业务资源调度装置,其特征在于,所述业务包括若干任务;所述装置包括:
调度编排信息获取模块,用于获取各所述任务的调度编排信息;
业务时序图生成模块,用于采用所述调度编排信息生成业务时序图;
聚合模块,用于基于所述业务时序图对各所述业务进行亲和性聚合,得到聚合分群;
最低资源需求量和执行起止时间获取模块,用于获取所述聚合分群的最低资源需求量和执行起止时间;
机器节点租赁需求和节点任务分配信息确定模块,用于采用所述最低资源需求量、所述执行起止时间和预设节点资源上限,确定机器节点租赁需求和节点任务分配信息;
调度模块,用于基于所述节点租赁需求获取机器节点,并按照所述节点任务分配信息将各所述任务分配至所述机器节点进行资源调度;
其中,机器节点租赁需求包括机器节点个数和机器节点租赁时长;机器节点租赁需求和节点任务分配信息确定模块,包括:
个数确定子模块,用于采用各聚合分群的最低资源需求量和预设节点资源上限确定各聚合分群所需的参与节点的个数;
时长确定子模块,用于根据各聚合分群的参与节点的个数和执行起止时间,对各聚合分群的参与节点进行拼接,生成若干个参与节点组合,并确定每个参与节点组合的时长;
机器节点个数和机器节点租赁时长确定子模块,用于将参与节点组合的个数确定为机器节点个数,将参与节点组合的时长确定为机器节点租赁时长;
节点任务分配信息确定子模块,用于依据每个参与节点组合中的任务确定节点任务分配信息。
7.根据权利要求6所述的装置,其特征在于,所述业务时序图生成模块,包括:
执行资源需求图生成子模块,用于采用所述调度编排信息生成执行资源需求图;
任务起始时间获取子模块,用于获取各所述执行资源需求图的任务起始时间;
业务时序图生成子模块,用于根据所述任务起始时间和各所述执行资源需求图生成业务时序图。
8.一种电子设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-5任一项所述的业务资源调度方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-5任一项所述的业务资源调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211743243.5A CN115981865B (zh) | 2022-12-29 | 2022-12-29 | 一种业务资源调度方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211743243.5A CN115981865B (zh) | 2022-12-29 | 2022-12-29 | 一种业务资源调度方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115981865A CN115981865A (zh) | 2023-04-18 |
CN115981865B true CN115981865B (zh) | 2024-05-07 |
Family
ID=85966459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211743243.5A Active CN115981865B (zh) | 2022-12-29 | 2022-12-29 | 一种业务资源调度方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115981865B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109725993A (zh) * | 2018-06-01 | 2019-05-07 | 中国平安人寿保险股份有限公司 | 任务执行方法、装置、设备及计算机可读存储介质 |
CN112884319A (zh) * | 2021-02-10 | 2021-06-01 | 腾讯大地通途(北京)科技有限公司 | 一种任务分配方法、装置、计算机设备以及存储介质 |
CN114896049A (zh) * | 2022-06-16 | 2022-08-12 | 中国电力科学研究院有限公司 | 电力人工智能平台作业任务调度方法、***、设备及介质 |
CN114896067A (zh) * | 2022-05-26 | 2022-08-12 | 中国平安人寿保险股份有限公司 | 任务请求信息的自动生成方法、装置、计算机设备及介质 |
CN115098240A (zh) * | 2022-07-25 | 2022-09-23 | 中诚华隆计算机技术有限公司 | 一种多处理器应用调度方法和***及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11372690B2 (en) * | 2019-10-03 | 2022-06-28 | Microsoft Technology Licensing, Llc | Multi-phase distributed task coordination |
-
2022
- 2022-12-29 CN CN202211743243.5A patent/CN115981865B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109725993A (zh) * | 2018-06-01 | 2019-05-07 | 中国平安人寿保险股份有限公司 | 任务执行方法、装置、设备及计算机可读存储介质 |
CN112884319A (zh) * | 2021-02-10 | 2021-06-01 | 腾讯大地通途(北京)科技有限公司 | 一种任务分配方法、装置、计算机设备以及存储介质 |
CN114896067A (zh) * | 2022-05-26 | 2022-08-12 | 中国平安人寿保险股份有限公司 | 任务请求信息的自动生成方法、装置、计算机设备及介质 |
CN114896049A (zh) * | 2022-06-16 | 2022-08-12 | 中国电力科学研究院有限公司 | 电力人工智能平台作业任务调度方法、***、设备及介质 |
CN115098240A (zh) * | 2022-07-25 | 2022-09-23 | 中诚华隆计算机技术有限公司 | 一种多处理器应用调度方法和***及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115981865A (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105912399B (zh) | 一种任务处理方法、装置及*** | |
JP2004021982A (ja) | コンピュータ・システム・リソースを動的に割り当てる方法およびシステム | |
CN103377407B (zh) | 云业务处理方法及相关装置和*** | |
CN111459641B (zh) | 一种跨机房的任务调度和任务处理的方法及装置 | |
CN110347515B (zh) | 一种适合边缘计算环境的资源优化分配方法 | |
CN111258745A (zh) | 一种任务处理方法及设备 | |
CN111798113A (zh) | 资源分配方法、装置、存储介质和电子设备 | |
CN110636388A (zh) | 一种业务请求分配方法、***、电子设备及存储介质 | |
CN104572302B (zh) | 一种实现资源分配的方法及装置 | |
CN109254913A (zh) | 设备共享方法、装置、电子设备及计算机存储介质 | |
CN106775975B (zh) | 进程调度方法及装置 | |
CN111580974A (zh) | Gpu实例分配方法、装置、电子设备和计算机可读介质 | |
CN115981865B (zh) | 一种业务资源调度方法、装置、电子设备及存储介质 | |
CN109347982A (zh) | 一种数据中心的调度方法及装置 | |
CN112286623B (zh) | 一种信息处理方法及装置、存储介质 | |
CN110502343B (zh) | 一种资源分配方法、***、装置及计算机可读存储介质 | |
CN111143063A (zh) | 任务的资源预约方法及装置 | |
WO2016206441A1 (zh) | 一种虚拟资源分配方法及装置、计算机存储介质 | |
CN115129481B (zh) | 一种计算资源分配方法、装置及电子设备 | |
CN110968420A (zh) | 一种多爬虫平台的调度方法、装置、存储介质及处理器 | |
CN113419863B (zh) | 一种基于节点能力的数据分配处理方法及装置 | |
JP2020154391A (ja) | 情報処理システムおよびプログラム | |
CN114237902A (zh) | 一种服务部署方法、装置、电子设备及计算机可读介质 | |
CN114124763A (zh) | 一种宽带接入速率的测量方法及*** | |
JP7037059B2 (ja) | リソース管理システム、および、リソース割当プログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |