Method and mechanism for determining life intervals for a key in an index
AssigneeOracle International Corporation
InventorsBipul Sinha, Vivekanandhan Raja, Amit Ganesh
Life of this patent
Estimating the term…
Abstract
Disclosed is a mechanism, system, interface, and process to determine one or more life intervals when given a key. In addition, one or more life intervals can be determined for each key within a range of keys. This type of process is useful for auditing purposes or if it is desire to implement a query upon past versions when a key or range of keys is specified for the data for which past versions is desired. This facilitates algorithms, mechanisms, and processes to implement a query upon past versions.
Claims32
A computer implemented method for determining one or more life intervals for a key in a database system for retrieving one or more past versions of a location for a data item in a database table in the database system, comprising:
- using a computer system which comprises at least one processor and is configured for performing:
- receiving the key for which it is desired to determine one or more life intervals, wherein the key is used as an input of a query statement to identify the data item in the database table;
- identifying a location where the key exists or should exist by using at least a database index structure that comprises a plurality of indices for the database table;
- determining the one or more life intervals for the key based at least in part upon analysis of a type of operation detected against the key and further in part upon whether the key existed prior to an action to retrieve the one or more past versions of the location, in which the act of determining the one or more life intervals comprises:
- applying a portion of a log record to restore the database index structure in its entirety to one or more prior states that include one or more past incarnations of the index, wherein
- the log record comprises an undo log record for the database system that is stored separately from the database table,
- the database table comprises a single version of the data item, and
- an access to the database table for retrieving the one or more past versions uses the key or a range of keys instead of one or more row-ids.
A computer program product comprising a computer usable storage medium having executable code which, when executed by at least one processor, causes the at least one processor to execute a process for determining one or more life intervals for a key in a database system for retrieving one or more past versions of a location for a data item in a database table in the database system, the process comprising:
- using a computer system which comprises the at least one processor and is configured for performing:
- receiving the key for which it is desired to determine one or more life intervals, wherein
- the key is used as an input of a query statement to identify the data item in the database table;
- identifying a location in the database system where the key exists or should exist by using at least a database index structure that comprises a plurality of indices for the database table;
- determining the one or more life intervals for the key based upon analysis of type of operation detected against the key and further in part upon whether the key existed prior to an action to retrieve the one or more past versions of the location, in which the act of determining the one or more life intervals comprises:
- applying a portion of a log record to restore the database index structure in its entirety to one or more prior states that include one or more past incarnations of the index, wherein
- the log record comprises an undo log record for the database system that is stored separately from the database table,
- the database table comprises a single version of the data item, and
- an access to the database table for the retrieval of the one or more past versions uses the key or a range of keys instead of one or more row-ids.
A system for determining one or more life intervals for a key in a database system for retrieving one or more past versions of a location for a data item in a database table in the database system, comprising:
- a computer system which comprises at least one processor and is configured for performing a process comprising:
- receiving the key for which it is desired to determine one or more life intervals, wherein
- the key is used as an input of a query statement to identify the data item in the database table;
- identifying a location where the key exists or should exist by using at least a database index structure that comprises a plurality of indices for the database table;
- determining the one or more life intervals for the key based at least in part upon analysis of type of operation detected against the key and further in part upon whether the key existed prior to an action to retrieve the one or more past versions of the location, in which the act of determining the one or more life intervals comprises:
- applying a portion of a log record to restore the database index structure in its entirety to one or more prior states that include one or more past incarnations of the index, wherein
- the log record comprises an undo log record for the database system that is stored separately from the database table,
- the database table comprises a single version of the data item, and
- an access to the database table for retrieving the one or more past versions uses the key or a range of keys instead of one or more row-ids.
Dependencies are inferred from the claim text.