MapReduce Coordinator Using On-Demand Code Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional MapReduce implementations require a dedicated framework or infrastructure to manage execution of map and reduce functions, leading to limitations in flexibility, speed, and efficiency, especially when processing large data sets.

Innovation Solution

An on-demand code execution environment that utilizes coordinator functions as tasks to organize and execute map and reduce functions, eliminating the need for a persistent infrastructure and enabling rapid, parallelized data processing by pre-warming virtual machine instances for immediate task execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a dedicated framework or infrastructure is used to manage MapReduce execution, then reliability and coordination are improved, but device complexity and operational overhead increase

Engineering Contradiction:
Improveexecution coordinationVSAvoidinfrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the MapReduce execution management functionality from a dedicated persistent framework and relocates it to serverless function executions. The coordination logic is packaged as self-contained functions that are invoked on-demand, eliminating the need for a continuously running infrastructure while maintaining execution coordination capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system implements self-service by having the MapReduce execution coordinator packaged as a serverless function that automatically manages its own execution state, coordination logic, and resource requirements. The function retrieves necessary information from storage services and manages task coordination without external infrastructure support.

Inventive Principle:
Principle #25Self-service

2Reliability

If a persistent infrastructure is maintained for MapReduce coordination, then execution reliability is improved, but speed and latency increase due to continuous operation requirements

Engineering Contradiction:
Improveexecution coordinationVSAvoidexecution latency
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system applies preliminary action by pre-packaging the execution coordinator logic into a serverless function that is ready for immediate invocation. The function and its dependencies are prepared in advance and stored, allowing rapid deployment and execution without the startup overhead of a persistent infrastructure when processing tasks are submitted.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transitions from continuous periodic operation to event-driven periodic execution. The coordination function is invoked periodically only when MapReduce tasks are submitted or state changes occur, rather than running continuously. This reduces idle time and latency while maintaining coordination reliability through on-demand execution.

Inventive Principle:
Principle #19Periodic action

3Extent of automation

If traditional MapReduce framework is used, then coordination capability is improved, but flexibility and adaptability decrease

Engineering Contradiction:
Improvecoordination capabilityVSAvoidimplementation flexibility
Core Design Contradiction:
Extent of automationVSAdaptability or versatility

Solution Approach 1:

The serverless function platform provides universality by allowing the execution coordinator to be implemented as a general-purpose function that can handle various MapReduce workloads. The same serverless infrastructure can execute different coordination logic for different data processing tasks, providing both automated coordination and implementation flexibility through code-based configuration rather than fixed infrastructure.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system applies dynamics by making the coordination logic dynamic and modifiable through serverless function updates. The execution coordinator can be easily modified, scaled, and adapted to different requirements by updating the function code or configuration, rather than requiring changes to a persistent infrastructure architecture. This enables flexible adaptation to different MapReduce implementations and requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11119813B1Mapreduce implementation using an on-demand network code execution system
Publication Date: 2021.09.14 AMAZON TECH INC
  • US11119813B1 patent drawing
  • US11119813B1 patent drawing
  • US11119813B1 patent drawing

AI summary

Systems and methods are described for providing an implementation of the MapReduce programming model utilizing tasks executing on an on-demand code execution system or other distributed code execution environment. A coordinator task may be used to obtain a request to process a set of data according to the implementation of the MapReduce programming model, to initiate executions of a map task to analyze that set of data, and to initiate executions of a reduce task to reduce outputs of the map task executions to a single results file. The coordinator task may be event-driven, such that it executes in response to completion of executions of the map task or reduce tasks, and can be halted or paused during those executions. Thus, the MapReduce programming model may be implemented without the use of a dedicated framework or infrastructure to manage map and reduce functions.