Database page mirroring
AssigneeMicrosoft Corporation
InventorsArtem Oks, Hanumantha Kodavalla, Martin Sleeman
Life of this patent
Estimating the term…
Abstract
Systems and methods are disclosed herein that facilitate automatic database backup and restore for databases resident in personal computing devices, and which are transparent to a user, utilizing database page mirroring. Modifications to a data page in a data file can be validated and written to a backup, or mirror, database and then subsequently written to an original database after a predetermined time. An I/O latch on a mirrored data page can be limited to a duration of a single I/O write operation to facilitate sequential data page writing to each of the databases while mitigating potential for both databases to be written simultaneously, which can detrimentally affect data quality during a recovery operation.
Claims20
An automatic data backup system that facilitates generating mirror copies of data pages comprising:
- a data store comprising at least one of an original database, a mirror database that is a complete backup of the original database, and a buffer memory;
- and
- a mirroring component that loads a data page into the buffer memory upon modification to the data page, sequentially writes the modified data page to each of the mirror database and the original database, and utilizes a flush sequence number technique to maintain an I/O latch on the data page for a duration of a single I/O write.
A method of fully and automatically backing up a database, comprising:
- detecting a modification to a data page in an original data file;
- loading the modified data page into a buffer memory;
- generating a transaction log and recording page modification events in the log;
- writing the modified data page to a mirror data file as a mirrored data page;
- writing the modified data page to the original data file after a predetermined time;
- and
- evicting the modified data page from the buffer memory after writing to the original data file.
An automatic data backup and restore system, comprising:
- means for generating a backup database from an original database on a personal computing device;
- means for detecting corrupted data pages in the original database;
- means for determining a status of data page versions in the backup database and the original database;
- and
- means for restoring uncorrupt data pages to the original database based at least in part on the status of the versions of the corrupt data pages.
Dependencies are inferred from the claim text.