Methods and systems for coordinated transactions in distributed and parallel environments
First Claim
1. A method comprising:
- running a plurality of processing nodes in a computing system, wherein the processing nodes are distributed and connected to each other over a communications network, and wherein the processing nodes comprise one of virtual machines, server machines, and a combination of virtual machines and server machines;
assigning to each processing node of the plurality of processing nodes, a group of two or more different types of requests for handling by the processing nodes;
receiving and processing compound requests by the processing nodes, wherein each compound request comprises a plurality of individual requests of different request types;
monitoring network communications between the processing nodes when processing the received compound requests by the processing nodes, wherein monitoring the network communications comprises;
monitoring the compound requests received by the processing nodes;
maintaining information about frequencies with which groups of individual requests appear in the compound requests received by the processing nodes, wherein the information comprises frequency information associated with a plurality of entries, wherein each entry corresponds to one of plurality of possible groups of individual request types occurring within said compound requests, wherein each entry stores a frequency value representing a number of said compound requests comprising the group of individual request types corresponding to the entry;
monitoring internode network communication between the processing nodes which results from the processing nodes having to transfer, over the communications network, individual requests of received compound requests to other processing nodes that are assigned to handle the transferred individual requests; and
determining from the maintained information a group of different request types of individual requests which frequently occur in a same compound request; and
re-assigning said determined group of different request types to a same processing node for processing by the same processing node to reduce the internode network communication between the processing nodes.
1 Assignment
0 Petitions
Accused Products
Abstract
Automated techniques are disclosed for minimizing communication between nodes in a system comprising multiple nodes for executing requests in which a request type is associated with a particular node. For example, a technique comprises the following steps. Information is maintained about frequencies of compound requests received and individual requests comprising the compound requests. For a plurality of request types which frequently occur in a compound request, the plurality of request types is associated to a same node. As another example, a technique for minimizing communication between nodes, in a system comprising multiple nodes for executing a plurality of applications, comprises the steps of maintaining information about an amount of communication between said applications, and using said information to place said applications on said nodes to minimize communication among said nodes.
-
Citations
20 Claims
-
1. A method comprising:
-
running a plurality of processing nodes in a computing system, wherein the processing nodes are distributed and connected to each other over a communications network, and wherein the processing nodes comprise one of virtual machines, server machines, and a combination of virtual machines and server machines; assigning to each processing node of the plurality of processing nodes, a group of two or more different types of requests for handling by the processing nodes; receiving and processing compound requests by the processing nodes, wherein each compound request comprises a plurality of individual requests of different request types; monitoring network communications between the processing nodes when processing the received compound requests by the processing nodes, wherein monitoring the network communications comprises; monitoring the compound requests received by the processing nodes; maintaining information about frequencies with which groups of individual requests appear in the compound requests received by the processing nodes, wherein the information comprises frequency information associated with a plurality of entries, wherein each entry corresponds to one of plurality of possible groups of individual request types occurring within said compound requests, wherein each entry stores a frequency value representing a number of said compound requests comprising the group of individual request types corresponding to the entry; monitoring internode network communication between the processing nodes which results from the processing nodes having to transfer, over the communications network, individual requests of received compound requests to other processing nodes that are assigned to handle the transferred individual requests; and determining from the maintained information a group of different request types of individual requests which frequently occur in a same compound request; and re-assigning said determined group of different request types to a same processing node for processing by the same processing node to reduce the internode network communication between the processing nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus comprising:
-
a memory comprising stored program instructions; and at least one processor coupled to the memory and configured to execute the stored program instructions to perform a method comprising; running a plurality of processing nodes in a computing system, wherein the processing nodes are distributed and connected to each other over a communications network, and wherein the processing nodes comprise one of virtual machines, server machines, and a combination of virtual machines and server machines; assigning to each processing node of the plurality of processing nodes, a group of two or more different types of requests for handling by the processing nodes; receiving and processing compound requests by the processing nodes, wherein each compound request comprises a plurality of individual requests of different request types; monitoring network communications between the processing nodes when processing the received compound requests by the processing nodes, wherein monitoring the network communications comprises; monitoring the compound requests received by the processing nodes; maintaining information about frequencies with which groups of individual requests appear in the compound requests received by the processing nodes, wherein the information comprises frequency information associated with a plurality of entries, wherein each entry corresponds to one of plurality of possible groups of individual request types occurring within said compound requests, wherein each entry stores a frequency value representing a number of said compound requests comprising the group of individual request types corresponding to the entry; monitoring internode network communication between the processing nodes which results from the processing nodes having to transfer, over the communications network, individual requests of received compound requests to other processing nodes that are assigned to handle the transferred individual requests; and determining from the maintained information a group of different request types of individual requests which frequently occur in a same compound request; and re-assigning said determined group of different request types to a same processing node for processing by the same processing node to reduce the internode network communication between the processing nodes. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An article of manufacture comprising a non-transitory computer readable storage medium comprising one or more computer programs which, when executed by a computer, causes the computer to implement a method comprising:
-
running a plurality of processing nodes in a computing system, wherein the processing nodes are distributed and connected to each other over a communications network, and wherein the processing nodes comprise one of virtual machines, server machines, and a combination of virtual machines and server machines; assigning to each processing node of the plurality of processing nodes, a group of two or more different types of requests for handling by the processing nodes; receiving and processing compound requests by the processing nodes, wherein each compound request comprises a plurality of individual requests of different request types; monitoring network communications between the processing nodes when processing the received compound requests by the processing nodes, wherein monitoring the network communications comprises; monitoring the compound requests received by the processing nodes; maintaining information about frequencies with which groups of individual requests appear in the compound requests received by the processing nodes, wherein the information comprises frequency information associated with a plurality of entries, wherein each entry corresponds to one of plurality of possible groups of individual request types occurring within said compound requests, wherein each entry stores a frequency value representing a number of said compound requests comprising the group of individual request types corresponding to the entry; monitoring internode network communication between the processing nodes which results from the processing nodes having to transfer, over the communications network, individual requests of received compound requests to other processing nodes that are assigned to handle the transferred individual requests; and determining from the maintained information a group of different request types of individual requests which frequently occur in a same compound request; and re-assigning said determined group of different request types to a same processing node for processing by the same processing node to reduce the internode network communication between the processing nodes. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification