DYNAMIC WORKLOAD BALANCING FOR REAL-TIME STREAM DATA ANALYTICS
First Claim
1. A method, comprising:
- reading, by a processor, real-time stream data as workloads, each workload including one or more data items from the real-time stream data;
determining, by the processor, any deviation in content of the workloads relative to previous content of previous workloads;
reporting, by the processor, when a particular deviation exceeds a threshold value to a workload coordinator; and
receiving, by the processor, a data distribution map dynamically broadcasted by the workload coordinator, the data distribution map indicates a processing unit to forward the workloads along a distribution path for the workloads where an instance of a next processing node for the workloads can process the workload.
1 Assignment
0 Petitions
Accused Products
Abstract
Router threads read real-time stream data as that data is received at processing nodes along a processing path for the data. The data is initially parsed into workloads. Each router thread maintains real-time analytics for the workloads and reports deviations in the analytics to a workload coordinator. The workload coordinator dynamically and in real time provides updated data distribution maps based on the reported deviations, and the router threads use the data distribution maps to determine a next processing unit to forward the workloads, where the next processing unit includes an instance of a next processing node in the processing path for the workload. The next processing node performs additional processing on the workloads along the processing path.
85 Citations
20 Claims
-
1. A method, comprising:
-
reading, by a processor, real-time stream data as workloads, each workload including one or more data items from the real-time stream data; determining, by the processor, any deviation in content of the workloads relative to previous content of previous workloads; reporting, by the processor, when a particular deviation exceeds a threshold value to a workload coordinator; and receiving, by the processor, a data distribution map dynamically broadcasted by the workload coordinator, the data distribution map indicates a processing unit to forward the workloads along a distribution path for the workloads where an instance of a next processing node for the workloads can process the workload. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method, comprising:
-
identifying, by a processor, a total number of processing units available to process workloads of real-time stream data; obtaining, by the processor, a data delivery path for the workloads, each node of the data delivery path representing a type of processing performed on the workloads; developing, by the processor, a data distribution map for each node that instructs each node as to which processing unit to forward the workloads where a next node along the delivery path can next process the workloads; broadcasting, by the processor, the data distribution maps to the nodes; receiving, by the processor, real-time analytics from each of the nodes when the workloads are processed through the data delivery path; and dynamically updating, by the processor, the data distribution maps for the nodes in response to the real-time analytics and rebroadcasting the updated data distribution maps to the nodes. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A system, comprising:
-
processors arranged in a parallel processing Relational Database Management System (RDBMS); and a dynamic workload balancer configured to;
i) execute on one or more of the processors, ii) dynamically develops a global data distribution map that defines a next processing unit for a workload associated with real-time stream data processing along a distribution path of a network, wherein the distribution path includes a plurality of processing nodes and each node representing a type of processing performed on the workload iii) dynamically updates the global data distribution map in response to real-time deviations detected in real-time stream data analytics reported by the processing nodes while processing the workload, and iv) dynamically broadcasts the global data distribution map to router threads processing on each node along the distribution path to rebalance the real-time stream data processing in real time. - View Dependent Claims (19, 20)
-
Specification