Router Engine Load-Aware Event Routing in ESP Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current event stream processing systems for geographically distributed sensors face challenges in load balancing, as existing policies do not account for server load, leading to inefficient distribution of event processing tasks and potential overload on servers.

Innovation Solution

The implementation of a cluster manager device that uses a configuration file to route event block objects to appropriate servers based on policies like multicast-destination, roundrobin-destination, or hash-destination, ensuring load balancing across servers by dynamically selecting the server for processing event streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If regular routing policies (multicast-destination, roundrobin-destination, hash-destination) are used to distribute events, then event distribution is simplified and deterministic, but load balancing performance deteriorates because servers are routed to without considering their current load

Engineering Contradiction:
Improverouting policy simplicityVSAvoidload balancing effectiveness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The router engine continuously monitors server load metrics and uses this feedback information to dynamically adjust event routing decisions. Instead of using static routing policies, the system incorporates real-time load data to determine which servers should receive events, thereby achieving load balancing while maintaining operational simplicity through automated feedback-driven routing.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The routing system transitions from static, predetermined routing policies to dynamic routing that adapts to changing server load conditions. The router engine dynamically selects destination servers based on current load metrics, allowing the system to respond to varying workloads in real-time while maintaining the simplicity of the routing mechanism through automated adaptation.

Inventive Principle:
Principle #15Dynamics

2Productivity

If events are distributed to servers without considering server load, then routing decisions are faster and simpler, but server overload occurs leading to reduced system productivity

Engineering Contradiction:
Improveevent processing throughputVSAvoidrouting decision complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The router engine automatically performs load monitoring and routing decisions without requiring manual intervention or complex external control mechanisms. The system self-adjusts event distribution based on real-time server load metrics, maintaining high productivity while keeping the routing decision process simple through automated self-service operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback loops that continuously monitor server load and use this information to automatically adjust routing decisions. This feedback mechanism enables the system to maintain optimal productivity by dynamically responding to load conditions without requiring complex manual routing decisions, as the feedback-driven automation handles the complexity internally.

Inventive Principle:
Principle #23Feedback

3Reliability

If load-aware routing is implemented to prevent server overload, then server reliability improves, but routing complexity increases and response time may increase

Engineering Contradiction:
Improveserver availabilityVSAvoidevent routing delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The router engine proactively monitors server load metrics and prepares routing decisions in advance based on predicted load patterns. By performing preliminary load assessment and pre-positioning routing decisions, the system can quickly route events to appropriate servers without introducing significant delays, while still achieving load-aware routing that improves server reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system replaces complex manual routing mechanisms with automated software-based load-aware routing. By substituting mechanical/deterministic routing with intelligent software algorithms that monitor and respond to load conditions, the system achieves improved reliability without proportionally increasing complexity or routing delay, as the automation handles the computational tasks efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentEP3796167B1Router management by an event stream processing cluster manager
Publication Date: 2023.05.03 SAS INSTITUTE INC
  • EP3796167B1 patent drawingFigure 1
  • EP3796167B1 patent drawingFigure 2
  • EP3796167B1 patent drawingFigure 3

AI summary

A computing device manages a router. A manager engine is instantiated based on a manager engine definition and instantiates a manager ESPE based on a created manager ESP model. A router configuration file is created based on mapping information read from the manager configuration file that describes connectivity between an event publishing source and a source window of the manager ESPE. A router engine is instantiated based on the created router configuration file. A connector is started to receive an event based on the router configuration file. The event is received in the source window of the manager ESPE processed based on the manager ESP model. A third computing device is selected by the router engine based on a usage metric received from each window of a plurality of windows defined by a remote ESP model configured to further process the processed event when it is received.