Differential file and system restores from peers and the cloud
First Claim
1. A client system for restoring information from a network backup system, comprising:
- a memory and a processor that are respectively configured to store and execute instructions, including instructions organized into;
a differential component that is configured to identify, for a data item to be restored, one or more portions of the data item that are different between a current version of the data item and a target version of the data item based on both a first differential, calculated at the client system, between the current version of the data item and the target version of the data item and on a second differential, calculated at a backup location that is remote from the client system, between the current version of the data item and the target version of the data item;
a location determination component that is configured to determine a plurality of network locations at which the one or more identified portions are stored and to select one of the determined network locations, wherein the plurality of network locations includes at least one location associated with a cloud service provider; and
a restore component that is configured to retrieve the one or more identified portions from the selected location and to restore the current version of the data item to the target version of the data item with the retrieved one or more identified portions.
2 Assignments
0 Petitions
Accused Products
Abstract
Provided herein are systems and methodologies for highly efficient restoration in a network-based backup system. As described herein, differential-based analysis can be utilized such that a new complete differential is calculated based on signatures and/or other information relating to a given item to be restored prior to retrieving backup data. Based on the differential, only blocks determined to be unique between the current version of the item and the desired version are transmitted, which can then be merged with non-unique locally present blocks to obtain the fully restored version of the item. Further, a hybrid architecture can be employed, wherein signatures and/or data are stored at a global location within a network as well as one or more local peers. Accordingly, a backup client can obtain information necessary for restoration from either the global location or a nearby peer, thus further reducing latency and bandwidth consumption.
-
Citations
20 Claims
-
1. A client system for restoring information from a network backup system, comprising:
a memory and a processor that are respectively configured to store and execute instructions, including instructions organized into; a differential component that is configured to identify, for a data item to be restored, one or more portions of the data item that are different between a current version of the data item and a target version of the data item based on both a first differential, calculated at the client system, between the current version of the data item and the target version of the data item and on a second differential, calculated at a backup location that is remote from the client system, between the current version of the data item and the target version of the data item; a location determination component that is configured to determine a plurality of network locations at which the one or more identified portions are stored and to select one of the determined network locations, wherein the plurality of network locations includes at least one location associated with a cloud service provider; and a restore component that is configured to retrieve the one or more identified portions from the selected location and to restore the current version of the data item to the target version of the data item with the retrieved one or more identified portions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
12. A method of performing a differential restore of one or more files, comprising:
-
identifying a locally available version of a file stored on at least one memory of a computing device; identifying a target version of the file to which the locally available version of the file is to be restored to; identifying, by the computing device, respective segments of the target version of the file that differ from corresponding segments of the locally available version of the file based on calculations performed by at least both of the computing device and by a backup server computing device that is remote from the computing device; obtaining each identified segment, including for each identified segment; determining a plurality of network data stores from which the identified segment can be retrieved, the plurality of network data stores including at least one network data store of a cloud service provider; selecting one network data store from the plurality of determined network data stores; and obtaining, by the computing device, the identified segment from the selected network data store; and restoring, by the computing device, the target version of the file from the current version of the file and from the identified and obtained segments. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus for restoring information from a hybrid peer-to-peer/cloud-based backup system, the apparatus comprising:
-
means for conducting a signature-based comparison between blocks of a locally available version of a file and corresponding blocks of a target version of the file and for identifying at least one block of the target version of the file that does not identically correspond to any block of the locally available version of the file based on both the signature-based comparison and on another signature-based comparison that was calculated at a remote backup location; means for determining a plurality of network devices at which the at least one block of the target version of the file is available for retrieval and for selecting one of the determined plurality of network devices as a source for the at least one block of the target version of the file, wherein the plurality of network devices includes at least one device of a cloud service provider; and means for obtaining the at least one block of the target version of the file from the selected one of the determined plurality of network devices and for merging the at least one block of the target version of the file with one or more blocks of the locally available version of the file to restore the target version of the file.
-
Specification