Method and apparatus for data backup using data blocks
First Claim
Patent Images
1. A method for backing up data, comprising:
- at a first computer;
breaking down a specified data set to be backed up into a plurality of data blocks;
generating for each data block a corresponding data block digest and associated metadata comprising data block information; and
associating each data block digest and associated metadata with the corresponding data block; and
comparing a first generated data block digest for a selected data block in the specified data set to be backed up with data block digests stored in a remote database storage device and associated with backed up data blocks stored in the remote database storage device to determine whether the selected data block is already backed up;
upon determining that the first generated data block digest is not equal to any of the data block digests of the backed up data blocks stored in the remote database storage device, storing the selected data block, the associated first generated data block digest, and the associated metadata in the remote database storage device, wherein storing the associated metadata comprises storing in the remote database storage device at least one timestamp associated with the selected data block in the specified data set to be backed up; and
upon determining that the first generated data block digest is equal to one of the data block digests of the backed up data blocks stored in the remote database storage device, updating metadata associated with the data block already stored in the remote database storage device with the generated metadata, wherein updating metadata associated with the data block already stored in the remote database storage device with the generated metadata comprises updating the at least one timestamp associated with the data block already stored in the remote database storage device with the generated metadata.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses for backing up data to a database are provided. A specified data set to be backed up is broken down into a plurality of data blocks, each data block is associated with a data block digest, and the data blocks and associated data block digests are stored in the database. When one or more data blocks are subsequently changed, an update to the backup may be performed by adding to the backup data only the data blocks that have changed since the initial backup. Methods and apparatuses for restoring backup data from a database are also provided. Timestamp information associated with the data blocks in the database is used to select the data blocks to be restored.
-
Citations
30 Claims
-
1. A method for backing up data, comprising:
-
at a first computer; breaking down a specified data set to be backed up into a plurality of data blocks; generating for each data block a corresponding data block digest and associated metadata comprising data block information; and associating each data block digest and associated metadata with the corresponding data block; and comparing a first generated data block digest for a selected data block in the specified data set to be backed up with data block digests stored in a remote database storage device and associated with backed up data blocks stored in the remote database storage device to determine whether the selected data block is already backed up; upon determining that the first generated data block digest is not equal to any of the data block digests of the backed up data blocks stored in the remote database storage device, storing the selected data block, the associated first generated data block digest, and the associated metadata in the remote database storage device, wherein storing the associated metadata comprises storing in the remote database storage device at least one timestamp associated with the selected data block in the specified data set to be backed up; and upon determining that the first generated data block digest is equal to one of the data block digests of the backed up data blocks stored in the remote database storage device, updating metadata associated with the data block already stored in the remote database storage device with the generated metadata, wherein updating metadata associated with the data block already stored in the remote database storage device with the generated metadata comprises updating the at least one timestamp associated with the data block already stored in the remote database storage device with the generated metadata. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 25, 30)
-
-
16. A computer system comprising:
-
a remote database storage device comprising a non-transitory storage medium; and a processor coupled to the remote database storage device and configured to; break down a specified data set to be backed up into a plurality of data blocks; generate for each data block a corresponding data block digest and associated metadata comprising data block information; associate each data block digest and associated metadata with the corresponding data block; and compare a first generated data block digest for a selected data block in the specified data set to be backed up with data block digests stored in the remote database storage device and associated with backed up data blocks stored in the remote database storage device to determine whether the selected data block is already backed up; and an interface coupled to the central processing unit (CPU) and configured to transmit the data block, the associated first generated data block digest, and the associated metadata to the remote database storage device, wherein; upon determining that the first generated data block is not equal to any of the data block digests of the backed up data blocks stored in the remote database storage device, the remote database storage device is configured to store therein the data block, the associated first generated data block digest, and the associated metadata, wherein the associated metadata comprises at least one timestamp associated with the selected data block in the specified data set to be backed up; and upon determining that the first generated data block digest is equal to one of the data block digests of the backed up data blocks stored in the remote database storage device, the remote database storage device is configured to update metadata associated with the data block already stored in the remote database storage device with the generated metadata, wherein updating metadata associated with the data block already stored in the remote database storage device with the generated metadata comprises updating the at least one timestamp associated with the data block already stored in the remote database storage device with the generated metadata. - View Dependent Claims (26, 27)
-
-
17. A non-transitory storage medium readable by a machine and tangibly embodying a program of instructions executable by the machine, when executed the program of instructions configured to:
-
at a first computer; break down a specified data set to be backed up into a plurality of data blocks; generate for each data block a corresponding data block digest and associated metadata comprising data block information; and associate each data block digest and associated metadata with the corresponding data block; and compare a first generated data block digest for a selected data block in the specified data set to be backed up with data block digests stored in a remote database storage device and associated with backed up data blocks stored in the remote database storage device to determine whether the selected data block is already backed up; upon determining that the first generated data block digest is not equal to any of the data block digests of the backed up data blocks stored in the remote database storage device, store the data block, the associated first generated data block digest, and the associated metadata in the remote database storage device, wherein storing the associated metadata comprises storing in the remote database storage device at least one timestamp associated with the selected data block in the specified data set to be backed up; and upon determining that the first generated data block digest is equal to one of the data block digests of the backed up data blocks stored in the remote database storage device, update metadata associated with the data block already stored in the remote database storage device with the generated metadata, wherein updating metadata associated with the data block already stored in the remote database storage device with the generated metadata comprises updating the at least one timestamp associated with the data block already stored in the remote database storage device with the generated metadata. - View Dependent Claims (28, 29)
-
Specification