一种云中基于任务重叠与虚拟机迁移的容错任务调度方法_4

文档序号:9326745阅读:来源:国知局
发出的消息或数据必须同时传送给<和€。
[0127] 引理1表明了从父任务出发的传输连接的约束。不从父任务出发的传输连接的约 束受到父任务的类型与其在主机上的分配的影响,下文将详细讨论这一问题。
[0128] 首先讨论当?f为强主版本时的情况。如果\是t i的子任务,if可以是强主版本 或者弱主版本,此外
《下面分别对这四种情况进行讨论。
[0129] 情况1, <是强主版本,
。图6给出了情况1的一个例子。
[0130] 如图6所示,边ef是冗余的。也就是说,为实现容错,< 并不需要从if接收消息或 数据。根据引理1,边ef和边ef是需要的。如果边#也需要应该执行。若/f执行, 贝iJM<)-定在iT之前出错。根据我们的容错假设,此时不会有其他主机出错,那么只需要 通过边ef传送消息或数据到 <即可,可保证<成功完成。因此,边ef是冗余的。
[0131] 去除了边ef,<的开始时间可适当前移,增加了巧在截止期内完成的概率。 可被重新计算为:
[0133] 情况2, 是弱主版本,
。图7给出了情况2的一个例子。
[0134] 如图7所示,边<和^都不冗余,否则不能实现容错。需要注意的是,^ 必须与 <和if有边相连,而不像./f只需要和f有边。图7显示了彳仅接收从if传来消息 或数据的例子(仅考虑tjp t ,两个依赖任务)。由图7可知,如果/?(<)在if之前出错, <和<都不能执行。因此,if必须与if之间存在消息或数据传输连接。因此,豸的最早开 始时间可计算为:
[0136] 根据上面对情况1和情况2的分析,得到如下命题。
[0137] 命题 2, el",t# P (t CU1),如果 if 是强主版本且
贝IJ :1)如果if是强主版本,那么4必须与if和if有边(即边< 和ef ),蛘必须与if有 边(即边ef ) ;2)如果<是弱主版本,那么(必须与 <有边(即边ef ),必须和和 if有边(即边和< )。
[0138] 侖题3, el% t# p(t j) ,tjG c(t J,如果If是强主版本,<是弱主版本且
,那么?f不能被分配到。在命题3中,如果
,若该主机 出错,由于if是弱主版本不能执行,^必须执行,但是#被分配的主机出错,导致t,没有机 会执行,因此?不能被分配到
[0139] 情况3, #是强主版本,
。图8给出了情况3的一个例子。
[0140] 在图8中,边 < 是冗余的。根据引理1,边ef和边ef:是必须有的。如果有ef:, 则@:和<需要执行。而if执行的条件是/心^在 :Jf之前出错,这意味着if不能执行。因 此,当If执行后,仅需要传递消息或数据给 <。因此边<p是冗余的。
[0141] 情况4, ff是弱主版本
。图9给出了情况3的一个例子。
[0142] 根据引理1,边ef和边是必须有的。此外,在出错时,边ef是需要的。 情况3和情况4中if的最早开始时间可以根据公式(5)进行计算。
[0143] 基于上述分析,我们得到如下命题:
[0144] 命题4,G Γ,tl e P (t ),tj e C (t J,如果if是强主版本且
那么if必须与If有边(即边《f ),f必须与if和if有边(即边#和ef:)。
[0145] 然后讨论当?f为弱主版本时的情况。if为弱主版本时,情况更为复杂,为便于分 析,首先给出如下3个定义:
[0146] 定义3,导致弱主版本的任务集合Δ i {·}:是指if不能接收到其父任务副版本传 来的消息或数据的那些父任务集合。
[0147] 定义4,导致弱主版本的任务主版本集合:是指集合Δ i { ·}中任务主版本构 成的集合。
[0148] 定义5,导致弱主版本的任务主版本所在主机集合{·});是指集合Af {·}中 任务主版本所在主机构成的集合。
[0149] 图10给出了定义3、4、5的例子。如图10所示,、有3个父任务ta、t b和 t。。但只有1和t。使 < 成为弱主版本。因此,Δ i { · }变为Δ i {a, c} = {ta, t。};
[0150] 引理2,对于一个弱主版本if .,其相应的副版本if不能被分配到集合丨]_) 中的任一主机上。
[0151] 证明:采用反证法。假设if被分配到了集合中的主机匕上,
。如果匕在.之前出错,if不能收到从发来的消息或数据,因 此if不得不执行。但是,?<被分配到了匕上,导致If和if均不能成功完成。与容错保障产 生矛盾。
[0152] 基于以上定义与引理,我们考虑h子任务的分配约束。假设t CU1),;^可能 是强主版本或者弱主版本,/咐,")=/咐f)或者/?((,") 7 A(<),因此存在4种不同情况需要 进行分析。
[0153] 情况5,〈为强主版本,且* 图11给出了情况5的一个例子。
[0154] 如图11所示,为弱主版本,璆为强主版本,且吨")。如果没有边<, 则<不能分配到Μ?)上。
[0155] 宙理I, T,t# P(t J,t# C(t J,如果/f是弱主版本,if是强主版本,
. ^ ,则 :1)《不能被分配到中的任一主机上;2)若<被分配到 HiSXAf 中的某一主机上,必须增加边。
[0156] 证明:采用反证法。假设f被分配到//5(Δ,"?·?.)中的某一主机hk上,
且没有边#。如果匕在f之前出错,f不能执行。根据引理 2, if可以成功执行。由于if被分配到了 hk,<不能执行,因此/f必须发送消息(或数据) 给if。但是没有边ef,产生矛盾。
[0157] 情况6, <为弱主版本,且) #相^>,图12显示了情况6的一个例子。
[0158] 与情况5类似地,由图12可知,当if为弱主版本,/f为弱主版本,且
时,彳不能分配到Μ?)上。
[0159] 情况7, <为强主版本,且)=/Hf h
[0160] 情况8, if为弱主版本,且Mr") = /?(<)。
[0161] 图13显示了情况7和情况8的一个例子。
[0162] 由图13可知,当 < 为弱主版本,且/<〇 = /</;)时,无论 < 是强主版本还是弱主 版本,<均不能被分配到/Kff)上。
[0163] 定理1,eJ7, t# p(tj),tje CU1),如果:lf是弱主版本,<也是弱主版本,
那么if不能被分配到iISCAf 0 )中的任一主机上。
[0164] 证明:采用反证法。假设 < 被分配到Η5(Δ,"卜丨)中的某一主机hk上,
3如果匕在if之前出错,不能执行,因此<不能执行。根据引 理2, /f执行并且,f接收到|f的消息或数据后,萼必须执行。但是,芩已被分配到了 hk上, ^也不能执行,与容错保障产生矛盾。因此1^不能被分配到中的任一主机上。
[0165] MM3, VtiJj €.Γ, t# P(t ),t# C(t上如果if是弱主版本,(是强主版本, 且/KO二A(彳),那么I) 不能被分配到iiSCAfm中的任一主机上;2)若<被分配到 中的某一主机上,必须增加边<。:
[0166] 证明:采用反证法。假设 < 被分配到纖_^;〇中的某一主机匕上,
<且没有边ef。如果匕在/A p之前出错,<不能执行。根据引理 2, f执行。if必须执行。由于没有边ef,if不得不执行,但是,if已被分配到了 hk上,if 也不能执行,与容错保障产生矛盾。因此如果不增加边ef,if不能被分配到/^〇\『丨-" 中的任一主机上。
[0167] 下文将分析保证容错前提下的任务重叠和虚拟机迀移限制。
[0168] 在实际系统中,由于绝大部分的任务副版本仅占用资源并不执行,因此在本文中 我们采用重叠机制以提高云资源利用率进而提高系统的可调度性。
[0169] 不同于独立任务,在有依赖任务的容错调度中,不能采用副版本-副版本重叠(即 前述的BB重叠)方式,只能采用主版本-副版本重叠(即前述的PB重叠)方式。图14与 图15给出了 PB重叠的两个例子,其中图14示出的是PB重叠中子任务的主版本早于父任 务的副版本开始的情况,图15示出的是PB重叠中子任务的主版本晚于父任务的副版本开 始的情况。
[0170] 图14与图15分别示出了 <和<重叠的两种可能情况。在这两种情况下,即便是 在某一主机出错的情况下,tjP t ^均可以成功执行。在图14中,当if成功完成后,if将被 取消,因此< 可以执行;在图15中,当 <成功完成后,f在If开始执行前已被取消,|f和 ^没有执行时间上的冲突,因此可以实现容错。
[0171] 定义6,集合0HS{ · }:重叠任务(主版本或者副版本)所分配到的主机构成的集 合。
[0172] 重叠任务是指该任务的某一版本与另一个任务的某一版本重叠的任务。如图16 所示,任务L与任务t j重叠,任务t j与任务t k重叠。这3个任务即为重叠任务,则相应集 合 0HS{ · }为 Oi1, h2, hj。
[0173] 侖题5, 如果《与0HS{ · }中某一主机上的副版本重叠,那么if不能被 分配到0HS{ · }中的任一主机上。
[0174] 图16给出了命题5的一个例子。由图16可知,<与 <重叠,if不能被分配到比、 M5P h 4上。假设所在的主机匕在之前出错,#执行,因此if不能执行,最终导致if执 行。但是由于Ii1出错,^也不能执行。类似的情况在Ill出错时也会发生。
[0175] 另一方面,云中虚拟机迀移是整合虚拟机提高系统资源利用率和降低能耗的有效 手段。需要注意的是,虚拟机迀移必须满足上述的任务分配和消息传递约束才能实现容错。
[0176] 命题6,假设NH
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1