CN102799474A - 一种基于可靠性驱动的云资源容错调度方法 - Google Patents
一种基于可靠性驱动的云资源容错调度方法 Download PDFInfo
- Publication number
- CN102799474A CN102799474A CN2012102116022A CN201210211602A CN102799474A CN 102799474 A CN102799474 A CN 102799474A CN 2012102116022 A CN2012102116022 A CN 2012102116022A CN 201210211602 A CN201210211602 A CN 201210211602A CN 102799474 A CN102799474 A CN 102799474A
- Authority
- CN
- China
- Prior art keywords
- task
- processor
- time
- scheduling
- expression
- 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
Abstract
一种基于可靠性驱动的云资源容错调度方法,包括以下步骤:1)初始化;2)计算DAG中的每个任务i的bl(i)和初始化tl(i)=0;3)将开始任务插入α中;4)开始调度,按如下步骤进行操作,直至所有的任务都调度完成,具体包含如下步骤:4.1)调度时的初始化;4.2)在每个处理机Pj上,寻找任务i的合适处理机;4.3)如果任务i没有可行的处理机,则调度失败;4.4)将处理机分配给任务i;4.5)将任务i的空闲后续放入到α中;4.6)更新U;5)调度结束,调度成功。本发明通过有效的容错调度提高了系统的服务质量。
Description
技术领域
本发明涉及资源的容错调度技术,具体是一种基于可靠性驱动的云资源容错调度方法。
背景技术
云计算因具有超大规模、高可靠性、高可扩展性、按需服务、极其廉价等特点受到了广大的关注。其中云计算一个非常重要特点就是高可靠性。可是,云计算系统使用的大规模资源具有高度动态性和异构性,资源环境所固有的不可靠状态,使得云计算平台较传统的计算平台出现大规模资源失败的可能性大大增加。这种大规模的资源失败包括了硬件故障、软件错误以及其他的失败源。所以,云计算中一个很大的挑战是从大规模分布式系统中去容忍或者消除错误。那么,研究具有容错机制和失败容忍能力的可靠云计算服务调度策略,对切实提高云计算服务的服务质量具有重要意义。
基于云计算系统的实时容错调度算法的研究仍处在一个起步阶段。由于云计算系统中大规模资源失败,特别是多处理机同时发生故障的情况更是常有发生,因此如何在保证云计算系统的可靠性同时,又能保证系统实时性,进而提高系统的服务质量是调度算法需要考虑的问题。目前,处理多处理机发生故障的情况下的算法主要是考虑执行时间、通信时间、时间复杂度等某个方面,但是高可靠性和通信时间最小化方面的研究却涉及很少。现有的方法有:FTBAR、FTSA、CAFT、MC-FTSA。FTBAR是基于主动复制(Active Replication)策略的List启发式调度算法,它允许一个任务的N+l个副本调度到不同处理机,并且可以并行执行以容忍至多N个处理机失败,但是分配任务的大量副本过程中导致了大量的通信和提高了时间复杂度。为了解决大量通信的问题,FTSA提出了一个全新的数据结构来解决任务映射到的处理机间的通信关系尽量达到一对一通信,从而减少大量冗余通信。同时,FTSA考虑的是有依赖关系任务和推导了任务的最早完成时间。但是通信的减少会影响任务的开始时间,FTSA未考虑任务后续的开始时间从而使DAG的执行时间未达到最优化。CAFT、MC-FTSA从通信和时间复杂度角度将任务的多个副本映射到不同处理机上,它们都最小化通信而容忍处理机失败数量却受到很大限制,即通信越少,能够容忍处理机失败数量就越少。但是这些算法都没有考虑可靠性。
发明内容
为了克服现有的容错调度方法的可靠性较差的不足,本发明是在大规模资源失败情况下特别是多处理机失败下,以可靠性代价为调度目标,利用主动复制策略,将任务的ε+1个副本放到不同的处理器上,动态调度相互依赖、不可抢占、非周期的实时任务,提供一种提高系统的可靠性基于可靠性驱动的云资源容错调度方法。
本发明为了解决上述技术问题采用的技术方案为:
一种基于可靠性驱动的云资源容错调度方法,包括以下步骤:
1)初始化,包含如下过程:
1.1)将系统支持的最大处理机失败的数量赋值给ε;
1.2)确定系统的处理机集P={P1,P2,…,Pm},
任务的计算时间用ε:V×P→R来模拟,ε(i,Pj),1≤j≤m表示系统中每个任务在每个处理机上的执行时间;任务间的通信时间用W(i,j)=v(i,j)×d(Pk,Pb)来表示,其中,任务i映射到处理机Pk上,任务j映射到处理机Pb上,d(Pk,Pb)表示发送单位长度数据所需的时间;如果任务部署到同一个处理机上,则通信时间为零;
利用无回路有向图DAG来模拟任务模型中的任务以及它们之间的关系,用T=(V,E)表示,其中V是一个节点集合对应所有非周期、非抢占性的实时任务;E是一个边集合对应所有任务之间的优先关系以及任务之间的通信;对于一个任务i,Sdp(i)表示任务i的直接前续集合,Sds(i)表示任务i的直接后续集合;v(i,j)表示任务i发送给任务j的数据量;
2)计算无回路有向图DAG中的每个任务i的bl(i)和初始化每个开始任务i的tl(i)=0;
tl(i)表示动态高位水平,bl(i)表示静态低位水平;其中tl(i)依赖于映射过程中己经部署的任务,bl(i)根据DAG的拓扑结构将保持不变;其中,bl(i)的求解步骤如下:
3)将开始任务插入α中;
4)开始调度,任务的调度过程如下
4.1)调度时的初始化,包含以下过程:
4.1.1):选择优先权最高的任务,并将H(α)赋值给i;
一个任务的优先权由tl(i)+bl(i)来决定,H(α)返回有序队列α中的第一个任务,即是带有最高优先权的任务;
4.1.2):初始化可靠性r为0;
4.1.3):最早完成时间初始化
4.2)对于每个处理机Pj按如下步骤Step1~Step3进行操作,从第一个处理开始处理,直至将所有的处理机都处理完毕;
4.2.2):如果任务i能够在处理机P(ε+1)上达到最早完成时间,且在tr-a(i)之前完成,则确定此时系统的可靠度rj。否则,返回结束此次循环,对下一个处理器进行操作,返回4.2.1);
tr-a(i)的作用是限制任务的响应时间,其求解公式为:
4.3)如果对于任务i没有可行的处理机,则返回调度失败;
4.4)将处理机分配给任务i;当任务i在处理机上的可靠性最大时;则将任务i放入S中,并同时更新任务i的后续的优先权;
4.5)将任务i的空闲后续放入到α中;
4.6)更新U,U=U(i);
到4.6)进行循环操作,直至U为空。
本发明的有益效果主要表现在:考虑到在大规模资源失败时的容错调度策略,以可靠性代价为调度目标来动态调度相互依赖、不可抢占的、非周期实时任务,通过有效的容错调度提高了系统的服务质量。
附图说明
图1是本发明方法的具体实现流程图。
图2是有向无环图DAG示意图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1和图2,一种基于可靠性驱动的云资源容错调度方法,包括以下步骤:
1)初始化。初始化的项目有具体包含以下几项:
1.3)将系统支持的最大处理机失败的数量赋值给ε。
1.4)确定系统的处理机集P={P1,P2,…,Pm}。
在实际应用中,云计算系统大都是一个异构系统。异构系统中每个处理机的计算能力与可靠性等具有很大的差别。假设云计算系统中的处理机是异构的且处理机间是完全互联的。任务的计算时间用ε:V×P→R来模拟,ε(i,Pj),1≤j≤m表示系统中每个任务在每个处理机上的执行时间。任务间的通信时间用W(i,j)=v(i,j)×d(Pk,Pb)来表示,其中,任务i映射到处理机Pk上,任务j映射到处理机Pb上,d(Pk,Pb)表示发送单位长度数据所需的时间。如果任务部署到同一个处理机上,则通信时间为零。
在异构系统中的调度策略必须考虑异构系统中每个处理机的计算能力、可靠性等综合因素。因此,本发明利用DAG(无回路有向图)来模拟任务模型中的任务以及它们之间的关系,用T=(V,E)表示,其中V是一个节点集合对应所有非周期、非抢占性的实时任务;E是一个边集合对应所有任务之间的优先关系以及任务之间的通信。对于一个任务i,Sdp(i)表示任务i的直接前续集合,Sds(i)表示任务i的直接后续集合。v(i,j)表示任务i发送给任务j的数据量。
2)计算DAG中的每个任务i的bl(i)和初始化每个开始任务i的tl(i)=0。
tl(i)表示动态高位水平,bl(i)表示静态低位水平;其中tl(i)依赖于映射过程中己经部署的任务,bl(i)根据DAG的拓扑结构将保持不变。bl(i)的求解步骤如下:
3)将开始任务插入α中。
4)开始调度,直至所有的任务都调度完成。当未调度任务集合U不为空时,即则按步骤4.1)到4.6)进行循环操作,直至U为空。
4.1)调度时的初始化。具体包含以下三项:
4.1.1):选择优先权最高的任务,并将H(α)赋值给i;
一个任务的优先权由tl(i)+bl(i)来决定。H(α)返回有序队列α中的而第一个任务,即是带有最高优先权的任务。
4.1.2):初始化可靠性r为0;
4.1.3):最早完成时间初始化
4.2)对于每个处理机Pj按如下步骤进行操作,从第一个处理开始处理,直至将所有的处理机都处理完毕。
4.2.1):计算最早完成时间具体的求解公式如下:
4.2.2):如果任务i能够在处理机P(ε+1)上达到最早完成时间,且在tr-a(i)之前完成,则确定此时系统的可靠度rj。否则,返回结束此次循环,对下一个处理器进行操作,返回Step1。
tr-a(i)的作用是限制任务的响应时间,防止可靠性和开始时间的互相矛,最终在可靠性和开始时间之间寻找平衡。具体的求解公式为:
4.3)If对于任务i没有可行的处理机,则返回调度失败。
4.4)将处理机分配给任务i;当任务i在处理机上的可靠性最大时;则将任务i放入S中,并同时更新任务i的后续的优先权。
4.5)将任务i的空闲后续放入到α中;
4.6)更新U,U=U(i);
5)调度结束,返回调度成功。
Claims (1)
1.一种基于可靠性驱动的云资源容错调度方法,其特征在于:包括以下步骤:
1)初始化,包含如下过程:
1.1)将系统支持的最大处理机失败的数量赋值给ε;
1.2)确定系统的处理机集P={P1,P2,…,Pm},
任务的计算时间用ε:V×P→R来模拟,ε(i,Pj),1≤j≤m表示系统中每个任务在每个处理机上的执行时间;任务间的通信时间用W(i,j)=v(i,j)×d(Pk,Pb)来表示,其中,任务i映射到处理机Pk上,任务j映射到处理机Pb上,d(Pk,Pb)表示发送单位长度数据所需的时间;如果任务部署到同一个处理机上,则通信时间为零;
利用无回路有向图DAG来模拟任务模型中的任务以及它们之间的关系,用T=(V,E)表示,其中V是一个节点集合对应所有非周期、非抢占性的实时任务;E是一个边集合对应所有任务之间的优先关系以及任务之间的通信;对于一个任务i,Sdp(i)表示任务i的直接前续集合,Sds(i)表示任务i的直接后续集合;v(i,j)表示任务i发送给任务j的数据量;
1.4)初始化空闲任务优先列表该表利用平衡搜索树去执行任务;
2)计算无回路有向图DAG中的每个任务i的bl(i)和初始化每个开始任务i的tl(i)=0;
tl(i)表示动态高位水平,bl(i)表示静态低位水平;其中tl(i)依赖于映射过程中己经部署的任务,bl(i)根据DAG的拓扑结构将保持不变;其中,bl(i)的求解步骤如下:
3)将开始任务插入α中;
4)开始调度,任务的调度过程如下
4.1)调度时的初始化,包含以下过程:
4.1.1):选择优先权最高的任务,并将H(α)赋值给i;
一个任务的优先权由tl(i)+bl(i)来决定,H(α)返回有序队列α中的第一个任务,即是带有最高优先权的任务;
4.1.2):初始化可靠性r为0;
4.2)对于每个处理机Pj按如下步骤Step1~Step3进行操作,从第一个处理开始处理,直至将所有的处理机都处理完毕;
其中,为任务u的第k个副本uk在所在的服务器的处理完成时间;xij=1表示任务i映射到处理机Pj上,否则为xij=0;
4.2.2):如果任务i能够在处理机P(ε+1)上达到最早完成时间,且在tr-a(i)之前完成,则确定此时系统的可靠度rj。否则,返回结束此次循环,对下一个处理器进行操作,返回4.2.1);
tr-a(i)的作用是限制任务的响应时间,其求解公式为:
4.3)如果对于任务i没有可行的处理机,则返回调度失败;
4.4)将处理机分配给任务i;当任务i在处理机上的可靠性最大时;则将任务i放入S中,并同时更新任务i的后续的优先权;
4.5)将任务i的空闲后续放入到α中;
4.6)更新U,U=U(i);
4.7)当未调度任务集合U不为空时,即则按步骤4.1)到
4.6)进行循环操作,直至U为空。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012102116022A CN102799474A (zh) | 2012-06-21 | 2012-06-21 | 一种基于可靠性驱动的云资源容错调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012102116022A CN102799474A (zh) | 2012-06-21 | 2012-06-21 | 一种基于可靠性驱动的云资源容错调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102799474A true CN102799474A (zh) | 2012-11-28 |
Family
ID=47198589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012102116022A Pending CN102799474A (zh) | 2012-06-21 | 2012-06-21 | 一种基于可靠性驱动的云资源容错调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102799474A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970613A (zh) * | 2014-05-21 | 2014-08-06 | 哈尔滨工程大学 | 一种异构分布式系统多副本任务容错调度方法 |
CN105045580A (zh) * | 2015-06-30 | 2015-11-11 | 广州支点网络科技有限公司 | 一种复合行为驱动方法及装置 |
CN107038070A (zh) * | 2017-04-10 | 2017-08-11 | 郑州轻工业学院 | 一种云环境下执行可靠性感知的并行任务调度方法 |
CN108628708A (zh) * | 2017-03-20 | 2018-10-09 | 中兴通讯股份有限公司 | 云计算容错方法及装置 |
CN109871270A (zh) * | 2019-01-22 | 2019-06-11 | 深圳大学 | 调度方案生成方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711607B1 (en) * | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
CN101916209A (zh) * | 2010-08-06 | 2010-12-15 | 华东交通大学 | 一种多核处理器集群任务资源分配方法 |
-
2012
- 2012-06-21 CN CN2012102116022A patent/CN102799474A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711607B1 (en) * | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
CN101916209A (zh) * | 2010-08-06 | 2010-12-15 | 华东交通大学 | 一种多核处理器集群任务资源分配方法 |
Non-Patent Citations (1)
Title |
---|
罗振山: "云计算中资源管理容错调度优化策略研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970613A (zh) * | 2014-05-21 | 2014-08-06 | 哈尔滨工程大学 | 一种异构分布式系统多副本任务容错调度方法 |
CN103970613B (zh) * | 2014-05-21 | 2017-05-24 | 哈尔滨工程大学 | 一种异构分布式系统多副本任务容错调度方法 |
CN105045580A (zh) * | 2015-06-30 | 2015-11-11 | 广州支点网络科技有限公司 | 一种复合行为驱动方法及装置 |
CN108628708A (zh) * | 2017-03-20 | 2018-10-09 | 中兴通讯股份有限公司 | 云计算容错方法及装置 |
CN107038070A (zh) * | 2017-04-10 | 2017-08-11 | 郑州轻工业学院 | 一种云环境下执行可靠性感知的并行任务调度方法 |
CN107038070B (zh) * | 2017-04-10 | 2021-04-16 | 郑州轻工业学院 | 一种云环境下执行可靠性感知的并行任务调度方法 |
CN109871270A (zh) * | 2019-01-22 | 2019-06-11 | 深圳大学 | 调度方案生成方法及装置 |
CN109871270B (zh) * | 2019-01-22 | 2021-04-02 | 深圳大学 | 调度方案生成方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102866918B (zh) | 面向分布式编程框架的资源管理系统 | |
CN104991830B (zh) | 基于服务等级协议的yarn资源分配和节能调度方法及系统 | |
CN109491790B (zh) | 基于容器的工业物联网边缘计算资源分配方法及系统 | |
EP3399426B1 (en) | Method and device for training model in distributed system | |
EP3014446B1 (en) | Asynchronous message passing for large graph clustering | |
CN102130938B (zh) | 一种面向Web应用宿主平台的资源供给方法 | |
CN102932422B (zh) | 基于改进蚁群算法的云环境任务调度方法 | |
CN102073546A (zh) | 一种云计算环境中分布式计算模式下的任务动态调度方法 | |
CN102799474A (zh) | 一种基于可靠性驱动的云资源容错调度方法 | |
EP2700008A1 (en) | Scheduling map and reduce tasks of jobs for execution according to performance goals | |
WO2013107012A1 (zh) | 分布式计算任务处理系统和任务处理方法 | |
CN107291536B (zh) | 一种云计算环境下应用任务流调度方法 | |
CN106201701A (zh) | 一种带任务重复的工作流调度算法 | |
CN110990154B (zh) | 一种大数据应用优化方法、装置及存储介质 | |
CN112416585A (zh) | 面向深度学习的gpu资源管理与智能化调度方法 | |
CN104679594A (zh) | 一种中间件分布式计算方法 | |
CN102790698A (zh) | 一种基于节能树的大规模计算集群任务调度方法 | |
CN102739785A (zh) | 基于网络带宽估计的云计算任务调度方法 | |
CN104102533A (zh) | 一种基于带宽感知的Hadoop调度方法和系统 | |
CN103294558A (zh) | 一种支持动态信任评估的MapReduce调度方法 | |
CN107070965B (zh) | 一种虚拟化容器资源下的多工作流资源供给方法 | |
CN103500119A (zh) | 一种基于预调度的任务分配方法 | |
Mahato et al. | Balanced task allocation in the on‐demand computing‐based transaction processing system using social spider optimization | |
CN103399787A (zh) | 一种基于Hadoop云计算平台的MapReduce作业流式调度方法及调度系统 | |
CN103970613B (zh) | 一种异构分布式系统多副本任务容错调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121128 |