IP Library Granted Patent US 11,169,888
Granted Patent B2
US 11,169,888 · App. 16/224,383 · Granted Nov 9, 2021

Client-side repository in a networked deduplicated storage system

Inventors: Manoj Kumar Vijayan (Marlboro, NJ); Deepak Raghunath Attarde (Marlboro, NJ); Hetalkumar N. Joshi (Manalapan, NJ)
Assignee: Commvault Systems, Inc.
G06F11/1456G06F11/1453G06F11/1464G06F11/1469G06F16/22G06F16/951G06F2201/80
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,169,888
App. No.
16/224,383
Granted
Nov 9, 2021
Kind
B2
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.

Claims (30)

1. A method for restoring data to a client system from one or more secondary storage devices, the method comprising:

receiving a request to restore data to a native format on a client system from data stored in a backup format on one or more secondary storage devices where the backup format is different than the native format;

querying a client-side repository with a plurality of hash signatures to determine that at least a first portion of the restore data is stored in the backup format on the client-side repository and a second portion of the restore data is stored in a backup format on the one or more secondary storage devices, the client-side repository is stored on a storage device that is different than the one or more secondary storage devices;

accessing the first portion of the restore data stored in the client-side repository and restoring the first portion to the native format;

accessing over a network the second portion of the restore data stored in the one or more secondary storage devices and restoring the second portion to the native format; and

monitoring usage of the client-side repository and the one or more secondary storage devices and pruning data in the client-side repository stored in the backup format based at least in part on a percentage of bandwidth of the network used during a request to restore at least the second portion of the restore data.

2. The method of claim 1 wherein the client system communicates with the client-side repository via a local area network and the client system communicates with the one or more secondary storage devices via a wide area network.

3. The method of claim 1 further comprising consulting age information to determine a time of the creation of a secondary copy in secondary storage of at least one data block associated with the restore data.

4. The method of claim 3 wherein the age information comprises a copy session identifier identifying a particular copy session associated with the at least one data block associated with the restore data.

5. The method of claim 3 wherein the age information is indicative of when the at least one data block associated with the restore data was stored at the one or more secondary storage devices.

6. The method of claim 3 wherein the age information is indicative of when the at least one data block associated with the restore data was stored at the one or more secondary storage devices relative to when one or more other data blocks were stored at the one or more secondary storage devices.

7. The method of claim 3 wherein the age information provides an indication as to the likelihood that the at least one data block associated with the restore data was pruned from the client-side repository.

8. The method of claim 3 further comprising querying the client-side repository when the age information satisfies a threshold age.

9. The method of claim 1 wherein a secondary copy of at least one data block was previously copied to the one or more secondary storage devices during a backup operation.

10. The method of claim 1 wherein a secondary copy of at least one data block was previously copied to the one or more secondary storage devices during a replication operation.

11. A storage system comprising:

one or more secondary computing devices that execute on at least one one or more processors, the one or more secondary computing devices configured to store data in a backup format in one or more secondary storage devices and to receive a request to restore data to a client system in a native format, the one or more secondary computing devices further configured to:

query a client-side repository with a plurality of hash signatures to determine that at least a first portion of the restore data is stored in the backup format on client-side repository and at least a second portion is stored in a backup format in the one or more secondary storage devices, the client-side repository is stored on a storage device that is different than the one or more secondary storage devices;

access at least the first portion of the restore data stored in the client-side repository, and restore the first portion to the native format;

access over a network at least the second portion of the restore data stored in the one or more secondary storage devices, and restore the second portion to the native format; and

monitor usage of the client-side repository and the one or more secondary storage devices and prune data in the client-side repository based at least in part on a percentage of bandwidth of the network used during a request to restore at least the second portion of the restore data.

12. The storage system of claim 11 wherein the client system communicates with the client-side repository via a local area network and the client system communicates with the one or more secondary storage devices via a wide area network.

13. The storage system of claim 11 wherein the one or more secondary computing devices consults age information to determine a time of the creation of a secondary copy in secondary storage of at least one data block associated with the restore data.

14. The storage system of claim 13 wherein the age information comprises a copy session identifier identifying a particular copy session associated with the at least one data block associated with the restore data.

15. The storage system of claim 13 wherein the age information is indicative of when the at least one data block associated with the restore data was stored at the one or more secondary storage devices.

16. The storage system of claim 13 wherein the age information is indicative of when the at least one data block associated with the restore data was stored at the one or more secondary storage devices relative to when one or more other data blocks were stored in the one or more secondary storage devices.

17. The storage system of claim 13 wherein the age information provides an indication as to the likelihood that the at least one data block associated with the restore data was pruned from the client-side repository.

18. The storage system of claim 13 wherein the one or more secondary computing devices perform the query of the client-side repository when the age information satisfies a threshold age.

19. The storage system of claim 11 wherein secondary copy of at least one data block was previously copied to the one or more secondary storage devices during a backup operation.

20. The storage system of claim 11 wherein secondary copy of at least one data block was previously copied to the one or more secondary storage devices during a replication operation.

Assignments (3)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2019
From: VIJAYAN, MANOJ KUMAR; ATTARDE, DEEPAK RAGHUNATH; JOSHI, HETALKUMAR N.
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 048912/0888 →
Continuity (4)
Continuation 14673021 · Mar 30, 2015
Continuation 13324848 · Dec 13, 2011
Provisional Application 61423031 · Dec 14, 2010
Related Publication 20190227879A1 · Jul 25, 2019