Patent ID: 7962650
Filing Date: 2011-06-14
Classification: H04L

Abstract:
1. A computer implemented method for dynamic component placement in an event processing system that has at least one producer, at least one consumer, a plurality of nodes and a plurality of links between the at least one producer and the at least one consumer, and a flow graph that represents a plurality of computational components to be executed between the at least one producer and the at least one consumer, the computer implemented method running, in a decentralized manner without requiring any global state or centralized controller, on the plurality of nodes of the event processing system, comprising: receiving a description of at least one change to the event processing system; identifying each path from each at least one producer to each at least one consumer; responsive to identifying each path, identifying, at each node along each path, a plurality of next-hop neighbor nodes; assigning a routing value to each of the identified plurality of next-hop neighbor nodes for each at least one consumer to form routing values, wherein assigning the routing value to each of the identified plurality of next-hop neighbor nodes comprises: estimating, using the routing values in a context of the at least one change to the event processing system, a performance cost of the event processing system based on at least one hypothetical changed placement of the computational components of the flow graph at nodes along at least one of the paths; and responsive to the estimating, selecting a changed placement of the computational components of the flow graph that minimizes the performance cost of the event processing system relative to the at least one hypothetical changed placement.