Stream Computing DAG Reuse for Duplicate Processing Elimination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Optimizing multiple data processing pipelines in stream computing is challenging due to non-obvious relationships between pipelines, leading to non-performant, non-scalable, and uneconomic operations, particularly in detecting and avoiding duplicate computing.

Innovation Solution

A scheduling system that compares directed acyclic graphs (DAGs) of data processing flows to identify common portions between stream requests and running streams, allowing for selective reuse of common portions and deployment to the same computing machine, thereby eliminating duplicate processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple data processing pipelines are provided in parallel for stream computing, then processing capacity and throughput are improved, but duplicate computing occurs and resource efficiency deteriorates

Engineering Contradiction:
Improveprocessing capacityVSAvoidresource efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent merges multiple data processing pipelines by identifying common subgraphs in their DAG representations. When duplicate processing is detected through graph comparison algorithms, the system consolidates redundant computation nodes and edges, allowing multiple pipelines to share common processing logic and data transformation steps, thereby eliminating duplicate computing while preserving parallel processing capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates universal computation nodes that can serve multiple pipelines simultaneously. By abstracting common processing operations into shared graph substructures, a single computation node can fulfill the processing requirements of multiple different data processing pipelines, improving resource utilization and eliminating redundancy.

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

2Loss of energy

If duplicate computing is avoided through comprehensive pipeline comparison, then resource efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveresource efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent segments the pipeline comparison task into hierarchical levels: first comparing high-level graph structures (DAG topologies), then progressively examining subgraphs and individual computation nodes. This segmented approach allows the system to quickly identify and eliminate obvious duplicates through coarse-grained comparison, while applying finer-grained analysis only when necessary, thereby reducing overall computational complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary normalization and canonical representation of DAG structures before comparison. By pre-processing the graph data into standardized forms and pre-computing invariant properties, the system prepares the comparison task in advance, enabling faster and more efficient duplicate detection without requiring complex real-time analysis.

Inventive Principle:
Principle #10Preliminary action

3Speed

If stream computing is made continuous and endless for real-time analytics, then responsiveness is improved, but difficulty in detecting and avoiding duplicate computing increases

Engineering Contradiction:
ImproveresponsivenessVSAvoidduplicate computing detection
Core Design Contradiction:
SpeedVSDifficulty of detecting and measuring

Solution Approach 1:

The patent creates immutable copies of DAG representations for each stream request and stores them in a registry. These copied graph structures serve as reference templates that can be efficiently compared against new incoming stream requests. The copying approach enables rapid duplicate detection through graph isomorphism checks while maintaining the continuous, real-time nature of stream processing.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent implements a feedback mechanism where the results of graph comparisons are fed back into the stream processing system. When duplicate processing is detected through DAG comparison, the system provides feedback to eliminate redundant stream requests or merge them with existing processing pipelines, thereby maintaining real-time responsiveness while avoiding duplicate computing in continuous operation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12086637B2Efficient stream computing using reuse and affinity
Publication Date: 2024.09.10 SAP SE
  • US12086637B2 patent drawing
  • US12086637B2 patent drawing
  • US12086637B2 patent drawing

AI summary

Methods, systems, and computer-readable storage media for receiving a first stream request, providing a first DAG representative of a data processing flow of the first stream request, comparing one or more DAGs representative of respective data processing flows of one or more running streams in a set of running streams to provide a set of comparison results, each running stream being processed by a computing machine of the stream computing system, and determining that the first stream request has a common portion with respect to a first running stream based on a first comparison result of the comparison results and, in response: providing the first stream request and the first comparison result to a computing machine that is processing the first running stream, the computing machine executing a stream merger that merges a non-common portion of the first stream request with the common portion within the first running stream.