C++ Base Class Library for Real-Time Analytics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data analytics systems face inefficiencies due to the large volume of data, leading to slow processing times and limited real-time capabilities, as they often require significant abstraction levels and become slower with increasing data amounts.

Innovation Solution

A C++ Library providing base classes for real-time analytics, including spout, tube, and sink classes, that facilitate multi-threading and memory-efficient data structures, enabling a customizable and flexible framework for real-time data processing through message queues and optimized native code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional data analytics systems process large volumes of data through multiple levels of abstraction, then comprehensive data analysis is achieved, but processing time increases significantly and real-time capabilities are lost

Engineering Contradiction:
Improvedata analysis comprehensivenessVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system segments the data processing workflow into distinct operator components (spout, tube, sink) that can be independently configured and executed. Each operator handles specific processing tasks, allowing parallel execution and reducing overall processing time while maintaining comprehensive analysis capabilities through the pipeline architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system employs dynamic configuration of processing pipelines where operators can be added, removed, or modified based on real-time requirements. The streaming architecture allows adaptive adjustment of processing logic during execution, enabling the system to optimize between analysis depth and processing speed according to changing data conditions.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If a one-size-fits-all analytics system is designed to handle various data types and volumes, then system versatility is improved, but processing speed decreases as data amounts increase

Engineering Contradiction:
Improvesystem versatilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The system provides universal base class operators (spout, tube, sink) that can handle multiple data types and processing scenarios through a common interface. These universal components can be configured for specific use cases, allowing the system to maintain versatility while optimizing processing speed for each particular data stream through specialized operator implementations.

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

Solution Approach 2:

Instead of a single monolithic processing system, the architecture allows different operators within the pipeline to have specialized optimizations tailored to their specific functions. Each operator can be customized with local quality optimizations appropriate for its specific data processing task, while the overall system maintains versatility through the combination of diverse operators.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If comprehensive data processing pipelines are implemented with multiple processing stages, then data analysis accuracy is improved, but system complexity and processing overhead increase

Engineering Contradiction:
Improvedata analysis accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The processing pipeline is segmented into discrete, independently deployable operators that can be selectively configured. This segmentation allows the system to build complex analysis workflows from simple, well-defined components, reducing overall system complexity while maintaining analysis accuracy through the composition of specialized operators.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces standardized intermediate data structures (tuples) and a uniform operator interface as mediators between different processing stages. This intermediary layer simplifies the interaction between complex processing components, allowing accurate multi-stage analysis while reducing the complexity of integrating and managing multiple processing stages.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11221861B2Systems and methods for facilitating real-time analytics
Publication Date: 2022.01.11 K&M SYSTEMS INC
  • US11221861B2 patent drawing
  • US11221861B2 patent drawing
  • US11221861B2 patent drawing

AI summary

Provided herein are methods, systems, and computer-program products for providing a library of base classes to be used by applications to facilitate real-time analytics. In some examples, the library may be a C++ Library that provides a set of primitive operators (e.g., spout base class, tube base class, and sink base class) for user derivation. In some examples, the spout base class may relate to receiving data from a data source, the tube base class may relate to performing one or more operations on the received data, and the sink base class may relate to sending the processed data to a data target. The spout, tube, sink together provide a real-time streaming framework interface that may be extended by the user.