×

System and apparatus for optimally trading off the replication overhead and consistency level in distributed applications

  • US 7,506,011 B2
  • Filed: 07/26/2006
  • Issued: 03/17/2009
  • Est. Priority Date: 07/26/2006
  • Status: Expired due to Fees
First Claim
Patent Images

1. A computer-implemented method for updating replicated data stored in a plurality of nodes organized in a hierarchy and linked through networks, the method comprising:

  • defining a maximum period of use before data is refreshed for any data stored at any given node within a plurality of nodes comprising servers arranged in a tree hierarchy;

    maintaining state data at each node within the tree hierarchy of nodes, the state data at a given node comprising;

    a current data update period associated with the given node and expressing the period at which a parent node of the given node should send a data update; and

    a summation of the data update periods from the parent node of the given node to any descendent leaf node of the given node;

    communicating the state data maintained at each node up through the tree hierarchy of nodes to a root node in the tree hierarchy;

    calculating, at each node within the hierarchy of nodes receiving communicated state data from its children nodes, a new data update period for the receiving node using the current data update periods in the communicated state data if all summations of the current data update periods communicated in the state data for any path from the parent node of the receiving node to any descendent leaf node are equal;

    picking, for each node where all of the summations of the current data update periods communicated in the state data for any path from the parent node of the receiving node to any descendent leaf node are not equal, an arbitrary child node of that node;

    using the sum of the data update periods associated with the arbitrary child node to calculate a scale factor for every other child node of that node;

    using the calculated scale factors to calculate updated state data for all of the children of that node;

    communicating the updated state data from the given node up through the hierarchy of nodes;

    receiving state data at a root node from all children nodes of that root node;

    making adjustments to the state data received at the root node to ensure that the maximum period of use is not exceeded at every leaf node of the root node; and

    communicating adjustments to the state data down through the tree hierarchy to each leaf node.

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