NETWORK-INDEPENDENT PROGRAMMING MODEL FOR ONLINE PROCESSING IN DISTRIBUTED SYSTEMS
First Claim
1. A system comprising:
- a memory storing a plurality of processing plans, each processing plan including of a series of operations, each operation including;
a service, andan indication of at least one of a plurality of processing nodes for performing the service,wherein at least one operation of the series of operations, also includes an indication of one or more inputs representing an output of another operation of the series of operations;
a first node of the plurality of nodes, wherein the first node includes at least one processor and a memory storing instructions that, when executed by the at least one processor, cause the first node to;
select a particular processing plan from the memory, anddistribute the particular processing plan to second nodes of the plurality of processing nodes, the second nodes being identified in at least one first operation of the particular processing plan, the first operation having no indication of a previous operation; and
the plurality of processing nodes, each processing node including at least one processor and a memory storing instructions that, when executed by the at least one processor, cause the processing node to;
receive a processing plan of the plurality of processing plans;
interpret the received processing plan, andperform the service indicated in the first operation of the received processing plan.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.
-
Citations
27 Claims
-
1. A system comprising:
-
a memory storing a plurality of processing plans, each processing plan including of a series of operations, each operation including; a service, and an indication of at least one of a plurality of processing nodes for performing the service, wherein at least one operation of the series of operations, also includes an indication of one or more inputs representing an output of another operation of the series of operations; a first node of the plurality of nodes, wherein the first node includes at least one processor and a memory storing instructions that, when executed by the at least one processor, cause the first node to; select a particular processing plan from the memory, and distribute the particular processing plan to second nodes of the plurality of processing nodes, the second nodes being identified in at least one first operation of the particular processing plan, the first operation having no indication of a previous operation; and the plurality of processing nodes, each processing node including at least one processor and a memory storing instructions that, when executed by the at least one processor, cause the processing node to; receive a processing plan of the plurality of processing plans; interpret the received processing plan, and perform the service indicated in the first operation of the received processing plan. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer-implemented method comprising:
-
receiving a processing plan at a processing node, the processing plan including a series of operations, each operation including; a service for the operation, and an indication of one or more processing nodes for performing the service, wherein at least one operation also includes an indication of a prior operation, so that the at least one operation uses an output of the prior operation as input; performing the service indicated in a particular operation at the processing node; determining a next operation based on the processing plan, the next operation having an indication of the particular operation; and sending the processing plan from the processing node to another processing node, the another processing node being identified in the next operation. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A distributed processing system comprising:
-
a plurality of processing nodes, each processing node including; at least one processor, a networking layer for communicating with other processing nodes of the plurality of processing nodes; a memory storing instructions that, when executed by the at least one processor cause the processing node to; use the networking layer to receive a processing plan, analyze the processing plan to determine a service to perform and a number of inputs anticipated for the service, and perform the service; wherein the processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree. - View Dependent Claims (24, 25, 26, 27)
-
Specification