AutoTune Framework for Hadoop Reduce Task Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing MapReduce framework requires manual optimization of reduce tasks, which is non-trivial and often results in suboptimal resource usage and execution time due to the lack of automated tuning mechanisms, especially with increasing data growth rates and changing data formats.

Innovation Solution

The AutoTune framework automates the tuning of reduce tasks by using an ensemble of performance models that predict workflow completion time and optimize resource usage, incorporating a platform performance model, MapReduce job model, and workflow performance model to determine the optimal number of reduce tasks for efficient workload management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual optimization of reduce tasks is performed in MapReduce framework, then execution time and resource usage can be optimized, but the process becomes complex and non-trivial requiring expert knowledge

Engineering Contradiction:
Improveexecution efficiencyVSAvoidoptimization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs self-optimization by automatically tuning reduce task parameters based on platform performance models and workflow characteristics, eliminating the need for manual expert intervention while achieving optimal execution efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system automatically adjusts key parameters such as the number of reduce tasks, input split size, and memory allocation based on platform performance models and workflow characteristics, transforming manual parameter tuning into automated parameter optimization

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the number of reduce tasks is increased to improve processing parallelism, then productivity increases, but resource usage increases proportionally

Engineering Contradiction:
Improveprocessing parallelismVSAvoidresource usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system dynamically determines the optimal number of reduce tasks based on real-time platform performance models, workflow characteristics, and available resources, rather than using fixed or overly aggressive parallelism settings, achieving productivity improvement with minimized resource consumption

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If automated tuning mechanisms are implemented to optimize reduce tasks, then ease of operation improves, but device complexity increases due to additional modeling and computation

Engineering Contradiction:
Improveautomation levelVSAvoidsystem architecture
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system introduces performance models as intermediary components that bridge the gap between user requirements and system optimization, automatically translating workflow characteristics into optimal reduce task configurations without requiring complex user-side modifications

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9772886B2Optimizing execution and resource usage in large scale computing
Publication Date: 2017.09.26 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9772886B2 patent drawing
  • US9772886B2 patent drawing
  • US9772886B2 patent drawing

AI summary

A method for tuning workflow settings in a distributed computing workflow comprising sequential interdependent jobs includes pairing a terminal stage of a first job and a leading stage of a second, sequential job to form an optimization pair, in which data segments output by the terminal stage of the first job comprises data input for the leading stage of the second job. The performance of the optimization pair is tuned by determining, with a computational processor, an estimated minimum execution time for the optimization pair and increasing the minimum execution time to generate an increased execution time. The method further includes calculating a minimum number of data segments that still permit execution of the optimization pair within the increased execution time.