CN110457130B - 一种分布式资源弹性调度模型、方法、电子设备及存储介质 - Google Patents

一种分布式资源弹性调度模型、方法、电子设备及存储介质 Download PDF

Info

Publication number
CN110457130B
CN110457130B CN201910673163.9A CN201910673163A CN110457130B CN 110457130 B CN110457130 B CN 110457130B CN 201910673163 A CN201910673163 A CN 201910673163A CN 110457130 B CN110457130 B CN 110457130B
Authority
CN
China
Prior art keywords
resource
resources
scheduler
scheduling
layer
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
Application number
CN201910673163.9A
Other languages
English (en)
Other versions
CN110457130A (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.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
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 Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201910673163.9A priority Critical patent/CN110457130B/zh
Publication of CN110457130A publication Critical patent/CN110457130A/zh
Application granted granted Critical
Publication of CN110457130B publication Critical patent/CN110457130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • 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)
  • Multi Processors (AREA)

Abstract

本发明涉及数据处理应用领域,公开了一种分布式资源弹性调度模型、方法、电子设备及存储介质,实现任务层动态资源调度和系统层资源调度的协同工作,实时的响应流处理任务的资源需求,分配合理的物理资源,达到真正意义上的自动弹性资源调度,弹性增减分布式流处理系统占用的物理资源,满足流处理任务随时变化的资源需求,在保证分布式流处理系统稳定运行与流处理系统工作稳定高效工作的同时,提高资源利用率,降低成本。

Description

一种分布式资源弹性调度模型、方法、电子设备及存储介质
技术领域
本发明涉及数据处理应用领域,特别是一种分布式资源弹性调度模型、方法、电子设备及存储介质。
背景技术
随着物联网、社交网络、云计算等技术不断融入我们的生活中以及现有的计算能力、存储空间、网络带宽的高速发展给人们生活带来的各种改变,人类积累的数据在互联网、通信、金融、商业、医疗等诸多领域不断地增长和累积。由于此类数据的积累往往超出传统数据处理技术的能力,单机很难满足如此大的计算量,而昂贵的设备也不是我们的首选,分布式流处理模式和分布式流处理系统由此产生。作为一种运行于分布式流处理系统上的处理海量实时数据流的应用,分布式流处理应用需要获取相应的计算、存储和传输等硬件资源。而分布式流处理应用的资源管理和调度的作用就是根据不同应用的不同需求而合理的分配有限的硬件资源并对硬件资源进行管理,当流处理应用负载过重时,适当为其增加资源,反之则回收资源。由此,在一个相对较大的集群中,如何妥善管理资源以降低资源管理成本则成为了一个重要的研究目标,在缺少资源的时候如何去增加资源,以及在资源过多的情况下如何去回收删减资源,减少资源浪费是十分重要的。
理想情况下,系统层资源调度框架对于分布式系统的资源的请求应该立刻响应,但现实情况资源往往是有限的,特别是在一个资源竞争激烈的集群环境下。此时就需要对资源进行调度。而分布式流处理系统的系统层资源调度,无法根据任务运行状态动态的弹性调度,需要人工介入添加或回收资源,即系统层资源调度无法感知到具体流处理任务的运行状态,只能静态的进行资源分配。任务层调度虽然可以弹性增减,但受到固定物理资源的限制。在物理资源不足时,任务层调度做出的决策无法执行,资源调度失败,很可能导致系统降级运行甚至崩溃。此外,系统层调度虽然可以在初始时精确分配资源,运行时也可以手动调度资源,但无法实现物理资源的自动弹性增减,这样的资源调度无法满足实时系统的需求。
发明内容
本发明的目的在于提供一种分布式资源弹性调度模型、方法、电子设备及存储介质,实现任务层动态资源调度和系统层资源调度的协同工作,实时的响应流处理任务的资源需求,分配合理的物理资源,达到真正意义上的自动弹性资源调度,弹性增减分布式流处理系统占用的物理资源,满足流处理任务随时变化的资源需求,在保证分布式流处理系统稳定运行与流处理系统工作稳定高效工作的同时,提高资源利用率,降低成本。
为实现上述技术目的,达到上述技术效果,本发明公开了一种分布式资源弹性调度模型,调度模型为双层资源调度模型,包括了任务层和系统层,任务层包括了任务层资源调度框架和分布式流处理系统,系统层包括了系统层资源调度框架,系统层资源调度框架将物理资源虚拟化成虚拟化资源,并提供与任务层处理工作任务。
其中,分布式流处理系统还包括有中间件调度器,中间件调度器与系统层资源调度框架通信,动态调整自身所占有的资源,并在自身占有资源最优时,响应任务层资源调度框架提交的资源调整请求,动态的弹性增减分布式流处理系统所占有的资源。
本发明还公开了一种分布式资源弹性调度方法,调度方法采用上述的调度模型,包括了以下步骤:
步骤1,基于分布式流处理系统改变应用所需资源;
步骤2,任务层资源调度器根据应用所需资源数进行判断;
步骤3,根据判断向系统申请增加或删减资源;
步骤4,系统层收到任务层资源调度器对资源的申请,并做出回应,返回操作成功或失败给中间件调度器;
步骤5,基于资源的改变对资源进行分配。
其中,步骤3具体包括了以下步骤:
步骤31,判断所需资源是否小于或等于系统可使用资源且无多余空节点,如果是,则调用默认中间件调度器直接分配资源;
步骤32,判断所需资源是否大于系统可使用资源,如果是,则向系统申请增加资源;
步骤33,判断所需资源是否小于系统可使用资源且有多余空节点,如果是,则向系统申请删减资源。
其中,步骤4具体包括以下步骤:
步骤41,系统接收到增加资源的请求,并增加资源成功或失败,将结果返回给中间件调度器;
步骤42,系统接收到删减资源的请求,并删减资源成功或失败,将结果返回给中间件调度器。
其中,步骤5具体为:
步骤51,资源增加成功,任务层资源调度器调用默认调度器为应用分配资源;
步骤52,资源增加失败,任务层资源调度器持续申请增加资源直到超出设定的时间范围;
步骤53,资源删减成功,任务层资源调度器调用默认调度器为应用分配资源;
步骤54,资源删减失败,任务层资源调度器持续申请删减资源直到超出设定的时间范围。
本发明还公开了一种电子设备,包括处理器和存储器,存储器用于存储计算机指令,处理器用于运行所述存储器存储的计算机指令,以实现上述的分布式资源弹性调度方法。
本发明还公开了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的分布式资源弹性调度方法。
本发明具有以下有益效果:
1.本发明提出了一个双层的资源调度模型,实现任务层动态资源调度和系统层资源调度的协同工作,实时的响应流处理任务的资源需求,分配合理的物理资源,达到真正意义上的自动弹性资源调度,弹性增减分布式流处理系统占用的物理资源,满足流处理任务随时变化的资源需求,在保证分布式流处理系统稳定运行与流处理系统工作稳定高效工作的同时,提高资源利用率,降低成本。
2.本发明提出的双层资源调度模型并不考虑任务层动态资源调度的具体实现,也不考虑系统层资源调度的具体实现,而侧重于假设任务层与系统层资源调度均为一个普遍适用的结构下如何使得任务层动态资源调度和系统层资源调度协同工作。这使得无论以何种方式实现任务层和系统层的资源调度算法,本模型都能兼容,具有了更普遍的通用性。
附图说明
图1为本发明图的双层资源调度模型架构图。
图2为本发明图的双层资源调度模型工作流程图。
图3为本发明的分布式流式数据处理结构有向无环图。
图4为本发明的系统层资源调度流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。
本发明公开了一种分布式资源弹性调度模型,调度模型为双层资源调度模型,包括了任务层和系统层,任务层包括了任务层资源调度框架和分布式流处理系统,系统层包括了系统层资源调度框架,系统层资源调度框架将物理资源虚拟化成虚拟化资源,并提供与任务层处理工作任务。
其中,分布式流处理系统还包括有中间件调度器,中间件调度器与系统层资源调度框架通信,动态调整自身所占有的资源,并在自身占有资源最优时,响应任务层资源调度框架提交的资源调整请求,动态的弹性增减分布式流处理系统所占有的资源。
本发明第二方面,公开了一种分布式资源弹性调度方法,调度方法采用上述的调度模型,包括了以下步骤:
步骤1,基于分布式流处理系统改变应用所需资源;
步骤2,任务层资源调度器根据应用所需资源数进行判断;
步骤3,根据判断向系统申请增加或删减资源;
其中,步骤3具体包括了以下步骤:
步骤31,判断所需资源是否小于或等于系统可使用资源且无多余空节点,如果是,则调用默认中间件调度器直接分配资源;
步骤32,判断所需资源是否大于系统可使用资源,如果是,则向系统申请增加资源;
步骤33,判断所需资源是否小于系统可使用资源且有多余空节点,如果是,则向系统申请删减资源。
步骤4,系统层收到任务层资源调度器对资源的申请,并做出回应,返回操作成功或失败给中间件调度器;
其中,步骤4具体包括以下步骤:
步骤41,系统接收到增加资源的请求,并增加资源成功或失败,将结果返回给中间件调度器;
步骤42,系统接收到删减资源的请求,并删减资源成功或失败,将结果返回给中间件调度器。
步骤5,基于资源的改变对资源进行分配;
其中,步骤5具体为:
步骤51,资源增加成功,任务层资源调度器调用默认调度器为应用分配资源;
步骤52,资源增加失败,任务层资源调度器持续申请增加资源直到超出设定的时间范围;
步骤53,资源删减成功,任务层资源调度器调用默认调度器为应用分配资源;
步骤54,资源删减失败,任务层资源调度器持续申请删减资源直到超出设定的时间范围。
本发明第三方面,公开了一种电子设备,包括处理器和存储器,存储器用于存储计算机指令,处理器用于运行所述存储器存储的计算机指令,以实现上述的分布式资源弹性调度方法。
本发明第四方面,公开了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述的分布式资源弹性调度方法。
设计原理:
如图1所示,双层资源调度模型中,最下层是系统层资源调度框架,系统层资源调度框架负责将物理资源虚拟化成虚拟化资源,同时接受分布式流处理系统汇报的资源使用情况,动态调整分布式流处理系统所占有的虚拟化资源,以达到对物理资源的高效、合理利用。
其次,中间件调度器为分布式流处理系统中的调度器,双层资源调度模型中,分布式流处理系统除了基本功能之外,还需要添加一个中间件调度器与系统层资源调度框架通信,动态调整自身所占有的资源,并在自身占有资源最优时,响应任务层资源调度框架提交的资源调整请求,动态的弹性增减流处理任务所占有的资源。最后,是任务层资源调度框架,这里我们使用一个分布式流数据处理方法或者命令行的方式改变任务需求的最优资源配置,并将资源请求提交给分布式流处理系统,动态调整任务占用的计算资源。
如图2所示,基于Yahoo开源的StormOnYarn系统层资源管理框架,实现任务层资源调度器对Storm的拓扑的资源监控,并通过zookeeper来进行调度器和Yarn之间对资源获取的通信,使得Yarn可以根据拓扑对资源的需求自启动资源节点或缩减资源资源节点,节省资源,降低管理成本。
如图3所示,流处理应用运行状态结构可以表示为一张有向无环图(DAG),定义为拓扑(topology)。图中的节点代表了分布式流处理的一个处理单元,有向边代表数据流流动的方向。数据流从数据源流出,依次进入应用的不同处理单元,处理完成后,数据流流出。同时定义应用处理的数据流的最小单位为tuple。
如图4所示,基于资源调度器获取到的应用所需资源(need_slot)、系统已使用资源(assigned_slot)、系统可使用资源(all_available_slot)以及节点可分配资源数(per_num)来对资源调度进行判断,判断增加资源或者删除资源。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (3)

1.一种分布式资源弹性调度模型的调度方法,其特征在于:所述的调度模型为双层资源调度模型,包括了任务层和系统层,所述的任务层包括了任务层资源调度框架和分布式流处理系统;
所述的系统层包括了系统层资源调度框架,所述的系统层资源调度框架将物理资源虚拟化成虚拟化资源,并提供与所述的任务层处理工作任务;
所述的分布式流处理系统还包括有中间件调度器,所述的中间件调度器与系统层资源调度框架通信,动态调整自身所占有的资源,并在自身占有资源最优时,响应任务层资源调度框架提交的资源调整请求,动态的弹性增减分布式流处理系统所占有的资源;
所述的调度模型的调度方法包括如下步骤:
步骤1,基于分布式流处理系统改变应用所需资源;
步骤2,任务层资源调度器根据应用所需资源数进行判断;
步骤3,根据判断向系统申请增加或删减资源;具体包括了以下步骤:
步骤31,判断所需资源是否小于或等于系统可使用资源且无多余空节点,如果是,则调用中间件调度器直接分配资源;
步骤32,判断所需资源是否大于系统可使用资源,如果是,则向系统申请增加资源;
步骤33,判断所需资源是否小于系统可使用资源且有多余空节点,如果是,则向系统申请删减资源;
步骤4,系统层收到任务层资源调度器对资源的申请,并做出回应,返回操作成功或失败给中间件调度器;具体包括以下步骤:
步骤41,系统接收到增加资源的请求,并增加资源成功或失败,将结果返回给中间件调度器;
步骤42,系统接收到删减资源的请求,并删减资源成功或失败,将结果返回给中间件调度器;
步骤5,基于资源的改变对资源进行分配;具体为:
步骤51,资源增加成功,任务层资源调度器调用中间件调度器为应用分配资源;
步骤52,资源增加失败,任务层资源调度器持续申请增加资源直到超出设定的时间范围;
步骤53,资源删减成功,任务层资源调度器调用中间件调度器为应用分配资源;
步骤54,资源删减失败,任务层资源调度器持续申请删减资源直到超出设定的时间范围。
2.一种电子设备,其特征在于,包括处理器和存储器,所述的存储器用于存储计算机指令,所述的处理器用于运行所述存储器存储的计算机指令,以实现权利要求1所述的调度模型的调度方法。
3.一种计算机可读存储介质,其特征在于,所述的计算机可读存储介质存储有一个或者多个程序,所述的一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1所述的调度模型的调度方法。
CN201910673163.9A 2019-07-24 2019-07-24 一种分布式资源弹性调度模型、方法、电子设备及存储介质 Active CN110457130B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910673163.9A CN110457130B (zh) 2019-07-24 2019-07-24 一种分布式资源弹性调度模型、方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910673163.9A CN110457130B (zh) 2019-07-24 2019-07-24 一种分布式资源弹性调度模型、方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN110457130A CN110457130A (zh) 2019-11-15
CN110457130B true CN110457130B (zh) 2023-09-01

Family

ID=68483375

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910673163.9A Active CN110457130B (zh) 2019-07-24 2019-07-24 一种分布式资源弹性调度模型、方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110457130B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051064B (zh) * 2019-12-26 2024-05-24 中移(上海)信息通信科技有限公司 任务调度方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10044640B1 (en) * 2016-04-26 2018-08-07 EMC IP Holding Company LLC Distributed resource scheduling layer utilizable with resource abstraction frameworks
CN108388472A (zh) * 2018-03-01 2018-08-10 吉林大学 一种基于Docker集群的弹性任务调度系统及方法
CN109684077A (zh) * 2018-12-05 2019-04-26 苏州思必驰信息科技有限公司 用于spark streaming的资源动态分配和反馈方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于YARN高并发性的机会资源调度器的研究与实现;彭阳;《中国优秀硕士学位论文全文数据库 信息科技辑》(第02期);I138-1174 *

Also Published As

Publication number Publication date
CN110457130A (zh) 2019-11-15

Similar Documents

Publication Publication Date Title
US9063795B2 (en) Adaptive resource usage limits for workload management
US9619378B2 (en) Dynamically optimizing memory allocation across virtual machines
JP5939740B2 (ja) 動的にリソースを割り当てる方法、システム及びプログラム
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
CN112199194A (zh) 基于容器集群的资源调度方法、装置、设备和存储介质
US8819238B2 (en) Application hosting in a distributed application execution system
US8818989B2 (en) Memory usage query governor
US20140325519A1 (en) Variable wait time in an asynchronous call-back system
US10733015B2 (en) Prioritizing applications for diagonal scaling in a distributed computing environment
CN112559182A (zh) 资源分配方法、装置、设备及存储介质
CN108073457B (zh) 一种超融合基础架构的分层资源管理方法、装置及系统
US9851988B1 (en) Recommending computer sizes for automatically scalable computer groups
CN102339233A (zh) 云计算集中管理平台
CN110888732A (zh) 一种资源配置方法、设备、装置和计算机可读存储介质
CN116643844B (zh) 面向电力超算云资源自动扩展的智能化管理系统及方法
CN114090251A (zh) 一种边缘计算资源自适应动态调度方法及系统
US10635501B2 (en) Adaptive scaling of workloads in a distributed computing environment
CN109960579B (zh) 一种调整业务容器的方法及装置
JPWO2012127641A1 (ja) 情報処理システム
CN110457130B (zh) 一种分布式资源弹性调度模型、方法、电子设备及存储介质
Nicodemus et al. Managing vertical memory elasticity in containers
CN114518951A (zh) 分布式流数据处理系统虚拟化资源弹性调度管理研究
CN115391030A (zh) 控制方法及装置、计算机设备及存储介质
CN114443262A (zh) 计算资源管理方法、装置、设备及系统
US10887250B2 (en) Reducing resource allocations and application instances in diagonal scaling in a distributed computing environment

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
CB03 Change of inventor or designer information

Inventor after: Hao Zhifeng

Inventor after: Huang Zelin

Inventor after: Cai Ruichu

Inventor after: Fu Zhengjia

Inventor after: Lin Fengji

Inventor after: Chen Bingfeng

Inventor after: Wen Wen

Inventor after: Wang Lijuan

Inventor before: Huang Zelin

Inventor before: Cai Ruichu

Inventor before: Fu Zhengjia

Inventor before: Lin Fengji

Inventor before: Chen Bingfeng

Inventor before: Wen Wen

Inventor before: Wang Lijuan

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant