System and method for decoupling object identification for the purpose of object switching in database systems
First Claim
1. A processor-implemented management method for switching a database object in a database that stores a plurality of database objects, wherein multiple versions of database objects are stored in a plurality of files, each of the plurality of files being identified by a file handle, the method comprising:
- creating a lookup version table that includes version tuples, wherein each version tuple comprises a file handle for a file and a version identification for the file, wherein the file handle and the version identification are decouplable, and wherein the version identification indicates a current version for the object represented by the file handle;
prior to a database object performing an operation against a selected database object, locating a version tuple in the lookup version table that corresponds to the selected database object;
upon locating the version tuple, locking the version tuple to prevent other database agents from performing an object switching transaction on the selected database object prior to performing the operation;
wherein decoupling the file handle from the version identification within the lookup version table eliminates explicit synchronization among all the database agents.
1 Assignment
0 Petitions
Accused Products
Abstract
The use of a centralized version table allows for efficient object switching. Rather than synchronizing all database agents to recognize a newly created file as containing the most recent version of a given object, database agents requiring access to the given object need only consult the centralized version table to learn file identity information. That is, the database agents consult the centralized version table to determine which of the files associated with a given object contain the most recent version of the given object. Mechanisms associated with the use of the centralized version table also provide for efficient recovery from a failure that has occurred during an object switching transaction.
-
Citations
26 Claims
-
1. A processor-implemented management method for switching a database object in a database that stores a plurality of database objects, wherein multiple versions of database objects are stored in a plurality of files, each of the plurality of files being identified by a file handle, the method comprising:
-
creating a lookup version table that includes version tuples, wherein each version tuple comprises a file handle for a file and a version identification for the file, wherein the file handle and the version identification are decouplable, and wherein the version identification indicates a current version for the object represented by the file handle; prior to a database object performing an operation against a selected database object, locating a version tuple in the lookup version table that corresponds to the selected database object; upon locating the version tuple, locking the version tuple to prevent other database agents from performing an object switching transaction on the selected database object prior to performing the operation; wherein decoupling the file handle from the version identification within the lookup version table eliminates explicit synchronization among all the database agents. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A management computer program product having instruction codes stored on a computer-useable medium for switching a database object in a database that stores a plurality of database objects, wherein multiple versions of database objects are stored in a plurality of files, each of the plurality of files being identified by a file handle, the computer program product comprising:
-
a program code for creating a lookup version table that includes version tuples, wherein each version tuple comprises a file handle for a file and a version identification for the file, wherein the file handle and the version identification are decouplable, and wherein the version identification indicatesa current version for the object represented by the file handle; prior to a database object performing an operation against a selected database object, a program code locating a version tuple in the lookup version table that corresponds to the selected database object; upon locating the version tuple, a program code locking the version tuple to prevent other database agents from performing an object switching transaction on the selected database object prior to performing the operation; wherein decoupling the file handle from the version identification within the lookup version table eliminates explicit synchronization among all the database agents. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A processor-implemented management system for switching a database object in a database that stores a plurality of database objects, wherein multiple versions of database objects are stored in a plurality of files, each of the plurality of files being identified by a file handle, the system comprising:
-
a table manager for creating a lookup version table that includes version tuples, wherein each version tuple comprises a file handle for a file and a version identification for the file, wherein the file handle and the version identification are decouplable, and wherein the version identification indicates a current version for the object represented by the file handle; prior to a database object performing an operation against a selected database object, the table manager locates a version tuple in the lookup version table that corresponds to the selected database object; upon locating the version tuple, the table manager locks the version tuple to prevent other database agents from performing an object switching transaction on the selected database object prior to performing the operation; wherein the table manager decouples the file handle from the version identification within the lookup version table to eliminate explicit synchronization among all the database agents. - View Dependent Claims (22, 23, 24, 25, 26)
-
Specification