US2008256299A1PendingUtilityA1

System and Method for Achieving Different Levels of Data Consistency

Assignee: IYENGAR ARUN KWANGILPriority: Nov 17, 2003Filed: Jun 20, 2008Published: Oct 16, 2008
Est. expiryNov 17, 2023(expired)· nominal 20-yr term from priority
G06F 16/1844Y10S707/99952Y10S707/99932
50
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system and method for maintaining consistency in a system where multiple copies of an object may exist is provided for maintaining consistent copies. Consistency is maintained using a plurality of consistency policies in which at least one consistency policy results in different performance than a second consistency policy. A consistency policy is selected from the plurality consistency policies for each object to improve system performance.

Claims

exact text as granted — not AI-modified
1 . In a system comprised of a plurality of objects, a method for maintaining consistent copies of objects, the method comprising:
 providing a plurality of consistency policies including at least a first and second consistency policy, wherein each consistency policy specifies how to reconcile multiple versions of an object;   selectively applying the first consistency policy to achieve a degree of consistency above a consistency level at a first overhead;   selectively applying the second consistency policy to achieve a degree of consistency below the consistency level at a second overhead which is less than the first overhead, to thereby achieve greater system performance by reducing the overhead for maintaining consistency.   
   
   
       2 . The method as recited in  claim 1 , wherein the plurality of consistency policies comprise an update-all consistency policy, an update-holders consistency policy, a coordinate-all consistency policy, or a coordinate-holders consistency policy. 
   
   
       3 . The method as recited in  claim 1 , further comprising including in the plurality of consistency policies strong and weak consistency policies. 
   
   
       4 . The method as recited in  claim 1 , further comprising including in the plurality of consistency policies a strong consistency policy under at least one condition but a weak consistency policy if the at least one condition is not met. 
   
   
       5 . The method as recited in  claim 1 , further comprising managing the plurality of consistency policies using a consistency coordinator. 
   
   
       6 . The method as recited in  claim 1 , further comprising selecting a consistency policy for an object by an application that updates the object. 
   
   
       7 . The method as recited in  claim 1 , wherein an object has a lifetime and the method further comprises switching a consistency policy of the object during the object's lifetime. 
   
   
       8 . The method as recited in  claim 1 , further comprising:
 measuring activity of a consistency coordinator, which manages the consistency policies in the system; and   maintaining connections with caches in the system in accordance with the activity of the consistency coordinator.   
   
   
       9 . The method as recited in  claim 8 , further comprising communicating the activity of the consistency coordinators to the caches. 
   
   
       10 . The method as recited in  claim 9 , wherein communicating the activity comprises sending heartbeat messages to the caches. 
   
   
       11 . The method as recited in  claim 1 , further comprising choosing a consistency policy for at least one object which maximizes system performance. 
   
   
       12 . The method as recited in  claim 11 , wherein system performance is maximized by adjusting at least one of CPU overhead, communication latency and message overhead. 
   
   
       13 . The method as recited in  claim 1 , wherein a consistency policy of at least one object is specified as a condition in terms of a temporal or semantic state of the object. 
   
   
       14 . The method as recited in  claim 1 , wherein the consistency policy is selected from at least one of always strong consistency, conditional strong consistency, weak consistency with guarantees, and weak consistency. 
   
   
       15 . The method as recited in  claim 1 , further comprising adjusting a level of consistency for at least one object in response to consistency overhead. 
   
   
       16 . The method as recited in  claim 1 , wherein an object that is managed using expiration time, update all, update holders, or deferred invalidation consistency becomes managed using strong consistency. 
   
   
       17 . The method as recited in  claim 1 , wherein an object that is managed using strong consistency becomes managed using one of update all, update holders, and deferred invalidation consistency. 
   
   
       18 . A program storage device readable by a computer machine, tangibly embodying a program of instructions executable by the computer to perform method steps for maintaining consistent copies of objects, the method steps comprising:
 providing a plurality of consistency policies including at least a first and second consistency policy, wherein each consistency policy specifies how to reconcile multiple versions of an object;   selectively applying the first consistency policy to achieve a degree of consistency above a consistency level at a first overhead;   selectively applying the second consistency policy to achieve a degree of consistency below the consistency level at a second overhead which is less than the first overhead, to thereby achieve greater system performance by reducing the overhead for maintaining consistency.   
   
   
       19 . A system for maintaining consistent copies of objects, comprising:
 a plurality of caches for storing objects;   a plurality of consistency policies maintained throughout the system, the consistency policies including at least a first and second consistency policy, wherein each consistency policy specifies how to reconcile multiple versions of an object stored in one or more of the plurality of caches; and   a consistency coordinator having selective communication with the caches, which selectively applies the first consistency policy to achieve a degree of consistency above a consistency level at a first overhead and which selectively applies the second consistency policy to achieve a degree of consistency below the consistency level at a second overhead which is less than the first overhead, to thereby achieve greater system performance by reducing the overhead for maintaining consistency.   
   
   
       20 . The system as recited in  claim 19 , wherein the plurality of consistency policies comprise an update-all consistency policy, an update-holders consistency policy, a coordinate-all consistency policy, or a coordinate-holders consistency policy. 
   
   
       21 . In a system comprised of a plurality of objects, a method for maintaining consistent copies of objects stored in caches, comprising the steps of:
 providing a first consistency policy, where a consistency policy specifies how to reconcile multiple versions of an object, wherein the first consistency policy updates an object for which multiple copies exist by sending out at least one message to invalidate a copy of the object and waiting for an acknowledgement that the invalidation message has been received before assigning a new value to the object;   providing a second consistency policy which updates an object without waiting for an acknowledgement that a message to invalidate a copy of the object has been received;   selectively applying the first consistency policy to achieve a degree of consistency above a consistency level at a first overhead; and   selectively applying the second consistency policy to achieve a degree of consistency below the consistency level at a second overhead which is less than the first overhead, to thereby achieve greater system performance by reducing the overhead for maintaining consistency.

Join the waitlist — get patent alerts

Track US2008256299A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.