Method and mechanism for row versioning
First Claim
1. A computer implemented method for displaying past versions of a data item, comprising:
- using at least a processor configured for performing a process, the process comprising;
receiving a request on a database table for one or more past versions of the data item that exist or would have existed over an interval, whereinthe database table comprises a current version of the data item without the one or more past versions of the data item, andthe request is directed at the database table and comprises a specification of the interval;
using at least a key, a range of keys, or one or more data blocks that are programmed for storing at least the data item in the database table by identifying one or more log records from a log of the database table; and
applying the one or more log records to at least a portion of the database table by using the key, the range of keys, or the one or more data blocks to restore the one or more past versions of the data item over the interval, whereinthe one or more log records comprise the one or more past versions and are used to reverse one or more changes made to the data item of the database table.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are algorithms, mechanisms, processes, mechanisms, and systems to implement a query upon past versions. In one approach, the version query can be defined as either “rowid”-based access or non-rowid based access. With rowid based access, a given rowid is used to identify the data for which past versions are desired. Also disclosed is a mechanism, system, interface, and process to allow specification of a new table decoration clause to obtain one or more past version of one or more data items. The version query provides for a direct interface to get multiple versions of the row(s). In addition, information about the past versions can be retrieved and displayed along with the past versions.
-
Citations
46 Claims
-
1. A computer implemented method for displaying past versions of a data item, comprising:
using at least a processor configured for performing a process, the process comprising; receiving a request on a database table for one or more past versions of the data item that exist or would have existed over an interval, wherein the database table comprises a current version of the data item without the one or more past versions of the data item, and the request is directed at the database table and comprises a specification of the interval; using at least a key, a range of keys, or one or more data blocks that are programmed for storing at least the data item in the database table by identifying one or more log records from a log of the database table; and applying the one or more log records to at least a portion of the database table by using the key, the range of keys, or the one or more data blocks to restore the one or more past versions of the data item over the interval, wherein the one or more log records comprise the one or more past versions and are used to reverse one or more changes made to the data item of the database table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
31. A computer program product comprising a tangible computer usable volatile or nonvolatile medium having executable code which, when executed by a computer processor, causes the processor to execute a process for displaying past versions of a data item, the process comprising:
using at least the computer processor configured for performing a process, the process comprising; receiving a request on a database table, which is decorated with the table decoration clause, for one or more past versions of a data item that exist or would have existed over an interval, wherein the database table comprises a current version of the data item without the one or more past versions of the data item, and the request is directed at the database table and comprises a specification of the interval; using at least a key, a range of keys, or one or more data blocks that are programmed for storing at least the data item in the database table by identifying one or more log records from a log of the database table; and applying the one or more log records to at least a portion of the database table by using the key, the range of keys, or the one or more data blocks to restore the one or more past versions of the data item over the interval, wherein the one or more log records comprise the one or more past versions and are used to reverse one or more changes made to the data item of the database table. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40)
-
41. A system for displaying past versions of a data item, comprising:
at least a processor configured for performing a process, the process comprising; receiving a request on a database table, which is decorated with the table decoration clause, for one or more past versions of the data item that exist or would have existed over an interval, wherein the database table comprises a current version of the data item without the one or more past versions of the data item, and the request is directed at the database table and comprises a specification of the interval; using at least a key, a range of keys, or one or more data blocks that are programmed for storing at least the data item in the database table by identifying one or more log records from a log of the database table; and applying one or more log records to at least a portion of the database table by using the key, the range of keys, or the one or more data blocks to restore the one or more past versions of the data item over the interval, in which the one or more log records comprise the one or more past versions and are used to reverse one or more changes made to the data item of the database table. - View Dependent Claims (42, 43, 44, 45, 46)
Specification