CN113238841A - 一种基于云计算技术的任务调度方法 - Google Patents

一种基于云计算技术的任务调度方法 Download PDF

Info

Publication number
CN113238841A
CN113238841A CN202110512913.1A CN202110512913A CN113238841A CN 113238841 A CN113238841 A CN 113238841A CN 202110512913 A CN202110512913 A CN 202110512913A CN 113238841 A CN113238841 A CN 113238841A
Authority
CN
China
Prior art keywords
task
cloud computing
node
nodes
information
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.)
Granted
Application number
CN202110512913.1A
Other languages
English (en)
Other versions
CN113238841B (zh
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.)
Hubei Carbon Polymer Biotechnology Co ltd
Original Assignee
Hubei Carbon Polymer Biotechnology 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 Hubei Carbon Polymer Biotechnology Co ltd filed Critical Hubei Carbon Polymer Biotechnology Co ltd
Priority to CN202110512913.1A priority Critical patent/CN113238841B/zh
Publication of CN113238841A publication Critical patent/CN113238841A/zh
Application granted granted Critical
Publication of CN113238841B publication Critical patent/CN113238841B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于云计算技术的任务调度方法,包括如下步骤:S1、建立云计算调度系统,获取任务流程,对任务流程的每一步进行拆分,并构建任务流程内所有任务节点的有向图;S2、依次记录有向图中每一节点的任务信息到云计算数据库的链表中;S3、系统触发有向图内所有无前驱节点的节点任务,并提取该类节点的任务信息至预投递区,并申请开启一定数量的虚拟机;S4、已开启的虚拟机申请任务,并在执行完成后反馈任务结果;S5、执行完成的任务节点更新节点状态为完成;S6、动态检测有向图中所有节点,提取出前驱节点都为完成状态的节点任务至云计算调度系统的预投递区;S7、动态调整虚拟机开启数量;S8、重复步骤S4‑S7,直到完成任务调度。

Description

一种基于云计算技术的任务调度方法
技术领域
本发明涉及云计算资源管理技术领域,尤其是涉及一种基于云计算技术的任务调度方法。
背景技术
随着云计算技术的日益普及,日常云计算需求日益增加,当前已有的集群管理及任务管理模式已无法满足过量的任务执行需求,使得大量的云计算资源浪费和算力的损耗。
以往的云计算技术在任务调度执行上为任务寻找资源,使得任务连续性不强,任务开启及等待时间过久,算力空开等问题日益加重。往往在面对这样问题时的解决方案都是增加新的计算资源扩充算力。
因此,为最大程度的使用资源,减少算力浪费等问题,目前亟需一种提升算力利用率和资源管理的调度方法。
发明内容
为解决上述背景技术中提出的问题,本发明的目的在于提供一种基于云计算技术的任务调度方法。
为实现上述目的,本发明采取的技术方案为:
一种基于云计算技术的任务调度方法,包括如下步骤:
S1、建立云计算调度系统,获取任务流程,对任务流程的每一步进行拆分,以拆分为多个任务节点,并构建任务流程内所有任务节点的有向图;
S2、依次记录步骤S1中构建的有向图中每一节点的任务信息到云计算数据库的链表中,其中,任务信息包括预设资源信息、前驱节点信息和后置节点信息,前驱节点指任务触发的前一步流程,后置节点指任务结果可以触发的后一步流程;
S3、云计算调度系统触发有向图内所有无前驱节点的节点任务,并从云计算数据库的链表中提取该类节点的任务信息至云计算调度系统的预投递区,并向计算队列申请开启一定数量的虚拟机;
S4、计算队列内已开启的虚拟机向云计算调度系统申请任务,以执行云计算调度系统的预投递区内的任务,并在执行完成后反馈任务结果;
S5、执行完成的任务节点更新节点状态为完成;
S6、动态检测有向图中所有节点,提取出前驱节点都为完成状态的节点任务至云计算调度系统的预投递区;
S7、判断当前预投递区任务数量,以动态调整虚拟机开启数量;
S8、重复步骤S4-S7,直到数据库中所有节点任务状态都为完成,该任务流程调度结束,清空该任务流程数据库信息,反馈该任务流程完成。
在一些实施例中,在步骤S3和S7中,虚拟机的开启数量由预设的最小开机量、最大开机量以及当前预投递区的数据缓存量决定。
在一些实施例中,在步骤S8后,虚拟机维持最小开机量,并等待新任务。
在一些实施例中,若任务在某一节点报错,则当前正在执行的任务停止,新任务停止进入计算队列,并反馈报错的节点,保留已执行任务的生成文件,总体任务停止运行,并清空数据库内的相应数据。
与现有技术中的传统调度方法相比,本发明提供的基于云计算技术的任务调度方法的有益效果是:1、本发明在执行过程中为开启的虚拟机主动拉取任务,并非常规被动响应任务而开机,减少因计算队列机器开关机和环境调试过程造成的时间资源损耗,尤其针对大型连续和批量式的任务执行;2、本发明选用了有向图结构模型,在整个调度过程中动态更新有向图结构模型,以最大限度提高异步并行能力,相较于常规任务队列调度提高任务执行效率;3、本发明对于用户推动分步式任务,相较于常规对待不同资源需求的步骤,大大节省资源空耗的浪费,使操作者可以灵活动态调整不同环节的资源需求,并清晰不同环节任务执行细节,提高任务调度效率。
附图说明
图1为本发明提供的基于云计算技术的任务调度方法的流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合附图和具体实施方式,进一步阐述本发明是如何实施的。
参照图1所示,本发明提供了一种基于云计算技术的任务调度方法,包括如下步骤:
S1、建立云计算调度系统,获取任务流程,对任务流程的每一步进行拆分,以拆分为多个任务节点,并构建任务流程内所有任务节点的有向图;
S2、依次记录步骤S1中构建的有向图中每一节点的任务信息到云计算数据库的链表中,其中,任务信息包括预设资源信息、前驱节点信息和后置节点信息,前驱节点指任务触发的前一步流程,后置节点指任务结果可以触发的后一步流程;
S3、云计算调度系统触发有向图内所有无前驱节点的节点任务,并从云计算数据库的链表中提取该类节点的任务信息至云计算调度系统的预投递区,并向计算队列申请开启一定数量的虚拟机;
S4、计算队列内已开启的虚拟机向云计算调度系统申请任务,以执行云计算调度系统的预投递区内的任务,并在执行完成后反馈任务结果;
S5、执行完成的任务节点更新节点状态为完成;
S6、动态检测有向图中所有节点,提取出前驱节点都为完成状态的节点任务至云计算调度系统的预投递区;
S7、判断当前预投递区任务数量,以动态调整虚拟机开启数量;
S8、重复步骤S4-S7,直到数据库中所有节点任务状态都为完成,该任务流程调度结束,清空该任务流程数据库信息,反馈该任务流程完成。
优选地,在步骤S3和S7中,虚拟机的开启数量由预设的最小开机量、最大开机量以及当前预投递区的数据缓存量决定。
例如,任务执行过程中,当前任务量由当前预投递区的数据缓存量决定,若发现当前任务量远小于计算队列虚拟机开启数量时,由调度系统逐步关闭空闲虚拟机,直至满足当前任务执行的最小虚拟机开启量,或者已达到预设的最小开机量。相应地,若发现当前任务量远大于计算队列虚拟机开启数量时,由调度系统逐步开启虚拟机,直至满足当前任务执行的最小虚拟机开启量,或者已达到预设的最大开机量。本发明通过动态扩容和收缩计算资源。避免计算资源的浪费,任务量大时也能满足需求。
可以理解的是,虚拟机由任务需求调起,可根据预设规则分别开启不同型号的虚拟机,开启的不同型号的虚拟机的主动拉取多维状态下可以执行的任务。
优选地,在步骤S8后,虚拟机维持最小开机量,并等待新任务。
进一步地,若任务在某一节点报错,则当前正在执行的任务停止,新任务停止进入计算队列,并反馈报错的节点,保留已执行任务的生成文件,总体任务停止运行,并清空数据库内的相应数据。
在一个实施例中,步骤S1中,建立的有向图可表示为G=(V,E),每个任务定义为有向图内节点Vi,任务间有衔接关系的连接定义为有向图的边Ei;可以得到该流程任务节点集V=(V1,V2,V3,......),基于有向图边的边集E=(E1,E2,E3,......);
步骤S2中,基于节点集和对应边集,按节点记录所有有向图节点的入度和出度信息,定义每个节点入度和出度信息集为M=((I1,O1),(I2,O2),(I3,O3),......),Ii表示入度信息(即前驱节点数量),Oi表示出度信息(即后置节点数量),若不存在相应的信息,则对应的值为0;赋予每个节点唯一的ID,通过ID对每个节点任务的所有相关元数据使用链表存储在云计算数据库A中;
步骤S3中,建立独立的数据库S作为预投递区,调度在数据库A中存储的M集,标记所有满足Ii=0的节点,即所有无前驱节点的节点任务,将该部分节点缓存进数据库S,并向计算队列申请开启一定数量的虚拟机;
步骤S4中,所有任务在执行过程中,由计算队列内已开启的虚拟机向云计算调度系统发起执行任务申请,并从数据库S获取资源需求适合的任务,在执行完成后反馈任务结果;
步骤S5中,执行完成后,对应任务节点的状态反馈信息在调度指导下,数据库A中的对应任务节点状态信息将会更新为完成;
步骤S6中,更新数据库A中存储的所有任务节点Vi的入度Ii和出度Oi信息,对所有已完成任务节点Vi的后置节点执行Ii=Ii-1,更新完成后,标记所有满足当前状态下Ii=0的节点,即所有前驱节点都为完成状态的未执行节点任务,将该部分节点缓存进数据库S;
步骤S7中,依照预设的最大开机量、最小开机量以及当前数据库S的缓存量智能动态调整虚拟机开启数量;
步骤S8中,重复步骤S4-S7,直到完成全部任务;
可见,本发明提供的基于云计算技术的任务调度方法,能够减少算力资源浪费,提升任务执行效率,有效利用计算调度和数据库的交互以加强任务执行过程的资源合理分配利用。在云计算调度中,通过拆分任务次序并依次唤醒虚拟机获取任务执行,可以凭借指定数量的计算资源最大限度设置任务队列和调整任务执行。基于数据库多维度的信息存储及链表的数据关联,本发明在任务流程创建之始便建立所有任务顺序和任务细节信息,数据库可以基于队列反馈信息及时更新任务状态信息,用于及时调度新的任务执行。本发明还能够通过预设资源需求,调整指定计算队列内相应机型的开机数量,赋予计算队列内每台虚拟机向调度系统申请任务执行的权利。本发明有助于提高云计算资源利用效率,且增强云端计算调度能力的边缘计算能力。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围中。

Claims (4)

1.一种基于云计算技术的任务调度方法,其特征在于,包括如下步骤:
S1、建立云计算调度系统,获取任务流程,对任务流程的每一步进行拆分,以拆分为多个任务节点,并构建任务流程内所有任务节点的有向图;
S2、依次记录步骤S1中构建的有向图中每一节点的任务信息到云计算数据库的链表中,其中,任务信息包括预设资源信息、前驱节点信息和后置节点信息,前驱节点指任务触发的前一步流程,后置节点指任务结果可以触发的后一步流程;
S3、云计算调度系统触发有向图内所有无前驱节点的节点任务,并从云计算数据库的链表中提取该类节点的任务信息至云计算调度系统的预投递区,并向计算队列申请开启一定数量的虚拟机;
S4、计算队列内已开启的虚拟机向云计算调度系统申请任务,以执行云计算调度系统的预投递区内的任务,并在执行完成后反馈任务结果;
S5、执行完成的任务节点更新节点状态为完成;
S6、动态检测有向图中所有节点,提取出前驱节点都为完成状态的节点任务至云计算调度系统的预投递区;
S7、判断当前预投递区任务数量,以动态调整虚拟机开启数量;
S8、重复步骤S4-S7,直到数据库中所有节点任务状态都为完成,该任务流程调度结束,清空该任务流程数据库信息,反馈该任务流程完成。
2.根据权利要求1所述的基于云计算技术的任务调度方法,其特征在于,在步骤S3和S7中,虚拟机的开启数量由预设的最小开机量、最大开机量以及当前预投递区的数据缓存量决定。
3.根据权利要求2所述的基于云计算技术的任务调度方法,其特征在于,在步骤S8后,虚拟机维持最小开机量,并等待新任务。
4.根据权利要求1所述的基于云计算技术的任务调度方法,其特征在于,若任务在某一节点报错,则当前正在执行的任务停止,新任务停止进入计算队列,并反馈报错的节点,保留已执行任务的生成文件,总体任务停止运行,并清空数据库内的相应数据。
CN202110512913.1A 2021-05-11 2021-05-11 一种基于云计算技术的任务调度方法 Active CN113238841B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110512913.1A CN113238841B (zh) 2021-05-11 2021-05-11 一种基于云计算技术的任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110512913.1A CN113238841B (zh) 2021-05-11 2021-05-11 一种基于云计算技术的任务调度方法

Publications (2)

Publication Number Publication Date
CN113238841A true CN113238841A (zh) 2021-08-10
CN113238841B CN113238841B (zh) 2023-12-12

Family

ID=77133488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110512913.1A Active CN113238841B (zh) 2021-05-11 2021-05-11 一种基于云计算技术的任务调度方法

Country Status (1)

Country Link
CN (1) CN113238841B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116909751A (zh) * 2023-09-11 2023-10-20 北京蓝耘科技股份有限公司 一种云计算系统中的资源分配方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126317A (zh) * 2016-06-24 2016-11-16 安徽师范大学 应用于云计算环境的虚拟机调度方法
CN106775932A (zh) * 2016-11-29 2017-05-31 中国人民解放军国防科学技术大学 一种云计算系统中随机事件触发的实时工作流调度方法
CN107025139A (zh) * 2017-03-21 2017-08-08 北京天云融创软件技术有限公司 一种基于云计算的高性能计算调度框架
CN107291536A (zh) * 2017-05-23 2017-10-24 南京邮电大学 一种云计算环境下应用任务流调度方法
CN107341041A (zh) * 2017-06-27 2017-11-10 南京邮电大学 基于优先队列的云任务多维约束回填调度方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126317A (zh) * 2016-06-24 2016-11-16 安徽师范大学 应用于云计算环境的虚拟机调度方法
CN106775932A (zh) * 2016-11-29 2017-05-31 中国人民解放军国防科学技术大学 一种云计算系统中随机事件触发的实时工作流调度方法
CN107025139A (zh) * 2017-03-21 2017-08-08 北京天云融创软件技术有限公司 一种基于云计算的高性能计算调度框架
CN107291536A (zh) * 2017-05-23 2017-10-24 南京邮电大学 一种云计算环境下应用任务流调度方法
CN107341041A (zh) * 2017-06-27 2017-11-10 南京邮电大学 基于优先队列的云任务多维约束回填调度方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116909751A (zh) * 2023-09-11 2023-10-20 北京蓝耘科技股份有限公司 一种云计算系统中的资源分配方法
CN116909751B (zh) * 2023-09-11 2023-12-01 北京蓝耘科技股份有限公司 一种云计算系统中的资源分配方法

Also Published As

Publication number Publication date
CN113238841B (zh) 2023-12-12

Similar Documents

Publication Publication Date Title
CN104317658B (zh) 一种基于MapReduce的负载自适应任务调度方法
CN105117286B (zh) MapReduce中任务的调度方法和流水化执行方法
CN102364447B (zh) 一种优化多任务间通信能耗的作业调度方法
WO2020133952A1 (zh) 一种基于异步贝叶斯优化的机器学习超参优化系统及方法
CN109299180B (zh) 一种数据仓库etl操作系统
CN110795254A (zh) 一种基于php处理高并发io的方法
CN111209077A (zh) 深度学习框架设计方法
CN114237869B (zh) 基于强化学习的Ray双层调度方法、装置和电子设备
US20230351145A1 (en) Pipelining and parallelizing graph execution method for neural network model computation and apparatus thereof
CN105629873B (zh) 一种适用于数控系统的混合任务调度方法
CN112579267A (zh) 一种去中心化大数据作业流调度方法及装置
CN114625517A (zh) 一种dag图计算分布式大数据工作流任务调度平台
WO2022116667A1 (zh) 一种训练任务排队原因分析方法、系统、设备以及介质
CN113238841A (zh) 一种基于云计算技术的任务调度方法
CN111459622A (zh) 调度虚拟cpu的方法、装置、计算机设备和存储介质
CN111612155B (zh) 一种分布式机器学习系统及适用于其的通信调度方法
CN108415766A (zh) 一种渲染任务动态调度方法
CN116974994A (zh) 一种基于集群的高效能文件协作系统
CN116340393A (zh) 数据库饱和度的预测方法、存储介质及数据库系统
CN112698911B (zh) 一种基于深度强化学习的云作业调度方法
CN111309821B (zh) 基于图数据库的任务调度方法、装置及电子设备
CN111290868B (zh) 任务处理方法、装置和系统以及流程引擎
CN113961439A (zh) 一种基于smt方法的dag任务wcrt计算方法
CN111506407B (zh) Pull模式与Push模式相结合的资源管理与作业调度方法、系统
CN113821313A (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
GR01 Patent grant
GR01 Patent grant