×

Decentralized load distribution to reduce power and/or cooling costs in an event-driven system

  • US 8,479,215 B2
  • Filed: 08/18/2009
  • Issued: 07/02/2013
  • Est. Priority Date: 08/18/2009
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of decentralized load distribution in an event-driven system, the method comprising the steps of:

  • receiving a data flow to be processed by a plurality of tasks at a plurality of nodes in the event-driven system having stateful and stateless event processing components, wherein the plurality of tasks are selected from the group consisting of hierarchical tasks, wherein a hierarchical task is a task that is dependent on the output of another task, nonhierarchical tasks, wherein a nonhierarchical task is a task that is not dependent on the output of another task and mixtures thereof;

    collecting statistics about each task hosted at each node and the characteristics of the each node including its heat characteristics;

    creating a list of neighbor nodes, using the collected statistics, to which a task can be partially or wholly transferred;

    selecting at least one task having a first temperature at a node for consideration to migrate, known as at least one target task, to a neighbor node, known as a target node, from the list of neighbor nodes, to distribute the system load of processing the at least one task and reduce cooling costs;

    choosing the target node to which the at least one target task can be migrated wherein the target node has a second temperature;

    migrating the at least one target task to the target node provided the migration will lower the first temperature and the second temperature is below a predetermined acceptable heat threshold; and

    establishing a load exchange protocol at each node for governing the number of migrations of target tasks, wherein decentralized load migrations lead to overall system load distribution in the event-driven system and reduce cooling costs and wherein each node has the following load exchange constraints;

    (i) during a first predetermined period of time, all target tasks are migrated either upstream or downstream and after a second predetermined period of time, the direction of the target task migration maybe switched;

    (ii) if a target task is migrated to a target node, then any nearest neighbor downstream target tasks prior to the migration cannot be migrated for a predetermined amount of time;

    (iii) after migration to a target node, a target task must remain at the target node for a predetermined amount of time; and

    (iv) two nodes cannot migrate target tasks to a same target node at the same time.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×