Streaming Operator Bottleneck Identification for Data Resiliency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database systems are not well-suited for real-time processing and analyzing large amounts of streaming data, as they struggle to efficiently store, index, and analyze such data in real-time, leading to inefficiencies and potential data loss.

Innovation Solution

A method is introduced to identify bottleneck operators in a streaming application, where non-bottleneck operators are grouped to perform increased resiliency operations, including outputting redundant tuples into a buffer to prevent data loss and ensure data integrity, while maintaining application speed by dynamically monitoring and optimizing operator performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If database systems store and index data in memory for querying and analysis, then data accessibility and analysis capability are improved, but real-time processing capability deteriorates

Engineering Contradiction:
Improvedata analysis capabilityVSAvoidreal-time processing speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The patent segments the data processing function by separating stream processing operators from traditional database storage. Stream operators process data in real-time as it flows through the system, while data is only stored in the database after processing is complete. This segmentation allows real-time processing without the overhead of continuous indexing and querying operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements continuous stream processing where data flows continuously through operators without interruption. The stream processing architecture maintains continuous action on incoming data, eliminating the batch processing cycles required by traditional databases. This continuous processing enables real-time analysis while maintaining database integrity.

Inventive Principle:
Principle #20Continuity of useful action

2Productivity

If stream processing operators process large amounts of streaming data, then data processing throughput is improved, but data loss risk increases

Engineering Contradiction:
Improvedata processing throughputVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by implementing resiliency operations before data loss can occur. Operators perform redundancy operations in advance, such as replicating data or preparing fallback mechanisms, so that if failures occur during high-throughput processing, data integrity is preserved without stopping the stream.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements beforehand cushioning by creating buffer zones and redundancy mechanisms that cushion against potential data loss. These cushioning measures include buffering mechanisms that can absorb data spikes and redundancy operators that can compensate for failures, allowing the system to maintain both high throughput and reliability.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If resiliency operations are increased for all operators, then data integrity is improved, but processing speed deteriorates

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent applies local quality by making resiliency operations selective rather than uniform. Different operators receive different levels of resiliency protection based on their specific roles, failure risks, and data importance. Critical operators receive enhanced resiliency while less critical operators operate with minimal protection, optimizing the balance between reliability and speed.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements parameter changes by dynamically adjusting resiliency parameters based on system conditions. The system monitors operator performance and failure rates, then adjusts resiliency levels accordingly. When an operator shows signs of failure, resiliency parameters increase for that specific operator, while other operators maintain their baseline settings, preserving overall processing speed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10630818B2Increasing data resiliency operations based on identifying bottleneck operators
Publication Date: 2020.04.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10630818B2 patent drawing
  • US10630818B2 patent drawing
  • US10630818B2 patent drawing

AI summary

A streaming application processes data by processing tuples via operators. Bottleneck operators are identified. A degree of streaming speed is maintained, even when non-bottleneck operators participate in increased resiliency operations.