Distributed processing system
First Claim
1. A system comprising:
- a distributed queue cluster comprising a plurality of first device nodes that cooperate to;
receive messages comprising information from sensor devices over a wireless mesh network;
store the information in local memory of at least one of the first device nodes; and
wherein each of the plurality of first device nodes presents a RESTful API;
a distributed processing cluster comprising a plurality of second device nodes that cooperate to;
retrieve the information stored in the distributed queue cluster;
select a device node among the second device nodes as a leader, wherein the leader launches one or more worker routines distributed across the plurality of second device nodes, wherein the one or more worker routines comprise one or more rules to act on the information to produce processing results; and
wherein the leader launches one or more additional worker routines in response to determining a worker is over-loaded;
a distributed database cluster comprising a plurality of third device nodes that cooperate to store in local memory the processing results produced from the distributed processing cluster; and
wherein the distributed queue cluster, the distributed processing cluster, and the distributed database cluster are configured to connect to the wireless mesh network, the wireless mesh network configurable to connect to an external network, and with each of the first, second and third device nodes are configurable by assigning functional roles as either a node of the distributed queue cluster or a node of the distributed processing cluster or a node of the distributed database cluster.
4 Assignments
0 Petitions
Accused Products
Abstract
Described is a system that includes a queue cluster including first network devices that cooperate to communicate with end nodes of a network and to store information from the end nodes in memory, a processing cluster comprising second network devices that cooperate to perform one or more tasks on the information from the queue cluster, and a database cluster including third network devices that cooperate to provide storage for use by the processing cluster, with the queue cluster, the processing cluster, and the database cluster being part of a local network that is connectable to an external network, the local network including a wireless mesh network and for the one or more tasks, a network device among the second network devices is selected as a leader responsible for task execution.
47 Citations
20 Claims
-
1. A system comprising:
-
a distributed queue cluster comprising a plurality of first device nodes that cooperate to; receive messages comprising information from sensor devices over a wireless mesh network; store the information in local memory of at least one of the first device nodes; and wherein each of the plurality of first device nodes presents a RESTful API; a distributed processing cluster comprising a plurality of second device nodes that cooperate to; retrieve the information stored in the distributed queue cluster; select a device node among the second device nodes as a leader, wherein the leader launches one or more worker routines distributed across the plurality of second device nodes, wherein the one or more worker routines comprise one or more rules to act on the information to produce processing results; and wherein the leader launches one or more additional worker routines in response to determining a worker is over-loaded; a distributed database cluster comprising a plurality of third device nodes that cooperate to store in local memory the processing results produced from the distributed processing cluster; and wherein the distributed queue cluster, the distributed processing cluster, and the distributed database cluster are configured to connect to the wireless mesh network, the wireless mesh network configurable to connect to an external network, and with each of the first, second and third device nodes are configurable by assigning functional roles as either a node of the distributed queue cluster or a node of the distributed processing cluster or a node of the distributed database cluster. - View Dependent Claims (2, 3, 4, 5, 6, 7, 16)
-
-
8. A computer program product tangibly stored on one or more computer-readable hardware storage devices, the computer program product comprising instructions executable by a processor to:
-
cause first local device nodes to cooperate to form a queue cluster to communicate via a RESTful API with sensor end nodes (end nodes) of a wireless mesh network, receive information from the end nodes of the wireless mesh network, store the information from the end nodes in memory; cause second local device nodes to cooperate to; form a processing cluster to retrieve the information stored in the queue cluster; select an end node as a leader, wherein the leader launches one or more worker routines distributed across the second local device nodes, wherein the one or more worker routines comprises one or more rules to act on the information to produce results; and wherein the leader launches one or more additional worker routines in response to determining a worker routine is over-loaded; cause third local device nodes to cooperate to; form a database cluster to provide storage for the results produced from the processing cluster; and wherein the first, the second, and the third local device nodes configured to connect to the wireless mesh network, and the wireless mesh network configurable to connect to an external network, and with each of the first, the second, and the third local device nodes configurable to be assigned functional roles as either a node of the queue cluster or a node of the processing cluster or a node of the database cluster. - View Dependent Claims (9, 10, 11, 12, 13, 14, 17)
-
-
15. A method, comprising:
-
configuring local nodes as first local device nodes to form a distributed queue cluster, second local device nodes to form a processing cluster, and third local device nodes to form a database cluster, with any of the first, second and third local device nodes configurable to be assigned functional roles as either a node of the distributed queue cluster or a node of the processing cluster or a node of the database cluster; receiving information from sensor end nodes (end nodes) over a wireless mesh network by the distributed queue cluster, the distributed queue cluster communicating with the end nodes using a RESTful API, which stores the information from the end nodes in memory; performing one or more tasks on the information from the distributed queue cluster by the processing cluster that selects a node among the second local device nodes as a leader, wherein the leader retrieves information stored in the distributed queue cluster and launches one or more worker routines to process the information to produce processing results; storing the processing results from the processing cluster in the database cluster; and wherein the leader launches one or more additional worker routines in response to determining a worker is over-loaded; and connecting the first local device nodes, the second local device nodes, and the third local device nodes to the wireless mesh network and the wireless mesh network configurable to connect to an external network. - View Dependent Claims (18, 19, 20)
-
Specification