Systems and methods for reorganizing a database object
First Claim
1. A method of reorganizing a database object while providing clients continuous access to data stored in the database object, the method comprising:
- by a computer system comprising computer hardware;
reorganizing data of an original object by copying the data to a reorganized object;
applying a first partial lock to the original object, the first partial lock blocking select data modification operations against the original object while allowing other operations against the original object;
applying a second partial lock to the reorganized object, the second partial lock blocking select data modification operations against the reorganized object while allowing other operations during the reorganization such that the reorganized object remains continuously accessible during the reorganization;
substituting the reorganized object for the original object such that the reorganized object remains accessible while substituting the reorganized object for the original object.
23 Assignments
0 Petitions
Accused Products
Abstract
The invention is a reorganization system having a reorganization application, a database management system, and one or more database files. The reorganization application communicates with the database management system and the one or more database files to reorganize an object, such as, for example, a table or index, while providing one or more clients substantially continuous access to the object. The reorganization application employs one or more trigger locks to synchronize the data in an original table and a reorganized table. The one or more trigger locks block select data modification operations while allowing one or more read-only operations and structural modification operations.
85 Citations
20 Claims
-
1. A method of reorganizing a database object while providing clients continuous access to data stored in the database object, the method comprising:
-
by a computer system comprising computer hardware; reorganizing data of an original object by copying the data to a reorganized object; applying a first partial lock to the original object, the first partial lock blocking select data modification operations against the original object while allowing other operations against the original object; applying a second partial lock to the reorganized object, the second partial lock blocking select data modification operations against the reorganized object while allowing other operations during the reorganization such that the reorganized object remains continuously accessible during the reorganization; substituting the reorganized object for the original object such that the reorganized object remains accessible while substituting the reorganized object for the original object. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of reorganizing an object in a database, the method comprising:
-
by a computer system comprising computer hardware; reorganizing an original object by copying data from the original object to a reorganized object; applying a first partial lock to the original object, the first partial lock blocking select data modification operations against the original object; applying a second partial lock to the reorganized object, the second partial lock blocking data modification operations from modifying the reorganized object; and substituting the reorganized object with the original object such that the reorganized object remains readable while substituting the reorganized object for the original object. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A reorganization system, comprising:
-
at least one database file having an object of data and a log file; a database management system (DBMS) executing on a computing device, the DBMS communicating with the at least one database file; and a reorganization module communicating with the DBMS to access the object and communicating with the at least one database file to access the log file, wherein the reorganization module is configured to, copy the data of the object to a reorganized object, apply a first partial lock to the object, thereby blocking select data modification language operations while allowing at least read-only operations against the object, apply a second partial lock to the reorganized object, thereby blocking select data modification language operations while allowing at least read-only operations against the reorganized object, and substitute the reorganized object for the object wherein the reorganized object remains readable when the reorganization module substitutes the reorganized object for the object. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification