Time-Decayed Aggregates in Data Streams

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Calculating statistical aggregates from large volume unordered data streams is computationally intensive, as existing methods do not efficiently account for the age and time order of data, which is crucial for determining the relevance of data in applications like network performance analysis.

Innovation Solution

A method involving a decay function that weights more recent data higher, using a quantile-digest data structure to compress and efficiently process tuples that arrive out-of-order, allowing for user-defined aggregate functions with deterministic error bounds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If data is stored statically in a database and post-processed, then data accuracy is preserved, but real-time analysis capability is lost

Engineering Contradiction:
Improvedata accuracyVSAvoidreal-time analysis capability
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The patent applies preliminary action by pre-processing data streams through filtering and aggregation operations before storage. The system performs decay-based filtering to retain only relevant recent data, and computes aggregates incrementally as data arrives, so that when data is stored and later queried, the most computationally intensive processing has already been done. This allows accurate real-time or near-real-time analysis without reprocessing all raw data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the most relevant features and statistics from raw data streams before storage. Instead of storing complete raw data sets, the system extracts key metrics, filtered data points, and pre-computed aggregates that capture the essential information needed for analysis. This extraction reduces storage requirements and enables faster query response while maintaining analytical accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If all data in the stream is processed, then complete analysis is achieved, but computational resources and time are excessively consumed

Engineering Contradiction:
Improvecompleteness of analysisVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by treating different portions of the data stream differently based on their relevance. Recent data points are given higher weight through decay functions, while older data is gradually down-weighted or discarded. The system also applies local filtering to retain only data points that meet certain criteria (e.g., anomalies, trends, threshold violations) rather than processing every data point uniformly. This selective processing maintains analytical reliability while dramatically improving computational efficiency.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by processing only a subset of the data stream that is most relevant to current analysis needs. The decay-based filtering mechanism intentionally discards older or less relevant data points, accepting that some information is lost in exchange for significant gains in processing speed and resource utilization. This partial processing approach is sufficient for most real-time monitoring and analysis applications where recent trends are more important than historical completeness.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If recent data is prioritized through filtering, then computational resources are reduced, but data completeness is compromised

Engineering Contradiction:
Improvecomputational resource efficiencyVSAvoiddata completeness
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies dynamics by making the data retention and processing strategy adaptive rather than static. The decay function parameters, filtering thresholds, and window sizes can be dynamically adjusted based on data characteristics, stream velocity, and analysis requirements. This dynamic approach allows the system to maintain data completeness when needed while optimizing for computational efficiency during normal operations, effectively balancing the trade-off between data quantity and processing resources.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8908554B2Computing time-decayed aggregates in data streams
Publication Date: 2014.12.09 IOWA STATE UNIV RES FOUND INC
  • US8908554B2 patent drawing
  • US8908554B2 patent drawing
  • US8908554B2 patent drawing

AI summary

Aggregates are calculated from a data stream in which data is sent in a sequence of tuples, in which each tuple comprises an item identifier and a timestamp indicating when the tuple was transmitted. The tuples may arrive out-of-order, that is, the sequence in which the tuples arrive are not necessarily in the sequence of their corresponding timestamps. In calculating aggregates, more recent data may be given more weight by multiplying each tuple by a decay function which is a function of the timestamp associated with the tuple and the current time. The tuples are recorded in a quantile-digest data structure. Aggregates are calculated from the data stored in the quantile-digest data structure.