Streamed database archival process with background synchronization
First Claim
Patent Images
1. A method of archiving a database, comprising:
- storing a plurality of archive logs comprising a plurality of transactions on an operational database;
transmitting a plurality of asynchronous streams to a backup database wherein a first asynchronous stream of said plurality of asynchronous streams is transmitted asynchronously with respect to a second asynchronous stream of said plurality of asynchronous streams, wherein each asynchronous stream of the plurality of asynchronous streams corresponds to a particular archive log of the plurality of archive logs, and wherein a predetermined number of the plurality of asynchronous streams, that is set by a user in a config file, are transmitted simultaneously in parallel; and
updating the backup database with the plurality of transactions.
1 Assignment
0 Petitions
Accused Products
Abstract
A streamed database archival process with background synchronization. Archive logs are streamed asynchronously such that a plurality of files can be transferred simultaneously from a host operational database to a backup archive database. By streaming the logs, the backup database is kept up to date and backlogs can quickly be resolved. Furthermore, an automatic recovery process is run in the background. This process automatically detects files on the backup database which may have been accidentally deleted or corrupted. The process recopies those missing or corrupted files from the host database without any human intervention.
148 Citations
17 Claims
-
1. A method of archiving a database, comprising:
-
storing a plurality of archive logs comprising a plurality of transactions on an operational database; transmitting a plurality of asynchronous streams to a backup database wherein a first asynchronous stream of said plurality of asynchronous streams is transmitted asynchronously with respect to a second asynchronous stream of said plurality of asynchronous streams, wherein each asynchronous stream of the plurality of asynchronous streams corresponds to a particular archive log of the plurality of archive logs, and wherein a predetermined number of the plurality of asynchronous streams, that is set by a user in a config file, are transmitted simultaneously in parallel; and updating the backup database with the plurality of transactions. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of performing automatic recoveries on an archived database, comprising:
-
comparing files residing on an operational database to files residing on a backup database; determining whether there are any missing files by checking for files which exist on the operational database and which do not exist on the backup database; recopying files from the operational database over to the backup database which are missing; determining whether there are any corrupted files by checking for files which have a different size on the operational database as compared to corresponding file residing on the backup database; recopying files from the operational database to the backup database which have become corrupted, wherein the automatic recovery process is run by a program automatically in the background without requiring initiation and is run independent of a complete system backup; and transferring a predetermined plurality of the recopied files as asynchronous streams transferred in parallel from the operational database to the backup database. - View Dependent Claims (7, 8)
-
-
9. An archival system, comprising:
-
a backup database for storing a plurality of archive logs which represent data stored on an operational database; a memory for storing instructions on how data is to be transferred from the operational database to the backup database, wherein the instructions include commands which cause the operational database to stream a plurality of archive logs asynchronously to be copied over to the backup database such that the backup database is updated with the data wherein a first asynchronous stream of a predetermined plurality of asynchronous streams is transmitted asynchronously with respect to a second asynchronous stream of said predetermined plurality of asynchronous streams corresponds to a particular archive log of the plurality of archive logs, and wherein the predetermined plurality of asynchronous streams are transmitted simultaneously in parallel. - View Dependent Claims (10)
-
-
11. A computer-readable medium having stored thereon instructions for transferring data from an operational database to a backup database for archival of data, comprising:
-
storing a plurality of archive logs comprising a plurality of transactions on the operational database; transmitting a predetermined plurality of asynchronous streams to the backup database wherein a first asynchronous stream of said predetermined plurality of asynchronous streams is transmitted asynchronously with respect to a second asynchronous stream of said predetermined plurality of asynchronous streams, wherein each asynchronous stream of the predetermined plurality of asynchronous streams corresponds to a particular archive log of the plurality of archive logs, and wherein the predetermined plurality of asynchronous streams are transmitted simultaneously in parallel; and updating the backup database with plurality of transactions. - View Dependent Claims (12)
-
-
13. A computer-readable medium having stored thereon instructions for performing automatic recoveries on an archived database, comprising:
-
comparing files residing on an operational database to files residing on a backup database; determining whether there are any missing files by checking for files which exist on the operational database and which do not exist on the backup database; recopying files from the operational database over to the backup database which are missing; determining whether there are any corrupted files by checking for files which have a different size on the operational database as compared to corresponding file residing on the backup database; recopying files from the operational database to the backup database which have become corrupted, wherein the automatic recovery process is run by a program automatically in the background without requiring initiation and is run independent of a complete system backup; and transferring a plurality of the recopied files as asynchronous streams transferred in parallel from the operational database to the backup database. - View Dependent Claims (14)
-
-
15. An apparatus for archiving a database, comprising:
-
means for storing a plurality of archive logs comprising a plurality of transactions on an operational database; means for transmitting a predetermined plurality of synchronous streams to a backup database wherein a first asynchronous stream of said predetermined plurality of asynchronous streams is transmitted asynchronously with respect to a second asynchronous stream of said predetermined plurality of asynchronous streams corresponds to a particular archive log of the plurality of archive logs, and wherein the predetermined plurality of asynchronous streams are transmitted simultaneously in parallel; and means for updating the backup database with plurality of transactions. - View Dependent Claims (16)
-
-
17. An apparatus for performing automatic recoveries on an archived database, comprising:
-
means for comparing files residing on an operational database to files residing on a backup database; means for determining whether there are any missing files by checking for files which exist on the operational database and which do not exist on the backup database; means for recopying files from the operational database over to the backup database which are missing; means for determining whether there are any corrupted files by checking for files which have a different size on the operational database as compared to corresponding file residing on the backup database; means for recopying files from the operational database to the backup database which have become corrupted, wherein the automatic recovery process is run by a program automatically in the background without requiring initiation and is run independent of a complete system backup; and means for transferring a plurality of the recopied files as asynchronous streams transferred in parallel from the operational database to the backup database.
-
Specification