Distributed Aggregate Reduction by Fragment Splitting in MLlib

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

MLlib, a machine learning framework in Spark, faces scalability issues due to a lack of object splitting functionality in its reduction step, limiting parallelism and processing performance.

Innovation Solution

A data processing method that splits aggregates into fragments, sends them to different execution workstations for reduction, and re-determines portions for further reduction until completion, enabling parallel processing across multiple workstations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If aggregate is processed as a single unit in reduction step, then implementation is simple, but parallelism is limited and processing performance is poor

Engineering Contradiction:
Improveprocessing performanceVSAvoidalgorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the aggregate into multiple aggregate fragments, allowing each fragment to be processed independently by different execution workstations. This segmentation enables parallel processing during the reduction step, significantly improving processing performance while maintaining manageable algorithm complexity through systematic fragment management

Inventive Principle:
Principle #1Segmentation

2Productivity

If aggregate is split into fragments for parallel processing, then parallelism is improved, but object splitting functionality is required which MLlib lacks

Engineering Contradiction:
ImproveparallelismVSAvoidcompatibility with MLlib
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent extracts the object splitting functionality from the reduction step itself and implements it separately in the calculation step. By pre-splitting aggregates into fragments before reduction and managing the splitting logic independently, the solution enables parallel processing without requiring MLlib's reduction step to have native object splitting capabilities

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If more aggregate fragments are created, then parallelism increases, but communication overhead between workstations increases

Engineering Contradiction:
ImproveparallelismVSAvoidcommunication time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent combines multiple aggregate fragments through reduction operations across execution workstations in a coordinated manner. By merging fragments systematically and managing communication through structured data exchange protocols, the solution achieves high parallelism while minimizing communication overhead through efficient consolidation of results

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12477032B2Data processing method, execution workstation, distributed computing system, and storage medium
Publication Date: 2025.11.18 TSINGHUA UNIVERSITY
  • US12477032B2 patent drawing
  • US12477032B2 patent drawing
  • US12477032B2 patent drawing

AI summary

A data processing method, an execution workstation, a distributed computing system and a computer-readable storage medium. The method includes: splitting an aggregate into a plurality of aggregate fragments; sending a first portion of aggregate fragments to a first execution workstation to perform reduction on the first execution workstation; receiving, from a second execution workstation, aggregate fragments produced by the second execution workstation and corresponding to a second portion of aggregate fragments and performing reduction on the aggregate fragments received and the second portion of aggregate fragments to update the second portion of aggregate fragments; re-determining a new first portion of aggregate fragments and a new second portion of aggregate fragments from a remaining portion excluding the first portion of aggregate fragments that have been sent from the plurality of aggregate fragments, and performing the sending, receiving and reduction; sending the aggregate fragment completing all reduction to a management workstation.