Event Stream Processing Model Generation with Parallel Data Enrichment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deploying analytic tools and models in edge devices and the cloud to handle large-scale, geographically distributed, and highly dynamic sensors is challenging, particularly in applications like predictive maintenance for vehicles, where real-time data processing and immediate reactions are required.

Innovation Solution

An event stream processing (ESP) system that processes events by reading an ESP model, extracting new measurement values, updating an in-memory data store, and using data enrichment windows to generate enriched data values, which are then output when an output update time is reached, enabling real-time analytics and alerts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If analysts and software developers manually design and develop source code to implement ESP models, then the analytics problems can be solved with custom tailored solutions, but significant development and testing time is required

Engineering Contradiction:
Improveanalytics problem solution accuracyVSAvoiddevelopment and testing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically generating ESP model source code from high-level analytics specifications before manual development would begin. The code generation engine pre-compiles templates and parameters into complete, ready-to-deploy source code, eliminating the need for analysts to manually write and test code from scratch.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses code templates that can be copied and adapted for different analytics problems. Instead of manually creating unique code for each analytics task, the system copies proven, pre-tested code templates and automatically instantiates them with problem-specific parameters, ensuring reliability while reducing development time.

Inventive Principle:
Principle #26Copying

2Speed

If ESP models process millions of events per second with sub-millisecond response times, then real-time analytics capability is achieved, but system complexity increases

Engineering Contradiction:
Improveevent processing speedVSAvoidESP system complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The ESP system is segmented into distinct, modular components: event ingestion modules, windowing operators, aggregation functions, and output modules. Each component handles a specific aspect of processing, allowing the system to achieve high throughput through specialized optimization while managing complexity through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system employs universal data structures and processing frameworks that can handle multiple types of events and analytics operations through a common interface. The windowing and aggregation mechanisms are designed to work with any event type, reducing the need for separate complex handling logic for different scenarios.

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

3Measurement precision

If data enrichment windows compute values from multiple windows using gate windows, then data accuracy and completeness are improved, but processing overhead increases

Engineering Contradiction:
Improveenriched data accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The gate window mechanism uses periodic triggering based on event counts or time intervals to initiate computations from multiple input windows. Instead of continuously computing, the system waits for periodic triggers (such as receiving a threshold number of events or a time-based interval), reducing processing overhead while maintaining data accuracy through regular updates.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

Input windows perform preliminary computations and data preparation in advance, organizing data into ready-to-use formats before the gate window needs it. This preliminary action reduces the computational burden on the gate window, allowing it to focus on combining results from multiple sources with minimal additional processing overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11550643B1Automated streaming data model generation with parallel processing capability
Publication Date: 2023.01.10 SAS INSTITUTE INC
  • US11550643B1 patent drawing
  • US11550643B1 patent drawing
  • US11550643B1 patent drawing

AI summary

An event stream processing (ESP) model is read that describes computational processes. (A) An event block object is received. (B) A new measurement value, a timestamp value, and a sensor identifier are extracted. (C) An in-memory data store is updated with the new measurement value, the timestamp value, and the sensor identifier. (A) through (C) are repeated until an output update time is reached. When the output update time is reached, data stored in the in-memory data store is processed and updated using data enrichment windows to define enriched data values that are output. The data enrichment windows include a gate window before each window that uses values computed by more than one window. The gate window sends a trigger to a next window when each value of the more than one window has been computed. The enrichment windows are included in the ESP model.