Statistical Caching Aggregation for High-Throughput Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems are inefficient in handling large volumes of data inputs, as they process data sequentially and require significant scaling of processing and storage capacity, which is often insufficient for rapid data accumulation in applications like online commerce.

Innovation Solution

The implementation of statistical caching systems that aggregate and compact data using cache keys, periodically synchronizing with a final data store, and maintaining a transaction log for fault tolerance, allowing for efficient event storage and reduced writes to the final storage location.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is processed sequentially in FIFO manner, then processing simplicity is maintained, but processing speed deteriorates when handling large volumes of data

Engineering Contradiction:
Improveprocessing speedVSAvoidprocessing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the data processing system into multiple independent worker threads that can process different portions of the data stream simultaneously. Each worker thread maintains its own processing state and can operate independently, allowing parallel processing of large volumes of data while maintaining the simplicity of individual thread operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-threaded sequential processing to multi-threaded parallel processing by adding the dimension of concurrency. Multiple worker threads process data in parallel along the time dimension, dramatically increasing processing throughput while each individual thread maintains simple FIFO processing logic.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If processing and storage capacity is increased to handle large data volumes, then data handling capability is improved, but resource consumption increases

Engineering Contradiction:
Improvedata handling capabilityVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent merges multiple worker threads into a single coordinated processing system that shares common resources such as the output queue and synchronization mechanisms. This allows the system to handle large data volumes through parallel processing while consolidating resource usage, reducing the total resources needed compared to having separate processing systems.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary output queue that buffers data between multiple worker threads and the final processing stage. This intermediary structure allows workers to process data in parallel without requiring proportional increases in downstream processing capacity, efficiently managing resource flow through the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If data is stored for processing at a later time, then processing load is reduced, but processing time increases

Engineering Contradiction:
Improveprocessing throughputVSAvoidprocessing delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by having worker threads process and validate data in parallel before final output, preparing data for downstream processing without blocking the main data flow. This allows continuous high-speed ingestion while maintaining data quality, reducing the need for reprocessing and enabling faster overall throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9800684B2Systems and methods for statistical caching
Publication Date: 2017.10.24 IMPERVA INC
  • US9800684B2 patent drawing
  • US9800684B2 patent drawing
  • US9800684B2 patent drawing

AI summary

The present invention relates to systems and methods for statistical caching. Inputs are captured via an appropriate network protocol. The input includes statistical data and a corresponding cache key. The values for each cache key within a cache are compacted using the input. The compacting involves determining if the corresponding cache key is already set within the cache, and if the cache key is present, aggregating the statistical data with the value stored within the cache to generate an updated value. The updated cache may be periodically synchronized with a final data store. Additionally, each operation performed by the statistical cache may be recorded in a transaction log for fault tolerance.