Event Processing Network Concurrency Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Event processing systems face challenges in handling high volumes of real-time data streams efficiently, particularly in ensuring timely processing and maintaining data integrity due to concurrency and load management issues.

Innovation Solution

The implementation of an event processing network with concurrency and priority management, utilizing Event Processing Language (EPL) rules, ThreadPoolExecutor, and XML-based configuration to manage streams, processors, and adapters, ensuring efficient event processing and fault handling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If sequential processing is used to ensure data integrity, then processing accuracy is improved, but processing speed deteriorates

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system segments the event processing workflow into distinct components (event sources, event sinks, processors, adapters) that can operate independently and concurrently. Each component processes events autonomously while maintaining data integrity through defined interfaces and protocols, allowing parallel execution without compromising accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically manages processing threads and resource allocation based on load conditions. Thread pools are created and managed dynamically to handle varying event volumes, allowing the system to scale processing capacity while maintaining consistent data handling protocols across concurrent operations.

Inventive Principle:
Principle #15Dynamics

2Productivity

If concurrency is increased to improve processing throughput, then productivity is improved, but system complexity deteriorates

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

Solution Approach 1:

Event streams serve as intermediary components that buffer and manage events between producers and consumers. These streams decouple the timing and complexity of event generation from event processing, allowing multiple producers and consumers to operate concurrently without direct coordination overhead.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses universal thread pool executors and standardized processor interfaces that can handle multiple types of events and operations. This multi-functional design reduces the need for specialized code paths for each concurrent operation, simplifying the overall system architecture while maintaining high throughput.

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

3Productivity

If more processors are added to handle high-volume streams, then processing capacity is improved, but resource consumption deteriorates

Engineering Contradiction:
Improveprocessing capacityVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

Thread pools are configured with dynamic parameters including minimum and maximum thread counts, allowing the system to adjust resource consumption based on actual processing needs. The executor service adapts thread creation and destruction to match event flow patterns, avoiding unnecessary resource overhead while maintaining processing capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system maintains continuous processing through persistent thread pools that remain active rather than creating and destroying threads for each event batch. This continuity eliminates the overhead of repeated thread initialization while keeping resource consumption stable, allowing sustained high-volume processing without proportional increases in resource usage.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8543534B2Concurrency in event processing networks for event server
Publication Date: 2013.09.24 ORACLE INT CORP
  • US8543534B2 patent drawing
  • US8543534B2 patent drawing
  • US8543534B2 patent drawing

AI summary

An event server running an event driven application implementing an event processing network. The event processing network can include at least one processor to implement a rule on at least one input stream. The event processing network can define concurrent operation of at least two components of the event processing networks.