×

Processing element management in a streaming data system

  • US 9,535,707 B2
  • Filed: 12/10/2012
  • Issued: 01/03/2017
  • Est. Priority Date: 01/30/2012
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method, comprising:

  • receiving streaming data to be processed by a plurality of processing elements, each comprising one or more operators, the operators processing at least a portion of the received data by operation of one or more computer processors;

    establishing an operator graph of the operators, the operator graph defining at least one execution path in which a first operator of the operators is configured to receive data tuples from at least one upstream operator and transmit data tuples to at least one downstream operator;

    identifying, relative to predefined criteria, a first and second underutilized hardware resource in a computing system that executes the operators;

    cloning a first processing element of the plurality of processing elements such that the cloned processing element comprises the same one or more operators as the first processing element;

    determining respective communication speeds between a hardware resource hosting the first operator and each of the first and second underutilized hardware resources, wherein the first operator is one of upstream and downstream of the cloned processing element in the operator graph;

    selecting, based on the respective communication speeds, one of the first and second underutilized hardware resources to host the cloned processing element;

    generating, after determining to clone the first processing element, a first execution path comprising the cloned processing element, the first execution path is configured to process at least a portion of the received streaming data using the selected underutilized hardware resource, wherein the first execution path executes in parallel to a previously configured second execution path that includes the first processing element; and

    activating, in the operator graph downstream from the first and second execution paths, a second processing element comprising a merge operator that merges data tuples received from both the first and second execution paths into a single data stream.

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