Method for predicting performance of distributed stream processing systems
First Claim
1. A method, comprising:
- estimating a performance of a processing system using queuing theory, said processing system comprising a network that receives at least one input message stream from at least one publishing client, transforms said at least one input message stream into at least one output message stream utilizing a plurality of transforms distributed in a first assignment among a plurality of brokers, and outputs said at least one output message stream to at least one subscribing client, where a movement of one of said input message streams to one of said output message stream comprises a data flow passing through at least one of said plurality of brokers, where each transform performs a logical operation upon at least one corresponding input message stream to produce at least one corresponding output message stream, and where in the first assignment each transform is assigned to a broker;
performing optimization upon said first assignment of said plurality of transforms using said estimated performance to produce a second assignment; and
reassigning said plurality of transforms among said plurality of brokers connected to the network in accordance with said second assignment, and where the reassigning results in at least one transform being reassigned from an initial broker to a different broker;
where estimating comprises;
computing a flow service time Wf for each of a plurality of data flow in the network and a utilization for each of said plurality of brokers connected to the network;
computing a current solution value comprising a sum of a plurality of products of each of a plurality of flow service times in the network and a corresponding weight indicative of an importance of a single one of said plurality of flow service times in the network with respect to other ones of said plurality of flow service times in the network.
2 Assignments
0 Petitions
Accused Products
Abstract
A method comprises estimating a performance of a processing system using queuing theory wherein the processing system comprises a network that accepts at least one input message stream from a plurality of publishing clients, transforms the at least one input message stream into at least one output message stream utilizing the plurality of transforms distributed in a first assignment among the plurality of brokers, and delivers the at least one output message stream to at least one of the plurality of subscribing clients, performing optimization upon the assignment of the plurality of transforms using the estimated performance to produce a second assignment, and reassigning the plurality of transforms in accordance with the second assignment.
-
Citations
16 Claims
-
1. A method, comprising:
-
estimating a performance of a processing system using queuing theory, said processing system comprising a network that receives at least one input message stream from at least one publishing client, transforms said at least one input message stream into at least one output message stream utilizing a plurality of transforms distributed in a first assignment among a plurality of brokers, and outputs said at least one output message stream to at least one subscribing client, where a movement of one of said input message streams to one of said output message stream comprises a data flow passing through at least one of said plurality of brokers, where each transform performs a logical operation upon at least one corresponding input message stream to produce at least one corresponding output message stream, and where in the first assignment each transform is assigned to a broker; performing optimization upon said first assignment of said plurality of transforms using said estimated performance to produce a second assignment; and reassigning said plurality of transforms among said plurality of brokers connected to the network in accordance with said second assignment, and where the reassigning results in at least one transform being reassigned from an initial broker to a different broker; where estimating comprises; computing a flow service time Wf for each of a plurality of data flow in the network and a utilization for each of said plurality of brokers connected to the network; computing a current solution value comprising a sum of a plurality of products of each of a plurality of flow service times in the network and a corresponding weight indicative of an importance of a single one of said plurality of flow service times in the network with respect to other ones of said plurality of flow service times in the network. - View Dependent Claims (3, 4, 5, 6, 7, 15)
-
-
2. A memory embodying a program of machine-readable instructions executable by a digital processing apparatus to perform operations to optimize an assignment of transforms, the operations comprising:
-
estimating a performance of a processing system using queuing theory, said processing system comprising a network that receives at least one input message stream from at least one publishing client, transforms said at least one input message stream into at least one output message stream utilizing a plurality of transforms distributed in a first assignment among a plurality of brokers, and outputs said at least one output message stream to at least one subscribing client, where a movement of one of said input message streams to one of said output message streams comprises a data flow passing through at least one of said plurality of brokers, where each transform performs a logical operation upon at least one corresponding input message stream to produce at least one corresponding output message stream, and where in the first assignment each transform is assigned to a broker; performing optimization upon said first assignment of said plurality of transforms using said estimated performance to produce a second assignment; and reassigning said plurality of transforms among said plurality of brokers connected to the network in accordance with said second assignment, and where the reassigning results in at least one transform being reassigned from an initial broker to a different broker; where estimating comprises; computing a flow service time Wf for each of a plurality of data flows in the network and a utilization for each of said plurality of brokers connected to the network; and computing a current solution value comprising a sum of a plurality of products of each of a said plurality of flow service times in the network and a corresponding weight indicative of an importance of a single one of said plurality of flow service times in the network with respect to other ones of said plurality of flow service times in the network.
-
-
8. A system comprising:
-
a network comprising a plurality of brokers that accepts at least one input message stream, transforms said at least one input message stream into at least one output message stream utilizing a plurality of transforms distributed in a first assignment among said plurality of brokers, and outputs said at least one output message stream, where each transform performs a logical operation upon at least one corresponding input message stream to produce at least one corresponding output message stream, and where in the first assignment each transform is assigned to a broker; means for estimating a performance of said system using queuing theory; and means for performing optimization upon said first assignment of said plurality of transforms using said estimated performance to produce a second assignment; and means for reassigning said plurality of transforms in accordance with said second assignment, and where the reassigning results in at least one transform being reassigned from an initial broker to a different broker; means for computing a flow service time Wf for each of a plurality of data flows and a utilization for each of said plurality of brokers; and means for computing a current solution value comprising a sum of a plurality of products of each of a plurality of flow service times and a corresponding weight. - View Dependent Claims (9, 10, 11)
-
-
12. A computer program product comprising a memory having computer usable program code for optimizing an assignment of a plurality of transforms amongst a plurality of brokers, said computer program product including:
-
computer usable program code for estimating a performance of a processing system using queuing theory wherein a processing system comprises a network that receives at least one input message stream, transforms said at least one input message stream into at least one output message stream utilizing a plurality of transforms distributed in a first assignment among a plurality of brokers, and outputs said at least one output message stream, where each transform performs a logical operation upon at least one corresponding input message stream to produce at least one corresponding output message stream, and where in the first assignment each transform is assigned to a broker; computer usable program code for performing optimization upon said first assignment of said plurality of transforms using said estimated performance to produce a second assignment; and computer usable program code for reassigning said plurality of transforms in accordance with said second assignment, and where the reassigning results in at least one transform being reassigned from an initial broker to a different broker; computer code for computing a flow service time Wf for each of at least one data flow and a utilization for each of a plurality of broker machines; and computer code for computing a current solution value comprising a sum of a plurality of products of each of an at least one flow service times and a corresponding weight. - View Dependent Claims (13, 14, 16)
-
Specification