当前位置: 首页 > 专利查询>山东大学专利>正文

基于服务等级协议的YARN资源分配和节能调度方法及系统技术方案

技术编号:12228113 阅读:81 留言:0更新日期:2015-10-22 04:12
本发明专利技术公开了基于服务等级协议的YARN资源分配和节能调度方法及系统,步骤如下:在提交MapReduce程序前对其进行预分析,从该程序过去的运行日志中解析出所需的性能指标;在提交MapReduce程序后,根据其性能指标计算出基于完成时间上限的最低任务并行度;根据每个MapReduce程序不同的并行度,通过SLA资源调度器为其分配定量的资源;监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的理想执行时间和频率;根据剩余任务的预期执行频率,利用CPUfreq子系统动态调节CPU的电压和频率,从而达到节能的目的。本发明专利技术在保证MapReduce程序服务等级协议的前提下为其分配定量资源,并结合动态电压频率调整技术最大限度地降低云计算平台中的能耗。

【技术实现步骤摘要】

本专利技术属于云计算
,尤其涉及一种基于服务等级协议的YARN(Yet Another Resource Negotiator)资源分配和节能调度方法及系统。
技术介绍
随着云计算的兴起,越来越多的公司开始使用MapReduce和Apache Hadoop来提 供云计算服务。MapReduce是谷歌提出的一种编程模型,通常用于大规模数据集的并行运 算。这个模型可以使任务在大型集群上自动并行化,因此特别适用于大数据的分析与处理。 Hadoop是一个实现了包括分布式文件系统(HDFS)和MapReduce模型在内的开源的分布式 并行编程框架,这个框架可以部署在普通的商业硬件上,具有低成本、高有效和高容错等特 性。 虽然Hadoop已成为当前最流行的大数据分析系统,但是它在可扩展性、可靠性和 资源利用等方面还存在一定的局限性。为了克服这些问题,Apache将Hadoop 1.0中的资 源管理功能抽象成一个独立的通用系统YARN。由于YARN的通用性,Hadoop 2. 0的目标已 经不再局限于支持MapReduce -种计算框架,而是朝着对多种框架(如Storm、Spark和S4 等)进行统一管理的方向发展。 在云计算环境下,云计算服务供应商必须尽可能地满足应用程序的服务等级协议 (SLA)中指定的截止时间。此外,高性能计算集群的不断增加和大规模部署带来了巨大的资 源和能源消耗,所以在保证SLA的前提下,服务商们还需要考虑资源和能源的成本问题。 YARN提供了三种可用的资源调度器,分别是FIF0(First In First Out)、 Capacity Scheduler和Fair ScheduleroCapacity Scheduler是Yahoo !开发的多用户调 度器,它以队列为单位划分资源,每个队列可设定一定比例的资源最低保证和使用上限,同 时,每个用户也可设定一定的资源使用上限以防止资源滥用。Fair Scheduler是Facebook 开发的多用户调度器,它同样添加了多层级别的资源限制条件以更好地让多用户共享一个 Hadoop集群。此外,Fair Scheduler提供了更多样化的调度策略,它允许为每个队列单独 配置调度策略,分别是先来先服务、公平调度和主资源公平调度。然而,这三种资源调度器 都不能保证应用程序的完成时间不超过截止时间,也没有考虑基于SLA的资源分配和节能 调度问题。事实上,在共享的云计算环境下,没有一种资源调度器可以准确判断出满足应用 程序SLA的最少硬件资源,这是由数据本地化、网络带宽、访问延迟等因素的不确定性造成 的。目前,云计算环境中的节能机制有多种不同的分类标准。其中,按照功耗管理的不 同方式可以分为动态功耗管理技术和静态功耗管理技术两类。按照降低能耗阶段的不同可 分为关闭/开启技术、动态电压频率调整技术以及虚拟机技术三类,前者主要降低空闲能 耗,后两者均使用了动态功耗管理技术来降低任务的执行能耗。此外,基于主机关闭/开启 的节能策略又可以分为三类:随机式策略、超时式策略和预测式策略。利用这些节能机制, 有些研宄提出了针对分布式系统或第一代MapReduce (MRvl)模型的实时和/或节能调度 方案。然而由于系统结构和资源管理机制的差异,这些现有的调度策略有的并不能适用于 YARN,其他的策略则会导致次优的调度和资源分配决定。 鉴于上述研宄背景,目前亟需一种基于服务等级协议的资源分配和节能调度方案 来解决YARN环境中存在的两大挑战: -是在共享的云计算环境下如何根据服务等级协议SLA (Service Level Agreement)自动调整和控制每个程序的资源分配; 二是如何最大限度地降低整个集群系统的能耗。
技术实现思路
本专利技术的目的就是为了解决上述问题,提供一种基于服务等级协议的YARN资源 分配和节能调度方法及系统,它具有(1)在Hadoop 2.0集群中,根据每个MapReduce程序 的截止时间自动为其分配合适的资源;(2)在保证SLA的前提下,最大限度地降低整个集群 系统的能耗的优点。本专利技术通过对MapReduce程序进行预分析得到的性能指标来确定资源 分配,并结合动态电压频率调整0VFS)技术充分利用任务的松弛时间来降低Hadoop集群 的能耗。 为了实现上述目的,本专利技术采用如下技术方案: 基于服务等级协议的YARN资源分配和节能调度方法,包括如下步骤: 步骤(1):在提交MapReduce程序前,对每个MapReduce程序进行预分析,SP从 MapReduce程序过去的运行日志中解析出所需的性能指标; 步骤⑵:在提交MapReduce程序后,根据步骤⑴解析出的性能指标,计算每个 MapReduce程序最差执行情况下任务的最低并行度; 步骤(3):根据每个MapReduce程序各自的最低并行度,为每个MapReduce程序分 配不同的资源容器; 步骤(4):监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的理想 执行时间和预期执行频率; 步骤(5):根据剩余任务的预期执行频率,利用CPUfreq子系统动态调节CPU的电 压和频率,从而达到节能的目的。 所述步骤⑴的性能指标包括: 程序初始化最长用时、map任务的平均执行时间、map任务的最长执行时间、首次 shuffle的最长持续时间、shuffle阶段的平均持续时间、shuffle阶段的最长持续时间、 reduce任务的平均执行时间和reduce任务的最长执行时间。 每个MapReduce程序包括两种子任务:map子任务和reduce子任务。 Map子任务负责读取输入的数据块并产生中间结果,中间结果存在本地磁盘中并 成为reduce子任的输入数据。 Reduce子任务负责合并相关的中间结果并将生成的最终结果写入HDFS。 所述步骤⑴中: 如果所述MapReduce程序从未在集群中运行过,则在一个设定的数据集上预先执 行MapReduce程序来解析出所需的性能指标。 解析出所得的性能指标均独立于分配给所述MapReduce程序的资源量,并且反映 了 MapReduce程序所有阶段的信息。 此外,为了对频率进行更加精确地调整,解析时还需要提取任务的性能和运行频 率之间的关系。 所述步骤(2)的具体步骤为: 步骤(201):在提交MapReduce程序时,将MapReduce程序的性能指标提交到资源 管理器中; 步骤(202):当MapReduce程序加入作业队列后,根据MapReduce程序的性能指标 利用边界定理预估MapReduce程序在最差执行情况下的完成时间; 步骤(203):根据步骤(202)中得出的完成时间的上限,计算出程序map和reduce 两阶段任务的最低并行度。 所述步骤(202)的最差执行情况下的完成时间:T/p的计算方法为: 其中,^表示map任务的最低并行度,P/表示reduce任务的最低并行度,Mj表示 map任务的数量,Mavg表示map任务的平均执行时间,R j表示reduce任务的数量,表示 shuffle阶段的平均持续时间,Ravg表示reduce任务的平均执行时间,I _表示程序初始化 最长用时,表示map任务的本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/CN104991830.html" title="基于服务等级协议的YARN资源分配和节能调度方法及系统原文来自X技术">基于服务等级协议的YARN资源分配和节能调度方法及系统</a>

【技术保护点】
基于服务等级协议的YARN资源分配和节能调度方法,其特征是,包括如下步骤:步骤(1):在提交MapReduce程序前,对每个MapReduce程序进行预分析,即从MapReduce程序过去的运行日志中解析出所需的性能指标;步骤(2):在提交MapReduce程序后,根据步骤(1)解析出的性能指标,计算每个MapReduce程序最差执行情况下任务的最低并行度;步骤(3):根据每个MapReduce程序各自的最低并行度,为每个MapReduce程序分配不同的资源容器;步骤(4):监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的理想执行时间和预期执行频率;步骤(5):根据剩余任务的预期执行频率,利用CPUfreq子系统动态调节CPU的电压和频率,从而达到节能的目的。

【技术特征摘要】

【专利技术属性】
技术研发人员:鞠雷贾智平李萍
申请(专利权)人:山东大学
类型:发明
国别省市:山东;37

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

1