Dual channel restoration of data between primary and backup servers
First Claim
1. In a computing system including a primary computer system having a primary mass storage device where data blocks are stored and a backup computer system having a backup mass storage device where a backup copy of the data blocks is stored, a method for restoring data blocks that are lost at the primary mass storage device, the method comprising the acts of:
- after losing the data blocks at the primary mass storage device, receiving a first read request that would otherwise be processed by the primary computer system;
transmitting the first read request to the backup computer system;
as the backup computer system returns one or more data blocks from the backup mass storage device in response to the read request, writing the one or more data blocks to a mass storage device associated with the primary computer system;
prior to a full copy of the data blocks of the backup mass storage device being restored to the mass storage device associated with the primary computer system, performing the acts of;
receiving a second request, wherein the second read request is for at least one of the one or more data blocks that have been written to the mass storage device associated with the primary computer system; and
responding to the second read request using the mass storage device associated with the primary computer system.
10 Assignments
0 Petitions
Accused Products
Abstract
Data blocks lost at a primary mass storage are restored while allowing the primary computer system to access the lost data block before full restoration. Restoration occurs along two channels. In the first channel, read requests issued by the primary computer system are handled by obtaining the requested data block from the backup mass storage device. The retrieved data block is then written to the primary mass storage, thereby restoring the primary mass storage for that data block. In the second channel of restoration, a snapshot copy of a selected data set of the backup mass storage is made and transported to the primary system. If the corresponding data block in the primary mass storage has a current data block, the data block is not written from the snapshot copy to the primary mass storage. Otherwise, the data block is copied from the snapshot copy to the primary mass storage.
-
Citations
27 Claims
-
1. In a computing system including a primary computer system having a primary mass storage device where data blocks are stored and a backup computer system having a backup mass storage device where a backup copy of the data blocks is stored, a method for restoring data blocks that are lost at the primary mass storage device, the method comprising the acts of:
-
after losing the data blocks at the primary mass storage device, receiving a first read request that would otherwise be processed by the primary computer system;
transmitting the first read request to the backup computer system;
as the backup computer system returns one or more data blocks from the backup mass storage device in response to the read request, writing the one or more data blocks to a mass storage device associated with the primary computer system;
prior to a full copy of the data blocks of the backup mass storage device being restored to the mass storage device associated with the primary computer system, performing the acts of;
receiving a second request, wherein the second read request is for at least one of the one or more data blocks that have been written to the mass storage device associated with the primary computer system; and
responding to the second read request using the mass storage device associated with the primary computer system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a computing system including a primary computer system having a primary mass storage device where data blocks are stored and a backup computer system having a backup mass storage device where a backup copy of the data blocks is stored, a method for restoring data blocks that are lost at the primary mass storage device, the method comprising the acts of:
-
once the data blocks have been lost from the primary mass storage device, the primary computer system accessing the backup mass storage device such that read requests that would have been directed to the lost data blocks are instead directed to the backup mass storage device;
the primary computer system copying data blocks read from the backup mass storage device to create a present copy of the data blocks in the primary mass storage device;
the primary computer system tracking which read data blocks have been copied to the primary mass storage device using an overwrite map;
creating a static snapshot copy of a selected data set of the backup mass storage device, the static snapshot copy preserving the selected data set as the selected data set existed at a time after the data blocks were lost at the primary mass storage device; and
copying the static snapshot copy to the primary mass storage device except for data blocks that are indicated to be current in the overwrite map. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer system having the capability of restoring data blocks that have been lost from a primary computer included in the computing system, the computer system comprising:
-
a primary computer having a primary mass storage device where data blocks are stored;
a backup computer having a backup mass storage device where a backup copy of the data blocks is stored prior to the primary mass storage device losing one or more data blocks; and
a transport link for communicating between the primary computer and the backup computer, such that when the primary mass storage device loses one or more data blocks, the primary computer and the backup computer communicate over the transport link to perform the acts of;
directing read requests of the one or more lost data blocks to the backup mass storage device;
writing at least one data block read from the backup mass storage device to the primary mass storage device;
taking a first snapshot of the backup mass storage device for preserving the backup data blocks as the backup data blocks existed at a time after the one or more data blocks were lost;
creating a first snapshot copy of the backup data blocks for transferring the backup data blocks to the primary computer;
identifying any of the data blocks in the first snapshot copy that correspond to data blocks the primary computer has not written to the primary mass storage device subsequent to the primary mass storage device losing the one or more data blocks; and
making the identified data blocks available to the primary computer. - View Dependent Claims (16, 17)
-
-
18. In a primary computer system having a primary mass storage device where data blocks are stored, wherein the primary computer is included in a computing system that also includes a backup computer system having a backup mass storage device where a backup copy of the data blocks is stored, a method for restoring data blocks that are lost at the primary mass storage device, the method comprising the acts of:
-
experiencing loss of data blocks from the primary computer system;
accessing the backup mass storage device such that read requests that would have been directed to the lost data blocks are instead directed to the backup mass storage device;
receiving data blocks read from the backup mass storage device and copying the received data blocks to create a present copy of the data blocks in the primary mass storage device;
tracking which received data blocks have been copied to the primary mass storage device using an overwrite map;
receiving from the backup computer system a static snapshot copy of a selected data set of the backup mass storage device, the static snapshot copy preserving the selected data set as the selected data set existed at a time after the data blocks were lost at the primary mass storage device; and
copying the static snapshot copy to the primary mass storage device except for data blocks that are indicated to be current in the overwrite map. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method for restoring data blocks to a primary mass storage device while allowing user access to the data blocks being restored, the method comprising:
-
generating read requests for data blocks that have been lost in a primary mass storage device;
directing each read request for a first data block to a backup mass storage device, wherein the data block returned from the backup mass storage device is written to the primary mass storage device; and
directing each read request for a second data block to the primary mass storage device if the second data block has already been written to the primary mass storage device in response to a previous read request. - View Dependent Claims (25, 26, 27)
-
Specification