一种基于Spark与优化MBBO算法的并行虚拟机聚合方法技术

技术编号:15638935 阅读:298 留言:0更新日期:2017-06-15 20:21
本发明专利技术提供一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,通过拓展的Spark并行框架及多目标生物地理学优化MBBO算法,从而能够在比较短的收敛时间内求解VMC问题的最佳迁移方案,为后续的虚拟机并行迁移奠定基础。其包括如下步骤,步骤1,将虚拟机聚合问题映射到生物地理学优化算法中,确定约束条件,明确求解目标;步骤2,基于拓展的Spark并行框架,分发满足约束条件的初始栖息地群到各Spark计算节点并迭代执行MBBO并行算法,直到满足终止条件,停止算法执行并获取能够平衡多个优化求解目标的最优解。利用拓展的Spark并行框架的同时,将生物地理学概念映射到优化问题中。

【技术实现步骤摘要】
一种基于Spark与优化MBBO算法的并行虚拟机聚合方法
本专利技术涉及计算机科学与技术中的虚拟机聚合领域,具体为一种基于Spark与优化MBBO算法的并行虚拟机聚合方法。
技术介绍
虚拟机VM(VirtualMachine)作为统一管理数据中心的硬件资源达到了空前的使用规模,与此带来两大难题,高能耗及负载不均衡。当前解决以上两种问题主要采用虚拟机聚合VMC(VirtualMachineConsolidation)技术,通过重排主机HM(HostMachine)上VM的放置位置,优化数据中心的能耗、负载均衡、网络带宽等多种方面。VMC通过在拓扑复杂的海量HM和VM中,建立数学模型并提出有效的聚合方案,将VM从源主机动态迁移到目标主机来实现。VMC是一种NP(Non-deterministicPolynomial)问题,难以在多项式时间内取得最优解,目前研究方向包括单目标聚合和多目标聚合。单目标的虚拟机聚合研究侧重在单个目标维度内对数据中心进行优化获取最优解,然而,单目标聚合过分简化了复杂性,使得单目标最优解往往牺牲其他目标为代价,造成数据中心综合性能的下降。多目标虚拟机聚合研究同时考虑多个目标,寻找多目标间的平衡点,提升多个方面的性能指标,当前主要有启发式装箱算法、动态规划算法和仿生学算法三种类型的聚合算法。启发式装箱算法、动态规划算法部署简单,求解速度快,但是只能考虑少数维度的计算资源,不足以解决复杂的虚拟机聚合问题。遗传算法和蚁群算法等仿生学算法能够处理多种资源的限制,但是搜索速度慢,并且存在配置参数复杂,参数对搜索结果影响很大的缺点。
技术实现思路
针对现有技术中存在的问题,本专利技术提供一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,通过拓展的Spark并行框架及多目标生物地理学优化MBBO算法,从而能够在比较短的收敛时间内求解VMC问题的最佳迁移方案,为后续的虚拟机并行迁移奠定基础。本专利技术是通过以下技术方案来实现:一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,步骤1,将虚拟机聚合问题映射到生物地理学优化算法中,确定约束条件,明确求解目标;步骤2,基于拓展的Spark并行框架,分发满足约束条件的初始栖息地群到各Spark计算节点并迭代执行MBBO并行算法,直到满足终止条件,停止算法执行并获取能够平衡多个优化求解目标的最优解。优选的,所述的步骤1中进行映射时,每一个栖息地代表符合约束条件的VM与HM的一种位置排列,栖息地由一个长度为VM数量的行向量表示,向量中第i个元素代表第i个VM聚合后对应的HM编号;VM对应的HM编号被映射为该栖息地的适宜性指数变量SIV,由该栖息地内所有SIV共同决定栖息地适宜性指数HSI,即该候选解对VMC该优化目标的匹配程度;众多的栖息地组成一个群岛,表示满足该VMC优化目标的候选解集合;高HSI栖息地的迁出率高,迁入率低;低HSI栖息地迁入率高,迁出率低。优选的,所述的步骤2,具体包括如下步骤,步骤2.1,通过添加二级Reduce方法拓展Spark并行框架,使其具有Map-1stReduce-2ndReduce3个执行阶段,并采用主从式-细粒度的两层并行化模型;并行框架的上层采用主从式的并行模式,由Master节点将初始栖息地群划分为若干个群岛,分配到不同的Worker节点并行执行;Master节点负责任务分派,结果回收、子问题的切分以及监督算法的执行状态;步骤2.2,并行框架的下层采用细粒度的并行模式实现各群岛的并行执行过程;各Worker节点采用Map方法接收对应的群岛,并进行群岛内SIV迁移和突变的迭代过程;采用1stReduce方法获取同一Worker节点上Map方法产生的中间结果,进行子代栖息地群和父代精英解的HSI计算并从高到地排序,替换更新该Worker节点保存的父代精英解并作为下一次迭代过程的初始栖息地群;步骤2.3,经过设定的迭代间隔,采用2ndReduce方法获取所有Worker节点1stReduce产生的最新精英解并相互交换,交付给Master节点;步骤2.4,由Master节点收集各Worker节点的精英解,判断终止条件,若不满足终止条件,则将收集的精英解重新分发到各Worker节点,作为新栖息地群参加下一次迭代过程。进一步,各Worker节点采用Map方法接收对应的群岛,并进行群岛内SIV迁移和突变的迭代过程时;运行于各Worker节点上的Map方法接收以键值对表示的群岛作为初始输入数据,经过群岛内SIV迁移、变异迭代过程,输出以Worker编号为变量名保存所有子代候选解的新列表。与现有技术相比,本专利技术具有以下有益的技术效果:本专利技术一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,利用拓展的Spark并行框架的同时,将生物地理学概念映射到优化问题中。其中,每一个栖息地就是解决问题的一个解,由栖息地中的所有适宜性指数变量SIV(SuitabilityIndexVariable)决定栖息地的适宜度HSI(HabitatSuitabilityIndex),HSI代表该候选解对问题的匹配程度。众多的栖息地组成一个群岛(Archipelago),表示虚拟机聚合问题的候选解。每个群岛代表一种优化目标,由所有群岛组成多目标优化的解空间。MBBO算法通过模拟物种在栖息地内,栖息地间,群岛内和群岛间的产生、灭绝和迁徙的过程,以迭代进化的方式寻找能够平衡多个优化目标的适应度最高的栖息地,该栖息地就是VMC的最优解。其中,ApacheSpark是基于MapReduce的分布式计算原理,采用内寸存储及运算的技术,将栖息地群的大规模操作分发给集群上的多个Worker节点并行执行,周期性更新各节点状态,实现海量数据的高并发处理,非常适合迭代计算较多的任务。通过设计拓展了Spark平台的并行框架,以Map-1stReduce-2ndReduce3个执行阶段,使其能够适合并行MBBO算法并高效求解,缩短计算时间,提高机器执行效率,出色完成虚拟机整合任务。与传统串行的MBBO算法相比较,并行MBBO算法求解时阻塞于局部最优解的概率更小,因此更加通用。同时增添2ndReduce阶段,拓展原有Spark并行框架使其能够更好的发挥并行MBBO算法的求解性能。由于采用并行计算,因此能够非常有效缩减求解时间,既保证服务水平协议SLA,也为实际问题的解决提供及时有效的方案。附图说明图1为本专利技术实例中所述的VMC问题到MBBO算法的映射。图2为本专利技术实例中所述的MBBO算法串行执行过程。图3为本专利技术实例中所述的MBBO算法的两层并行模式。图4为本专利技术实例中所述的拓展的Spark并行框架。图5为本专利技术实例中所述的MBBO算法的并行执行过程。具体实施方式下面结合具体的实施例对本专利技术做进一步的详细说明,所述是对本专利技术的解释而不是限定。本专利技术一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,其涉及到的MBBO算法的基本执行流程和对MBBO算法隐含并行性的分析分别如下。第一部分,MBBO算法的基本执行流程。MBBO算法采用仿生学算法通用的迭代进化的方式对复杂问题的最优解逐渐逼近,以不断迭代更新初始种群的方式寻找虚拟机聚合问题的有效解。在初始化的栖息地种群基础本文档来自技高网...
一种基于Spark与优化MBBO算法的并行虚拟机聚合方法

【技术保护点】
一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,其特征在于,包括如下步骤,步骤1,将虚拟机聚合问题映射到生物地理学优化算法中,确定约束条件,明确求解目标;步骤2,基于拓展的Spark并行框架,分发满足约束条件的初始栖息地群到各Spark计算节点并迭代执行MBBO并行算法,直到满足终止条件,停止算法执行并获取能够平衡多个优化求解目标的最优解。

【技术特征摘要】
1.一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,其特征在于,包括如下步骤,步骤1,将虚拟机聚合问题映射到生物地理学优化算法中,确定约束条件,明确求解目标;步骤2,基于拓展的Spark并行框架,分发满足约束条件的初始栖息地群到各Spark计算节点并迭代执行MBBO并行算法,直到满足终止条件,停止算法执行并获取能够平衡多个优化求解目标的最优解。2.根据权利要求1所述的一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,其特征在于,所述的步骤1中进行映射时,每一个栖息地代表符合约束条件的VM与HM的一种位置排列,栖息地由一个长度为VM数量的行向量表示,向量中第i个元素代表第i个VM聚合后对应的HM编号;VM对应的HM编号被映射为该栖息地的适宜性指数变量SIV,由该栖息地内所有SIV共同决定栖息地适宜性指数HSI,即该候选解对VMC该优化目标的匹配程度;众多的栖息地组成一个群岛,表示满足该VMC优化目标的候选解集合;高HSI栖息地的迁出率高,迁入率低;低HSI栖息地迁入率高,迁出率低。3.根据权利要求1所述的一种基于Spark与优化MBBO算法的并行虚拟机聚合方法,其特征在于,所述的步骤2,具体包括如下步骤,步骤2.1,通过添加二级Reduce方法拓展Spark并行框架,使其具有Map-1stReduce-2ndReduce3个执行阶段,并采用主从式-细粒度的两层并行化模型;并行框架的上层采用主从式...

【专利技术属性】
技术研发人员:郑庆华李睿钟阿敏刘猛王晔阳
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1