Green Hadoop: Optimizing Energy Efficiency for Streaming Jobs in YARN

Energy-Efficient Task Scheduling for CPU-Intensive Streaming Jobs on Hadoop

2018-11-13
Peiquan Jin, Xingjun Hao, Xiaoliang Wang, Lihua Yue
Summary
Problem
Method
Results
Takeaways
Abstract

The paper introduces an energy-efficient task scheduling framework for CPU-intensive streaming jobs on Hadoop 2.0 (YARN). It proposes the D-based binning algorithm for batch jobs and the K-based binning algorithm for online jobs, optimizing the trade-off between CPU-usage-aware allocation and resource consolidation.

TL;DR

As data centers grapple with rising energy costs—often accounting for 50% of total ownership costs—optimizing distributed frameworks like Hadoop has become critical. This paper presents a novel scheduling framework for Hadoop 2.0 (YARN) that uses task-specific CPU profiling and DVFS (Dynamic Voltage and Frequency Scaling) to reduce energy consumption in streaming jobs by up to 10% without sacrificing throughput.

Background & Motivation

Hadoop 1.0 was built for offline batches, but Hadoop 2.0 (YARN) introduced real-time stream processing via engines like Apache Storm. However, YARN's native schedulers are "energy-blind." They focus on fairness or capacity but ignore the physical power state of the underlying nodes.

The authors identify a specific gap: while MapReduce energy efficiency has been studied using "deadline-aware" strategies, streaming tasks have no deadlines—they run indefinitely. Thus, a new model is needed to balance the message processing rate (performance) against power draw (energy).

Methodology: The Core Intuition

The researchers' approach rests on a mathematical insight: task performance is a function of both the allocated Virtual Cores (VCores) and the physical CPU frequency. If you lower the frequency to save power, you must increase the VCore count to maintain the same message throughput.

1. The Energy-Performance Model

The authors propose a task-oriented model where:

  • Performance is proportional to allocated VCores () and a frequency-dependent scaling factor .
  • Power is modeled as a cubic function of frequency (), weighted by the task’s CPU usage.

2. The Scheduling Framework

The framework introduces four key components to the YARN architecture:

  • Task Profiler: Estimates the CPU usage () of incoming tasks using historical data.
  • Batch Scheduler: Uses a D-based binning algorithm for tasks submitted simultaneously. It groups tasks with similar frequency requirements to minimize the "absolute central moment" of frequency deviation within a node.
  • Online Scheduler: Uses a K-proximity binning algorithm for tasks arriving one-by-one, ensuring new tasks are placed in nodes that already match their power profile.
  • DVFS Adapter: The physical actuator that adjusts the actual CPU frequency on the NodeManager.

Framework Architecture Figure 1: The extended YARN architecture with Energy-Efficient Schedulers.

Two Key Scheduling Principles

  1. CPU-usage Aware Allocation: Matching tasks with similar "computational intensity" to the same node so the CPU can run at a single optimal frequency for all of them.
  2. Resource-Efficient Allocation: Co-locating tasks to minimize "Virtual Tasks" (idle resources) that still consume static power.

Experimental Validation

The authors tested the framework on a 7-node Hadoop cluster using two real-world IoT workloads: Sense your City and Indoor Trajectory.

Comparison with SOTA

The results were compared against several baselines, including TAPA (Temperature Aware) and DVFS-MR.

  • Energy Savings: The Batch algorithm (D-BINNING) reduced energy by 10% over the next best competitor and was 42% more efficient than Storm’s default round-robin scheduler.
  • Scalability: Simulations up to 200 nodes showed that the energy gains and performance overhead scale linearly, making it suitable for large-scale data centers.

Comparative Results Figure 2: Energy consumption comparison across different scheduling strategies.

Critical Insight & Conclusion

The brilliance of this work lies in the trade-off between binning and frequency. If you group tasks too strictly by CPU usage (low or ), you might under-utilize nodes and keep too many physical servers powered on. If you group too loosely to save on the number of servers, you lose the ability to tune the frequency to the tasks' specific needs.

Limitations

  • CPU Sensitivity: The current work focuses strictly on CPU-intensive jobs. In real-world YARN clusters, IO-intensive and memory-bound jobs are equally prevalent.
  • Homogeneity: The testing was performed on a cluster with identical Intel Core i5 nodes. Heterogeneous clusters (mixing different CPU generations) would complicate the frequency-matching function significantly.

Future Work

The authors aim to bridge the gap between CPU-bound and IO-bound streaming jobs and explore heterogeneous node management, which is a common reality in aging data centers.

Find Similar Papers

Try Our Examples

  • Search for recent studies on energy-efficient scheduling in Hadoop YARN that specifically address multi-resource constraints including IO and memory beyond just CPU-intensive tasks.
  • Which paper first established the regression model for CPU power consumption as a polynomial function of frequency (f^3, f^2, f), and how has this model been adapted for virtualized environments?
  • Explore how the K-based binning or similar proximity-based scheduling algorithms have been applied to optimize energy efficiency in edge computing and heterogeneous IoT environments.
Contents
Green Hadoop: Optimizing Energy Efficiency for Streaming Jobs in YARN
1. TL;DR
2. Background & Motivation
3. Methodology: The Core Intuition
3.1. 1. The Energy-Performance Model
3.2. 2. The Scheduling Framework
4. Two Key Scheduling Principles
5. Experimental Validation
5.1. Comparison with SOTA
6. Critical Insight & Conclusion
6.1. Limitations
6.2. Future Work