MapReduce Scheduler Coupling Map and Reduce Phases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional MapReduce schedulers fail to ensure fairness between map and reduce phases, leading to underutilization and starvation issues, particularly in heterogeneous environments where data locality is not optimally considered, resulting in inefficient resource allocation and performance degradation.

Innovation Solution

A resource-aware scheduler, or 'coupling scheduler,' that compares the progress of map and reduce phases to schedule the launch of reduce tasks based on map progress, employing wait scheduling for reducers and random peeking scheduling for mappers to optimize data locality and mitigate starvation, thereby ensuring fair resource allocation and improved performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If reducers are launched greedily to a maximum in conventional schedulers, then the reduce phase can start immediately, but this leads to underutilization of computing resources and starvation of map tasks

Engineering Contradiction:
Improvereduce phase throughputVSAvoidcomputing resource underutilization
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The scheduler dynamically adjusts the launch of reduce tasks based on real-time map phase progress. Instead of a static greedy approach, the system continuously monitors map task completion and adapts reducer launching decisions, ensuring resources are utilized efficiently without causing starvation

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduler implements feedback mechanisms by monitoring map phase progress and using this information to control reduce task launching. The system receives feedback about map task status and adjusts reducer allocation accordingly, preventing both underutilization and starvation

Inventive Principle:
Principle #23Feedback

2Reliability

If delayed scheduling is used to improve data locality for map tasks, then data locality is improved, but performance degrades in heterogeneous environments due to under-utilization and instability

Engineering Contradiction:
Improvedata localityVSAvoidjob processing performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The scheduler applies different scheduling strategies to different parts of the system based on local conditions. It considers data locality requirements for map tasks while simultaneously accounting for reduce task needs, applying localized optimizations rather than a uniform delayed scheduling approach across all tasks

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes scheduling parameters dynamically based on job characteristics and cluster state. Instead of fixed delayed scheduling, it adjusts timing and allocation parameters to balance data locality improvements with performance maintenance in heterogeneous environments

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If conventional schedulers only consider local inputs for map tasks, then map task scheduling is simplified, but intermediate data fetching by reducers becomes inefficient

Engineering Contradiction:
Improvescheduling algorithm complexityVSAvoidintermediate data access efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The scheduler merges the scheduling considerations for map tasks and reduce tasks into a unified decision-making process. Instead of treating them separately, it combines both requirements to make coordinated scheduling decisions that optimize intermediate data access while maintaining manageable complexity

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8924977B2Sequential cooperation between map and reduce phases to improve data locality
Publication Date: 2014.12.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8924977B2 patent drawing
  • US8924977B2 patent drawing
  • US8924977B2 patent drawing

AI summary

Methods and arrangements for task scheduling. At least one job is assimilated from at least one node, each job comprising at least a map phase and a reduce phase, each of the map and reduce phases comprising at least one task. Progress of a map phase of at least one job is compared with progress of a reduce phase of at least one job. Launching of a task of a reduce phase of at least one job is scheduled in response to progress of the reduce phase of at least one job being less than progress of the map phase of at least one job.