Method for providing session consistency guarantees
First Claim
1. In a database system having a plurality of servers, a plurality of clients, where at least some of said clients may access different servers at different times, including times when said servers contain inconsistent data values;
- said servers storing weakly consistent replicated data;
said data being accessible and updatable by said clients; and
said data, once updated, being propagated by servers having said updated data to servers that do not have said updated data;
a method for providing relevant consistency guarantees for said data to every client participating in any session on a per session basis with respect to access and update requests belonging to each respective session, the steps of said method comprising;
A) defining a plurality of sessions, such that each of said sessions is composed of database access and update requests of at least one client;
B) selecting a client specified relevant subset of consistency guarantees for each session from a set of predefined, mutually distinguishable guarantees, where the relevancy of a given guarantee is decided by at least one of said clients; and
C) enforcing the selected guarantees for said at least one client during the course of said session even when said at least one client accesses different servers during the session.
7 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides client-selected consistency guarantees to clients of a weakly consistent replicated database on a per "session" basis. The clients have access to utilities which allow the clients to, individually or collectively, define a "session" over which the selected guarantees are enforced. A "session" is broadly defined as a sequence of logically related Reads and Writes to the database. Sessions are initiated and terminated substantially independently of other sessions which may exist concurrently. Clients are allowed, however, to clone sessions and/or merge sessions with other clients. Clients select a minimum relevant subset of guarantees from among a set of pre-defined consistency guarantees, where "relevancy" is a client determined factor. At any given time, the system may be enforcing a number of different combinations of consistency guarantees. The guarantees ensure that all clients participating in a particular session view the database as having certain conditions of data consistency--the consistency of which is only provided with respect to the participants'"'"' Read and Write requests. Clients are allowed to downgrade their selected guarantees during the course of their sessions. One implementation of the present invention permits the selection of any one of four consistency guarantees.
-
Citations
17 Claims
-
1. In a database system having a plurality of servers, a plurality of clients, where at least some of said clients may access different servers at different times, including times when said servers contain inconsistent data values;
- said servers storing weakly consistent replicated data;
said data being accessible and updatable by said clients; and
said data, once updated, being propagated by servers having said updated data to servers that do not have said updated data;
a method for providing relevant consistency guarantees for said data to every client participating in any session on a per session basis with respect to access and update requests belonging to each respective session, the steps of said method comprising;A) defining a plurality of sessions, such that each of said sessions is composed of database access and update requests of at least one client; B) selecting a client specified relevant subset of consistency guarantees for each session from a set of predefined, mutually distinguishable guarantees, where the relevancy of a given guarantee is decided by at least one of said clients; and C) enforcing the selected guarantees for said at least one client during the course of said session even when said at least one client accesses different servers during the session. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
- said servers storing weakly consistent replicated data;
Specification