Distributed Key Processing with Aggregation Trees for Shuffle Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing key-based processes in data centers and clusters face inefficiencies in speed, efficiency, and accuracy due to bottlenecks in network traffic patterns and incast problems during the shuffle phase, particularly with all-to-all traffic patterns and high bandwidth oversubscription.

Innovation Solution

Implementing a direct-connect topology with geometric aggregation trees and content-based priority scheduling or on-path aggregation to manage data packets efficiently, allowing for dynamic recomputation and recovery in case of server failures, thereby optimizing the shuffle phase and reducing congestion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional key-based processes are used with switches and routers, then data processing can be performed, but bottlenecks occur during the shuffle phase causing performance decrease

Engineering Contradiction:
Improvedata processing speedVSAvoidjob execution time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the network into multiple topologies (e.g., fat-tree, dragonfly, mesh) and divides the shuffle phase into multiple stages, with each stage handling a portion of the data routing. This segmentation prevents single-point bottlenecks by distributing traffic across multiple parallel paths and switching fabrics.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces additional network dimensions by implementing multi-stage switching fabrics and hierarchical routing paths. Instead of relying on a single flat network layer, data can traverse through multiple dimensional layers (e.g., rack-level switching, pod-level switching, core-level switching), providing alternative routes around congested areas.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If all-to-all traffic patterns are used during shuffle phase, then complete data aggregation is achieved, but bandwidth oversubscription and incast problems occur

Engineering Contradiction:
Improvedata aggregation accuracyVSAvoidbandwidth utilization efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The all-to-all traffic pattern is segmented into multiple staged aggregation processes. Instead of every reducer receiving data from every mapper simultaneously, the patent implements hierarchical aggregation where data is first aggregated at intermediate nodes, then at higher-level nodes, reducing the total bandwidth requirements while maintaining complete data aggregation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary data aggregation and filtering at intermediate switching stages before data reaches the final reducers. This preliminary action reduces the volume of data that needs to be transmitted across the entire network, preventing bandwidth oversubscription and incast problems while still ensuring all necessary data is aggregated.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If more servers are added to increase processing capacity, then workload distribution improves, but network congestion increases during shuffle phase

Engineering Contradiction:
Improveprocessing capacityVSAvoidnetwork congestion
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent adds network dimensional capacity by implementing multi-stage switching fabrics and hierarchical topologies. When servers are added to increase processing capacity, the network can accommodate the increased shuffle traffic by utilizing additional switching layers and parallel paths, preventing congestion despite increased data volumes.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent segments the network infrastructure into multiple independent switching fabrics and hierarchical levels. This segmentation allows the network to scale with server capacity by adding switching resources at appropriate hierarchical levels, distributing the increased traffic load across multiple segments rather than creating single-point congestion.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8499222B2Supporting distributed key-based processes
Publication Date: 2013.07.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8499222B2 patent drawing
  • US8499222B2 patent drawing
  • US8499222B2 patent drawing

AI summary

Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets.