Consistent read in a distributed database environment
First Claim
1. A method for determining which version of a data item to supply to a session, the method comprising the computer-implemented steps of:
- maintaining a LAST-TO-SEE-TIMESTAMP, associated with the session, which indicates a time of a last change made in the session that must be seen by the session;
maintaining with a data item version a CLONE-TIME that indicates a time at which the data item version was current; and
determining that the data item version is to be supplied to the session based, at least in part, on a comparison between the CLONE-TIME and the LAST-TO-SEE-TIMESTAMP.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are provided for determining which data item version to supply to a query. According to the techniques, the determination is made by associating a new field, which indicates the time a data item version was current, with each data item version; associating a new field with each query, which indicates the last change that the query must see made by the transaction to which the query belongs; and determining which data item version to use to answer the query based, in part, on a comparison between the values of the two new fields.
40 Citations
22 Claims
-
1. A method for determining which version of a data item to supply to a session, the method comprising the computer-implemented steps of:
-
maintaining a LAST-TO-SEE-TIMESTAMP, associated with the session, which indicates a time of a last change made in the session that must be seen by the session;
maintaining with a data item version a CLONE-TIME that indicates a time at which the data item version was current; and
determining that the data item version is to be supplied to the session based, at least in part, on a comparison between the CLONE-TIME and the LAST-TO-SEE-TIMESTAMP. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of supplying a data item to a query that must see a particular snapshot of a database, the method comprising the steps of:
-
maintaining, for a plurality of data item versions that reside in a plurality of nodes, CLONE-TIME information that indicates when the data item versions were current;
determining which data item versions of said plurality of data items versions contain all changes that must be seen by said query based, at least in part, on said CLONE-TIME information; and
selecting a data item version to supply to said query from those data item versions that contain all changes that must be seen by said query. - View Dependent Claims (10, 11, 13, 14, 15, 16, 17, 18, 19)
-
-
12. A computer-readable medium carrying instructions for determining which version of a data item to supply to a session, the instructions comprising instructions for performing the steps of:
-
maintaining a LAST-TO-SEE-TIMESTAMP, associated with the session, which indicates a time of a last change made in the session that must be seen by the session;
maintaining with a data item version a CLONE-TIME that indicates a time at which the data item version was current; and
determining that the data item version is to be supplied to the session based, at least in part, on a comparison between the CLONE-TIME and the LAST-TO-SEE-TIMESTAMP.
-
-
20. A computer-readable medium carrying instructions for supplying a data item to a query that must see a particular snapshot of a database, the instructions comprising instructions for performing the steps of:
-
maintaining, for a plurality of data item versions that reside in a plurality of nodes, CLONE-TIME information that indicates when the data item versions were current;
determining which data item versions of said plurality of data items versions contain all changes that must be seen by said query based, at least in part, on said CLONE-TIME information; and
selecting a data item version to supply to said query from those data item versions that contain all changes that must be seen by said query. - View Dependent Claims (21, 22)
-
Specification