×

Application bundle preloading

  • US 10,523,518 B2
  • Filed: 06/27/2015
  • Issued: 12/31/2019
  • Est. Priority Date: 05/21/2015
  • Status: Active Grant
First Claim
Patent Images

1. A system for managing a set of application bundles, the system comprising:

  • a memory having a set of computer readable computer instructions, and a processor for executing the set of computer readable instructions, the set of computer readable instructions including;

    monitoring, by a first compute node, a set of application bundles which are installed on a second compute node, the second node being one of a set of compute nodes comprising one or more processing elements that executes the set of application bundles;

    identifying, by a first compute node, a candidate application bundle that is needed to interpret a particularized subset of information to be found in tuples expected to be received for processing within an approaching temporal period, based on inspecting the set of application data on the second compute node indicating possession of the candidate application bundle by the second compute node, wherein the candidate application bundle contains an executable code that can be executed by a subset of processing elements, wherein the subset of processing elements are capable of executing a stream of tuples expected to be received for processing prior to the first compute node receiving a request to process the stream of tuples, wherein the candidate application bundle requires more bandwidth than is currently available on the second compute node to interpret the stream of tuples, and wherein the first compute node currently has more processing power than the second compute node;

    determining, by the first compute node based on the identified candidate application bundle and based on a set of anticipation criteria, to install the candidate application bundle on the first compute node, wherein the set of anticipation criteria anticipates a likelihood that the first compute node will be requested to process the stream of tuples, and wherein the set of anticipation criteria are an expected resource burden that corresponds to a predicted value based on a predicted resource usage, a physical proximity criterion, a failover frequency, an expected candidacy criterion of the first compute node for processing the stream of tuples based on a load of the system and availability of the first compute node, and a temporal benefit criterion;

    preloading, based on the identifying and the determining, the candidate application bundle on the first compute node prior to the first compute node receiving the request to process the stream of tuples;

    receiving the stream of tuples to be processed by a plurality of processing elements operating on a set of compute nodes; and

    processing, using the preloaded candidate application bundle on the first compute node, the stream of tuples in response to installing the candidate application bundle on the first compute node,wherein the monitoring comprises communicating, by the first compute node, with an application bundle directory which stores the set of application bundle data and which is separate from the second compute node.

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