MapReduce Fault Tolerance via Local Reduce and Non-Block Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional MapReduce frameworks face significant challenges in efficiently processing extremely large data sets due to high computational costs and limited fault tolerance, particularly when dealing with failures in processing nodes.

Innovation Solution

The system employs a custom mapper script that outputs results directly to the reduce process, eliminating the need for a shuffle step. Results are written into multiple compressed files, which are then processed by map-only reduce jobs to aggregate and reduce data, ensuring that each file is handled by a single mapper, thereby improving fault tolerance and reducing computational overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional MapReduce framework is used to process extremely large data sets, then parallel processing capability is achieved, but fault tolerance is limited and computational costs are high

Engineering Contradiction:
Improvefault toleranceVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the processing workflow into distinct phases: Map phase, local Reduce phase, and final Reduce phase. Each phase operates independently with its own fault tolerance mechanisms. The local Reduce phase processes data locally without requiring shuffle, creating isolated processing units that can fail independently without affecting the entire system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary local reduction of data before the final reduce phase. By pre-processing and aggregating data locally at each node before shuffling, the system reduces the amount of data that needs to be transferred and processed in the final phase, while also creating intermediate results that can be recovered independently if failures occur.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If shuffle step is included in MapReduce process, then data redistribution is achieved, but computational overhead and processing time increase

Engineering Contradiction:
Improveprocessing throughputVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts and eliminates the shuffle step from the traditional MapReduce workflow by implementing local reduce phases that process data immediately after the map phase without requiring data redistribution. This removal of the shuffle step directly reduces processing time and computational overhead while maintaining processing throughput.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If all Map nodes are re-run to recover from Reduce node failure, then data consistency is maintained, but computational resources and time are wasted

Engineering Contradiction:
Improvedata consistencyVSAvoidcomputational resources
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements prior cushioning by creating local reduce phases that produce intermediate results stored independently before the final reduce phase. These intermediate results act as a cushion or buffer that can be recovered independently if failures occur, preventing the need to re-run entire Map phases and preserving both data consistency and computational resources.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

4Productivity

If multiple Reduce nodes are used to process large data sets, then parallel processing is achieved, but system complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the reduce operation into local reduce phases distributed across multiple nodes and a final aggregate reduce phase. This segmentation maintains parallel processing capability while simplifying each individual node's complexity, as each node only needs to implement local reduction logic rather than full MapReduce coordination.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12326779B2Fault tolerant big data processing
Publication Date: 2025.06.10 LIVERAMP
  • US12326779B2 patent drawing
  • US12326779B2 patent drawing

AI summary

A method for improving fault tolerance of MapReduce computing systems processing extremely large data sets employs a custom mapper script that outputs the results to the shuffle and reduce processes. The Reducer writes its results into multiple files that are then compressed. The resulting files are processed by a map-only Reducer job that aggregates and reduces the results of a single file into a single output. The non-block compression prevents the file from being split across multiple mappers. The job can recover if a single mapper fails without requiring that each Map node be rerun, thus improving fault tolerance.