Claims
- 1. A data recovery system comprising:
a snapshot component that generates a snapshot database from a source database, wherein the snapshot database houses sparse files that store data displaced as a result of modifications to the source database; and a restore component that utilizes the snapshot database to restore the source database to a point in time prior to an event.
- 2. The system of claim 1, wherein the event corresponds to a user error.
- 3. The system of claim 2, wherein the restore component comprises a revert component that copies snapshot database data to the source database.
- 4. The system of claim 3, wherein the restore component comprises an undo component that stores open transactions during the creation of a snapshot database and adds them to a restored source database.
- 5. The system of claim 4, wherein the undo component utilizes database log files to converge upon the error.
- 6. The system of claim 1, further comprising a catalog component to track whether a page in the snapshot database is shared with a source database.
- 7. The system of claim 6, wherein the catalog component tracks whether a page in the source database has been copied to the snapshot database.
- 8. The system of claim 1, the snapshot component comprising a monitor component that observes the source database and initiates snapshot creation upon the occurrence of an event likely to modify the source database to a particular degree.
- 9. The system of claim 1, wherein the restore component updates and synchronizes one or more mirror databases automatically and simultaneously with the restore of the source database.
- 10. A database data recovery system comprising:
a means for monitoring alterations to a data store and storing displaced data in a snapshot database; a means for reverting back to data at a prior point in time, wherein reverting back includes copying snapshot database files over associated data store files.
- 11. The system of claim 10, wherein the snapshot database comprises sparse files representing an original value of a data store file prior to being altered.
- 12. The system of claim 11, wherein the snapshot database and the data store share data that has not changed since creation of the snapshot database.
- 13. The system of claim 10, further comprising a means for capturing and applying open transactions that had not committed at the time of snapshot creation to converge more closely on an error.
- 14. The system of claim 10, further comprising a means for applying database log files to a data store to facilitated saving good transactions and converging on an event justifying a reversion.
- 15. A data recovery methodology comprising:
creating a snapshot of a database; and reverting to the snapshot to restore the database to its state at the point in time when the snapshot was created.
- 16. The method of claim 15, wherein the snapshot is created automatically upon a detection of an event that may significantly alter a database.
- 17. The method of claim 16, wherein the event corresponds to installation of a new application.
- 18. The method of claim 15, wherein the snapshot comprises one or more sparse files corresponding to database files, the sparse files representing the structure of the database at the time the snapshot was created.
- 19. The method of claim 18, wherein reverting to the snapshot comprises copying pages contained in the sparse files over corresponding pages in the database.
- 20. The method of claim 18, further comprising applying uncommitted open transactions to the database.
- 21. The method of claim 20, further comprising applying a database log file to the database to converge upon an event inspiring the restoration.
- 22. A computer readable medium having stored thereon computer executable instructions for carrying out the method of claim 15.
- 23. A data restoration methodology comprising:
creating a snapshot database for a source database at a point in time; copying data to be displaced by transactions committing after the creation of the snapshot to the snapshot database; and reverting to the state of the database at the time the snapshot was created upon the occurrence of an event.
- 24. The method of claim 23, wherein the event is a user error.
- 25. The method of claim 24, wherein the reverting to the state of the database at the time the snapshot was created is initiated by a database administrator utilizing a graphical user interface.
- 26. The method of claim 23, wherein a catalog component is utilized to determine which data is shared between a source database and a snapshot database and which data is unique to the snapshot database.
- 27. The method of claim 23, wherein reverting the database comprises copying pages from a sparse database file over corresponding source database pages.
- 28. The method of claim 27, further comprising capturing uncommitted transactions at the time the snapshot is created.
- 29. The method of claim 28, further comprising applying the uncommitted transactions to the source database.
- 30. The method of claim 29, further comprising retrieving a database log and applying the log to the database to roll the database forward in time to reflect changes to the database just prior to the occurrence of the event.
- 31. The method of claim 23, further comprising automatically updating one or more mirror databases automatically upon reversion of the source database.
- 32. A computer readable medium having stored thereon computer executable instructions for carrying out the method of claim 23.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present invention claims the benefit of U.S. Provisional Application Ser. No. 60/547,641, filed Feb. 25, 2004 entitled Database Data Recovery System and Method, which is incorporated herein by reference. Furthermore, the present invention is a continuation-in-part of U.S. application Ser. No. 10/611,774, entitled Transaction Consistent Copy-On-Write Databases filed Jun. 30, 2003 which is also incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60547641 |
Feb 2004 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10611774 |
Jun 2003 |
US |
Child |
10833541 |
Apr 2004 |
US |