CLIENT-SIDE REPOSITORY IN A NETWORKED DEDUPLICATED STORAGE SYSTEM
First Claim
1. A method of restoring deduplicated data from secondary storage to an information store associated with a client, the method comprising:
- in response to instructions to copy data from an information store associated with a client system to secondary storage remote from the client system;
copying at least a portion of the data from the information store to a data repository of a client-side repository as a plurality of data blocks, the client-side repository being remote from the secondary storage, wherein the data from the information store is copied to the secondary storage according to a deduplication scheme; and
populating a signature repository of the client-side repository with a plurality of deduplication signatures corresponding to the data blocks stored in the data repository of the client-side repository; and
for a restore operation in which at least some of the copied data is restored from secondary storage to the client;
receiving a plurality of queries inquiring as to the presence of at least some of the plurality of data blocks in the client-side repository;
using one or more processors and in response to the queries, consulting the signature repository of the client-side repository to determine which of the data blocks are stored in the data repository of the client-side repository; and
restoring data blocks that are stored in the data repository of the client-side repository from the client-side repository to the information store associated with the client, the data blocks not stored in the data repository of the client-side repository being restored from the secondary storage to the information store associated with the client.
3 Assignments
0 Petitions
Accused Products
Abstract
A storage system according to certain embodiments includes a client-side repository (CSR). The CSR may communicate with a client at a higher data transfer rate than the rate used for communication between the client and secondary storage. During copy operations, for instance, some or all of the data being backed up or otherwise copied to secondary storage is stored in the CSR. During restore operations, copies of the data stored in the CSR is accessed from the CSR instead of from secondary storage, improving performance. Remaining data blocks not stored in the CSR can be restored from secondary storage.
580 Citations
18 Claims
-
1. A method of restoring deduplicated data from secondary storage to an information store associated with a client, the method comprising:
-
in response to instructions to copy data from an information store associated with a client system to secondary storage remote from the client system; copying at least a portion of the data from the information store to a data repository of a client-side repository as a plurality of data blocks, the client-side repository being remote from the secondary storage, wherein the data from the information store is copied to the secondary storage according to a deduplication scheme; and populating a signature repository of the client-side repository with a plurality of deduplication signatures corresponding to the data blocks stored in the data repository of the client-side repository; and for a restore operation in which at least some of the copied data is restored from secondary storage to the client; receiving a plurality of queries inquiring as to the presence of at least some of the plurality of data blocks in the client-side repository; using one or more processors and in response to the queries, consulting the signature repository of the client-side repository to determine which of the data blocks are stored in the data repository of the client-side repository; and restoring data blocks that are stored in the data repository of the client-side repository from the client-side repository to the information store associated with the client, the data blocks not stored in the data repository of the client-side repository being restored from the secondary storage to the information store associated with the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A storage system, comprising:
-
a client-side repository, comprising; a data repository storing a plurality of data blocks, the data blocks corresponding to at least a portion of data that has been previously copied from an information store of a client to secondary storage according to a deduplication scheme; a signature repository storing signatures corresponding to the data blocks in the data repository, the data repository and the signature repository remote from the secondary storage; and a control module executing in one or more processors and configured to; receive one or more queries inquiring as to the presence of a plurality of data blocks in the data repository; consult the signature repository in response to the one or more queries to determine which of the queried data blocks are stored in the data block repository; and restore the data blocks that are stored in the data block repository from the data block repository to the information store of the client, wherein data blocks that are not stored in the data block repository are restored from the secondary storage to the information store of the client. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method of restoring deduplicated data to an information store associated with a client from secondary storage, comprising:
-
sending one or more queries to a client-side repository inquiring as to the presence of a plurality of data blocks in the client-side repository, the data blocks corresponding to at least a portion of data that has been previously copied from an information store of a client to the secondary storage according to a deduplication scheme, the secondary storage remote from the client and the client-side repository; receiving an indication as to which of the queried data blocks are stored in the client-side repository; and restoring the data blocks that are not stored in the client-side repository from the secondary storage to the information store of the client, wherein data blocks that are stored in the client-side repository are restored from the client-side repository to the information store of the client.
-
Specification