Window Aggregator Using Shared Sliding-Window Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current implementations of window aggregate functions are inefficient when applied to large datasets, leading to increased runtime and memory requirements due to repeated calculations and data copying, especially when dealing with skewed datasets or missing values.

Innovation Solution

A scalable window aggregator framework that uses overlapping sliding windows and shared computation to efficiently calculate aggregate features by reusing previous window results, reducing memory requirements and computation complexity through the use of window pointers and unrolled linked lists.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional window aggregate functions are applied to large datasets, then complete aggregate calculations are performed, but runtime and memory requirements increase significantly

Engineering Contradiction:
Improveaggregate calculation completenessVSAvoidcomputation runtime
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the dataset into multiple partitions and processes each partition independently to compute partial aggregate values. This segmentation allows parallel processing across multiple data nodes, reducing overall computation runtime while maintaining complete aggregate calculations through subsequent merging of partial results.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary aggregation operations on each data partition before final merging, computing intermediate aggregate values in advance. This preliminary action reduces the computational burden during the final aggregation phase, significantly improving runtime efficiency for large datasets.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If traditional window aggregate functions are applied to large datasets, then complete aggregate calculations are performed, but memory requirements increase due to data copying

Engineering Contradiction:
Improveaggregate calculation completenessVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments data processing across multiple partitions, allowing each partition to be processed independently with minimal memory allocation. This eliminates the need to load entire datasets into memory, significantly reducing memory requirements while maintaining calculation completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent avoids unnecessary data copying by using reference-based operations and incremental updates. Instead of creating multiple copies of large datasets for different window calculations, the system reuses the same data structures with modified parameters, reducing memory consumption.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If aggregate features are computed for multiple sliding time windows, then comprehensive temporal analysis is achieved, but computation complexity increases

Engineering Contradiction:
Improvetemporal window flexibilityVSAvoidcomputation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple sliding window calculations by identifying and reusing common computations across different time windows. Instead of independently calculating aggregates for each window, the system combines results from overlapping windows, significantly reducing computation complexity while maintaining temporal analysis flexibility.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements a universal aggregation framework that handles multiple time window sizes and types through a single unified algorithm. This multi-functional approach eliminates the need for separate computation logic for each window configuration, reducing overall system complexity while maintaining adaptability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Adaptability or versatility

If aggregate features are computed for multiple sliding time windows, then comprehensive temporal analysis is achieved, but runtime increases

Engineering Contradiction:
Improvetemporal window flexibilityVSAvoidcomputation runtime
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary aggregation operations for multiple time windows simultaneously, computing intermediate results that can be reused across different window calculations. This advance preparation significantly reduces the runtime required for comprehensive temporal analysis of multiple sliding windows.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent merges computation results from overlapping time windows, avoiding redundant calculations. By identifying shared data ranges across multiple windows and computing aggregates once for these ranges, the system dramatically reduces overall computation runtime while maintaining flexible temporal analysis capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12541528B2Scalable window aggregator
Publication Date: 2026.02.03 VISA INTERNATIONAL SERVICE ASSOCIATION
  • US12541528B2 patent drawing
  • US12541528B2 patent drawing
  • US12541528B2 patent drawing

AI summary

A method performed by a computer is disclosed. The method includes receiving a dataset including one or more data fields. The computer can then receive instructions to compute an aggregate feature of the dataset. The computer can then determine an operator and a window based on the aggregate feature to be computed. The method may then include the computer processing the dataset. The compute may then apply the operator with the window to the processed dataset to compute the aggregate feature of the dataset.