Operator Graph Window Triggering by Tuple Rate

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional database systems are limited in processing large amounts of data in real-time due to their architecture, which separates data storage from data access and querying, leading to constraints in handling high data influx rates.

Innovation Solution

A stream computing method that uses operator graphs to process streaming data tuples, where a window is triggered based on the current tuple rate or exception rates, allowing for dynamic evaluation of data windows in real-time processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional database systems store and index data before querying, then data storage and retrieval are organized systematically, but the processing speed cannot meet real-time requirements for large data volumes

Engineering Contradiction:
Improvedata processing speedVSAvoidreal-time data evaluation capability
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system segments the data processing workflow into distinct operator nodes within an operator graph, where each operator performs specific transformations on streaming data tuples. This segmentation enables parallel processing of different data streams and allows the system to evaluate data in motion without requiring complete storage and indexing first, thereby improving real-time processing speed while maintaining systematic organization through the graph structure.

Inventive Principle:
Principle #1Segmentation

2Productivity

If data is processed as it arrives in streaming format, then real-time evaluation is achieved, but window triggering becomes difficult to control dynamically

Engineering Contradiction:
Improvereal-time data evaluation capabilityVSAvoidwindow triggering control
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system implements feedback mechanisms where operators monitor streaming data characteristics and dynamically adjust window triggering decisions based on observed data patterns, rates, and anomalies. This feedback loop enables automatic adaptation of window sizes and triggering thresholds without manual intervention, making real-time streaming processing both efficient and easily controllable through the defined operator graph structure.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If fixed window sizes are used for data evaluation, then processing is simple and predictable, but the system cannot adapt to varying data influx rates

Engineering Contradiction:
Improvedata influx rate adaptationVSAvoidwindow management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The operator graph enables dynamic window management where window parameters such as size, duration, and triggering thresholds can be adjusted in real-time based on data characteristics. Operators can dynamically modify window configurations in response to varying data influx rates, allowing the system to adapt to different workloads without requiring complex manual reconfiguration or sacrificing processing efficiency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9438656B2Triggering window conditions by streaming features of an operator graph
Publication Date: 2016.09.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9438656B2 patent drawing
  • US9438656B2 patent drawing
  • US9438656B2 patent drawing

AI summary

In a stream computing application, data may be transmitted between operators using tuples. However, the receiving operator may not evaluate these tuples as they arrive but instead wait to evaluate a group of tuples—i.e., a window. A window is typically triggered when a buffer associated with the receiving operator reaches a maximum window size or when a predetermined time period has expired. Additionally, a window may be triggered by a monitoring a tuple rate—i.e., the rate at which the operator receives the tuples. If the tuple rate exceeds or falls below a threshold, a window may be triggered. Further, the number of exceptions, or the rate at which an operator throws exceptions, may be monitored. If either of these parameters satisfies a threshold, a window may be triggered, thereby instructing an operator to evaluate the tuples contained within the window.