REPLICATING A VIRTUAL MACHINE IMPLEMENTING PARALLEL OPERATORS IN A STREAMING APPLICATION BASED ON PERFORMANCE
First Claim
Patent Images
1. An apparatus comprising:
- at least one processor;
a memory coupled to the at least one processor;
a streaming application residing in the memory and executed by the at least one processor, the streaming application comprising a flow graph that includes a plurality of operators that process a plurality of data tuples, wherein the flow graph comprises a first set of operators implemented in a first virtual machine and a second set of operators implemented in a second virtual machine, wherein the first set of operators and the second set of operators include similar operators and connections between operators and operate on data tuples in parallel; and
a streams manager residing in the memory and executed by the at least one processor, wherein the streams manager monitors performance of the streaming application, logs performance data for each virtual machine that includes operators in the flow graph, and when there is a need to replicate operators from the first virtual machine to a new virtual machine, uses the logged performance data to determine a desired configuration for the new virtual machine that implements a new set of operators that operate on data tuples in parallel with operators in at least one existing virtual machine.
1 Assignment
0 Petitions
Accused Products
Abstract
Performance of parallel portions of a streaming application implemented in multiple virtual machines (VMs) is monitored and logged. When there is a need to replicate operators in an existing virtual machine to a new virtual machine, the logged performance data is used to determine a desired configuration for the new virtual machine based on a past implementation of the existing virtual machine.
-
Citations
4 Claims
-
1. An apparatus comprising:
-
at least one processor; a memory coupled to the at least one processor; a streaming application residing in the memory and executed by the at least one processor, the streaming application comprising a flow graph that includes a plurality of operators that process a plurality of data tuples, wherein the flow graph comprises a first set of operators implemented in a first virtual machine and a second set of operators implemented in a second virtual machine, wherein the first set of operators and the second set of operators include similar operators and connections between operators and operate on data tuples in parallel; and a streams manager residing in the memory and executed by the at least one processor, wherein the streams manager monitors performance of the streaming application, logs performance data for each virtual machine that includes operators in the flow graph, and when there is a need to replicate operators from the first virtual machine to a new virtual machine, uses the logged performance data to determine a desired configuration for the new virtual machine that implements a new set of operators that operate on data tuples in parallel with operators in at least one existing virtual machine. - View Dependent Claims (2)
-
-
3. A computer-implemented method executed by at least one processor for managing a streaming application, the method comprising:
-
executing a streaming application that comprises a flow graph that includes a plurality of operators that process a plurality of data tuples, wherein the flow graph comprises a first set of operators implemented in a first virtual machine and a second set of operators implemented in a second virtual machine, wherein the first set of operators and the second set of operators include similar operators and connections between operators and operate on data tuples in parallel; monitoring performance of the streaming application; logging performance data for each virtual machine that includes operators in the flow graph; and when there is a need to replicate operators to a new virtual machine, using the logged performance data to determine a desired configuration for the new virtual machine that implements a new set of operators that operate on data tuples in parallel with operators in at least one existing virtual machine. - View Dependent Claims (4)
-
Specification