Data Streaming Lookup Delay Reduction via Predictive Retrieval

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Stream-based computing systems face performance degradation due to wait times for data retrieval during lookup operations, which can ripple through the operator graph and cause data backups in buffers, making them inefficient for real-time processing of large volumes of streaming data.

Innovation Solution

Profiling data from previous time intervals and execution instances to predict data needs, allowing for pre-emptive retrieval of required data, reducing idling and waiting times for processing elements by using upstream tuple contents and historical data retrieval patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is retrieved on-demand during lookup operations, then processing elements can access required data, but waiting times increase and data flow delays occur

Engineering Contradiction:
Improvedata access accuracyVSAvoidlookup waiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary data retrieval by predicting which data will be needed in the future based on profiling information from previous execution instances. This allows data to be fetched in advance and cached, so when the processing element actually needs the data, it is already available, eliminating the waiting time associated with on-demand lookups.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts data retrieval strategies by collecting profiling data during execution and using it to inform future data access patterns. The prediction mechanism adapts to changing data access patterns by continuously learning from historical execution instances, making the system responsive to actual workload characteristics.

Inventive Principle:
Principle #15Dynamics

2Productivity

If data is pre-retrieved in advance, then waiting times are reduced, but unnecessary data retrieval may occur

Engineering Contradiction:
Improvedata processing throughputVSAvoiddata retrieval overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system uses feedback from profiling data collected during previous execution instances to guide future data retrieval decisions. By analyzing actual data access patterns from historical runs, the system learns which predictions are accurate and which are not, continuously improving its prediction accuracy and reducing unnecessary data retrieval operations.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system retrieves data partially in advance based on prediction confidence levels. Rather than retrieving all possible data or no data, it selectively retrieves only those data elements that are predicted with high probability of being needed, balancing the benefits of early retrieval against the costs of unnecessary data access.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If profiling data is collected and analyzed, then prediction accuracy improves, but system complexity increases

Engineering Contradiction:
Improvedata need prediction accuracyVSAvoidprofiling and prediction system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs self-profiling by automatically collecting its own execution data during normal operation. Rather than requiring external instrumentation or manual configuration, the system autonomously gathers profiling information from its own data access patterns and uses this self-collected data to improve its prediction capabilities, reducing the complexity of external monitoring systems.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11210298B2Reducing flow delays in a data streaming application caused by lookup operations
Publication Date: 2021.12.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11210298B2 patent drawing
  • US11210298B2 patent drawing
  • US11210298B2 patent drawing

AI summary

Profiling data characterizing a data streaming application is used to predict data which will need to be retrieved by a processing element during execution of the data streaming application. Data is retrieved responsive to the prediction, in advance of actual demand by the processing element which requires it. Prediction may be based at least in part on upstream tuple contents, and could include other historical data retrieval patterns. In some embodiments, retrieval of predicted data may be delayed so that data is retrieved just in time.