Autonomic Operator Fusion for Stream Processing Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Stream computing applications face challenges in efficiently managing data flow rates between multiple input port processing elements, particularly when upstream processing elements reside on separate compute nodes, leading to issues like backpressure and network bandwidth limitations, which can disrupt data processing.

Innovation Solution

A method is introduced to dynamically measure and manage data flow rates between processing elements, allowing for the redeployment of operators from upstream processing elements to a multiple input port processing element based on monitored data flow rates, thereby optimizing data communication and alleviating bottlenecks without interrupting other operators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If operators are distributed across multiple upstream processing elements on separate compute nodes, then system scalability and fault isolation are improved, but data communication efficiency deteriorates due to network bandwidth limitations and backpressure

Engineering Contradiction:
Improvesystem scalabilityVSAvoiddata communication efficiency
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent merges operators from upstream processing elements into a downstream processing element by redeploying them in the same process space. This combining of operators that previously resided on separate compute nodes eliminates network communication overhead and allows direct memory access, thereby resolving the contradiction between system scalability and data communication efficiency.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If data flow rate is increased to improve processing throughput, then productivity is improved, but backpressure and network bandwidth limitations worsen

Engineering Contradiction:
Improveprocessing throughputVSAvoidbackpressure
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent introduces a selective operator redeployment mechanism that acts as an intermediary between upstream and downstream processing elements. By dynamically identifying and redeploying bottleneck operators into the downstream process space, this intermediary mechanism eliminates network bandwidth limitations and backpressure, enabling increased processing throughput without the harmful effects of data congestion.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If operator redeployment is performed to optimize data flow rate, then data processing efficiency is improved, but system complexity increases due to dynamic configuration management

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidsystem configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a feedback-driven operator redeployment system that continuously monitors data flow rates between processing elements. Based on this feedback, the system automatically identifies bottleneck operators and redeploys them to optimize performance. This closed-loop control mechanism manages the complexity of dynamic configuration by using real-time performance data to guide automated decisions, thereby improving data processing efficiency without requiring manual intervention.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11327976B2Autonomic fusion changes based off data rates
Publication Date: 2022.05.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11327976B2 patent drawing
  • US11327976B2 patent drawing
  • US11327976B2 patent drawing

AI summary

In a streaming application receiving streaming data to be processed by a plurality of processing elements (PEs), one of a plurality of upstream PEs that reside on separate compute nodes and transmit data to a multi-input port PE is selected based on a data flow rate measured between at least two components in the plurality of PEs (e.g., an amount of incoming data per unit time or an amount of network bandwidth). At least one operator from the selected upstream PE is redeployed into the multi-input port PE. In some embodiments, the operator is selected from among a plurality of operators fused together in the selected upstream PE, un-fused from the selected upstream PE, and fused into the multi-input port PE. In some embodiments, a dynamic fusing capability is realized by selecting different ones of the plurality of upstream PEs in response to changes in the measured data flow rate.