论文部分内容阅读
数据中心的能效问题受到了越来越多人的关注,降低数据中心的能耗不仅直接关系到降低运营成本,还有助于减少温室气体的排放。MapReduce已经成为了数据中心主要的大规模数据处理框架,提高MapReduce的能效有助于降低数据中心的能耗。本文提出了Green Scheduling,一种提高MapReduce能效的调度策略。本文将MapReduce集群的生命周期划分为运行阶段和空闲阶段,Green Scheduling针对这两个阶段分别采用GreenFair Scheduler和Green Node Keeper两种方法来提高能效。这两个方法都是基于MapReduce集群节点的功耗特性:non-power proportional(消耗的电量和所完成的工作不成比例)。
对于运行时期,Green Fair Scheduler从调度的角度提高MapReduce的能效。本文比较了一个混合作业(一个计算密集型作业和一个IO密集型作业)在FIFO Scheduler和Fair Scheduler调度下的能耗,结果显示Fair Scheduler相对FIFO Scheduler能节约9%的能耗。节省的能耗是由于Fair Scheduler通过重叠计算密集型任务和IO密集型任务所取得的更好的资源利用率。然而重叠是偶然,因为Fair Scheduler没有作业资源使用情况的信息。这种重叠的偶然性让我们看到了Fair Scheduler能效提升的空间。本文提出了一种高能效的调度策略Green Fair Scheduler,稍微放松公平性以创造出尽可能多的机会重叠资源互补型任务。结果表明Green Fair Scheduler能节省Fair Scheduler7%-9%的能耗。
对于空闲时期,整个集群仍然消耗其峰值时的一半的功率。本文借助电源管理技术,实现了一种能耗管理机制Green Node Keeper来降低集群在空闲时的功耗。当在一段时间内检测到没有作业运行时,Master会将所有Slave节点进入到低功耗状态。当有作业提交时,Master唤醒这些节点执行任务。本文研究了Green Node Keeper影响MapReduce框架的两个因素:进入睡眠状态时间和唤醒时间。
本文对Green Scheduling的节能效果进行了实验验证。结果表明,Green Scheduling的两种方法能同时节省MapReduce集群45%的能耗。