Predictive Determinism in Stream Computing Processing Elements

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database systems face limitations in processing large volumes of data in real-time due to the rate at which they can receive and store incoming data, which restricts their ability to handle high data throughput in stream computing applications.

Innovation Solution

Implementing a method that uses predictive determinism by establishing an operator graph in stream computing applications, where processing elements can transmit predicted output data based on previously computed values if the output is deterministic, thereby reducing the need for processing current input data and alleviating backpressure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database systems process data using traditional store-then-query model, then data storage is achieved, but real-time processing performance deteriorates

Engineering Contradiction:
Improvedata storage reliabilityVSAvoidreal-time processing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-computing and caching output values for deterministic processing elements. When an input value is received, the system checks if the corresponding output has been pre-computed and cached, allowing immediate retrieval without executing the full processing logic, thus achieving both data storage reliability and real-time processing performance

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adapts its processing strategy based on determinism analysis. Processing elements are classified as deterministic or non-deterministic, and the system selectively applies caching strategies to deterministic elements while maintaining full processing for non-deterministic ones, optimizing real-time throughput without sacrificing storage reliability

Inventive Principle:
Principle #15Dynamics

2Quantity of substance

If database systems increase data reception and storage rate, then more data can be stored, but processing capacity becomes a bottleneck

Engineering Contradiction:
Improvedata volume handledVSAvoidprocessing speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system creates copies of previously computed output values and stores them in a cache structure. When the same input values are received again, the system uses these cached copies instead of re-computing, allowing the system to handle larger data volumes without increasing processing capacity requirements

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary computation and caching of output values for deterministic processing elements. This preliminary action enables the system to rapidly handle subsequent identical or similar data streams without proportionally increasing processing capacity, thus resolving the bottleneck between data volume and processing speed

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If processing elements process all current inputs in real-time, then processing accuracy is maintained, but system backpressure increases

Engineering Contradiction:
Improveprocessing accuracyVSAvoidsystem backpressure
Core Design Contradiction:
Measurement precisionVSStress or pressure

Solution Approach 1:

The system implements feedback through determinism analysis, where the output of processing elements is analyzed to determine if it follows predictable patterns. This feedback mechanism allows the system to switch between full processing mode (for accuracy) and cached output mode (for reducing backpressure), maintaining processing accuracy when needed while reducing system stress during high-load periods

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts its processing behavior based on the determinism characteristics of each processing element. Deterministic elements use cached outputs to reduce backpressure, while non-deterministic elements maintain full processing to ensure accuracy, creating a balanced system that manages both accuracy and backpressure effectively

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8954713B2Using predictive determinism within a streaming environment
Publication Date: 2015.02.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8954713B2 patent drawing
  • US8954713B2 patent drawing
  • US8954713B2 patent drawing

AI summary

Techniques are described for transmitting predicted output data on a processing element in a stream computing application instead of processing currently received input data. The stream computing application monitors the output of a processing element and determines whether its output is predictable, for example, if the previously transmitted output values are within a predefined range or if one or more input values correlate with the same one or more output values. The application may then generate a predicted output value to transmit from the processing element instead of transmitting a processed output value based on current input values. The predicted output value may be, for example, an average of the previously transmitted output values or a previously transmitted output value that was transmitted in response to a previously received input value that is similar to a currently received input value.