论文部分内容阅读
随着云计算技术的不断发展,融合多个云计算环境的混合云越来越得到广泛的应用。在许多科研应用程序中,要得到最终结果需要执行一系列任务。而这些任务,如数据生成、处理、分析等,之间存在着相互依存的关系,这些任务组合及其相互依存关系构成了工作流。在很多具体的大数据应用实践中,工作流技术已经成为不可或缺的一部分。目前云计算服务分为三种:软件即服务(Software as a Service,SaaS),平台即服务(Platform as a Service,PaaS),基础设施即服务(Infrastructure as a Service,IaaS)。基础设施即服务是将计算资源抽象成一个个虚拟机,将虚拟硬件资源提供给用户。它对于大数据工作流的执行是最适用的。对于一个工作流,可以直接应用云平台所提供的虚拟硬件资源来执行各个任务,就像传统的运行在集群上的工作流一样。 在实际应用中,预算约束和可靠性约束都是对大数据工作流的部署非常重要的约束。预算约束是保证工作流能以较低的成本运行完成,而可靠性约束针对的是真实的云环境中的各种不确定性和故障。本文针对在预算和可靠性双重约束条件下的多个云环境中工作流映射问题,抽象出问题的数学模型,分析了问题的复杂性,设计了启发式算法,并进行了实验比较。文章证明了问题的复杂度是属于NP-Complete的,并且通过实验发现本文提出的算法相比较之前的算法有明显的优越性。 本文对于工作流映射的研究分为以下几部分: 问题的提出与复杂性的证明。本文针对预算受约束,通过工作流映射,建立了针对两种不同可靠性要求下的端对端延迟最小化问题的数学模型。通过复杂性分析,证明了这两个问题都是一类NP-Complete问题的子问题,从而得到这两个问题也都是NP-Complete的。 问题的分析与算法的设计。针对这两个问题,分别提出了启发式算法RMCWM和EMCWM,算法分为虚拟机选择、物理机及带宽选择两个阶段。由于问题中对可靠性的建模采用了3GG模型,在分析该模型特性的基础上,发现了优化可靠性的规律。并将这种规律融入算法的设计中,取得了很好的效果。 模拟实验和性能评估。本文对所设计的算法针对不同规模的云和不同数量的云组合,进行了模拟实验。实验证明了不论在小规模的云组合的情况下还是大规模的云组合的情况下,该算法对比之前的算法都有明显的优越性。