Data-Parallel Pipeline Graphs for Streamlined MapReduce Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing large-scale data processing systems face challenges in efficiently managing complex data-parallel pipelines, particularly in distributed environments, due to the complexity of chaining multiple mapreduce operations and the need for extensive low-level coordination and management of intermediate data.

Innovation Solution

A pipeline library that employs an evaluator to construct an execution plan dataflow graph, an optimizer to apply graph transformations, and an executor to execute deferred parallel operations, allowing for the translation of multiple mapreduce operations into a single operation and optimizing local or remote execution based on data size, thereby simplifying the management of data-parallel pipelines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple mapreduce operations are chained together in a data-parallel pipeline, then data processing capability is improved, but system complexity and coordination overhead increase

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

Solution Approach 1:

The patent combines multiple mapreduce operations into a single unified operation by merging their execution plans into a consolidated dataflow graph. This allows the system to process data through multiple transformation stages while managing them as one atomic unit, reducing coordination overhead and simplifying resource management across distributed systems

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an execution plan compiler as an intermediary component that translates high-level data-parallel pipeline specifications into optimized low-level execution plans. This compiler acts as a mediator between the user's conceptual model and the underlying distributed system, automatically handling the complexity of chaining multiple operations while preserving the high-level abstraction

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple mapreduce operations are chained together in a data-parallel pipeline, then data processing capability is improved, but coordination and management overhead increase

Engineering Contradiction:
Improvedata processing capabilityVSAvoidcoordination overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary optimization of the execution plan by analyzing the entire dataflow graph before execution. The compiler pre-computes optimal execution strategies, data distribution plans, and resource allocation decisions, so that during actual execution, the system can proceed with minimal coordination overhead and no runtime optimization decisions

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If deferred parallel operations are used in the execution plan, then flexibility and scalability are improved, but execution complexity increases

Engineering Contradiction:
ImproveflexibilityVSAvoidexecution complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the execution plan into distinct deferred operation nodes in the dataflow graph, where each node represents a parallel operation that can be independently scheduled and executed. This segmentation allows the system to maintain flexibility by selecting which operations to execute locally versus remotely, while the modular structure keeps execution complexity manageable through clear separation of concerns

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12436786B2Parallel processing of data
Publication Date: 2025.10.07 GOOGLE LLC
  • US12436786B2 patent drawing
  • US12436786B2 patent drawing
  • US12436786B2 patent drawing

AI summary

A data parallel pipeline may specify multiple parallel data objects that contain multiple elements and multiple parallel operations that operate on the parallel data objects. Based on the data parallel pipeline, a dataflow graph of deferred parallel data objects and deferred parallel operations corresponding to the data parallel pipeline may be generated and one or more graph transformations may be applied to the dataflow graph to generate a revised dataflow graph that includes one or more of the deferred parallel data objects and deferred, combined parallel data operations. The deferred, combined parallel operations may be executed to produce materialized parallel data objects corresponding to the deferred parallel data objects.