IP Library Granted Patent US 9,405,635
Granted Patent B2
US 9,405,635 · App. 14/253,682 · Granted Aug 2, 2016

Multi-source restore in an information management system

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 9,405,635
App. No.
14/253,682
Granted
Aug 2, 2016
Kind
B2
Abstract

According to certain aspects, an information management system may identify a set of secondary storage computing devices residing in a secondary storage subsystem, wherein each of at least two storage devices that each store a separate copy of a first file is associated with at least one of the secondary storage computing devices in the set. The system may also select a subset of the set of secondary storage computing devices based on stored selection criteria. The system can, using a first secondary storage computing device, initiate a restore operation of a first copy of the first file stored in a first storage device associated with at least the first secondary storage computing device and, using a second secondary storage computing device, initiate a restore operation of a second copy of the first file stored in a second storage device associated with at least the second secondary storage computing device.

Claims (41)

1. A method of restoring data from multiple storage devices in an information management system, the method comprising:

receiving a request to restore a set of one or more files including a first file from a secondary storage subsystem to a client computing device residing in a primary storage subsystem, wherein the secondary storage subsystem comprises a plurality of storage devices, and wherein at least two of the plurality of storage devices each store a separate copy of the first file;

using one or more devices comprising computer hardware, identifying a set of secondary storage computing devices residing in the secondary storage subsystem, wherein each of the at least two storage devices is associated with at least one of the secondary storage computing devices in the set of secondary storage computing devices;

using one or more devices comprising computer hardware, selecting a subset of the set of secondary storage computing devices based on stored selection criteria, the subset comprising at least a first secondary storage computing device and a second secondary storage computing device;

using the first secondary storage computing device, initiating a restore operation of a first copy of the first file stored in a first storage device of the at least two of the plurality of storage devices, the first storage device associated with at least the first secondary storage computing device; and

using the second secondary storage computing device, initiating a restore operation of a second copy of the first file stored in a second storage device of the at least two of the plurality of storage devices, the second storage device associated with at least the second secondary storage computing device.

2. The method of claim 1 , wherein at least a portion of the restore operation of the first copy of the first file and at least a portion of the restore operation of the second copy of the first file overlap in time.

3. The method of claim 1 , further comprising:

in response determining that the restore operation of the first copy of the first file has been completed, notifying the second secondary storage computing device that the first copy of the first file has been restored, wherein the second secondary storage computing device is configured to cancel the restore operation of the second copy of the first file upon receipt of the notification that the first copy of the first file has been restored.

4. The method of claim 1 , wherein the set of one or more files comprises a plurality of files, and the method further comprises:

identifying a first group of at least two of the files in the set to restore using the first secondary storage computing device;

identifying a second group of at least two of the files in the set to restore using the second secondary storage computing device, the first and second group both including the first file;

determining a first order for restoring the files in the first group; and

determining a second order for restoring the files in the second group, wherein the first file is specified for delivery at an earlier position in the first order than in the second order.

5. The method of claim 1 , wherein a third secondary storage computing device is included in the identified set of secondary storage computing devices but not included in the subset of the set of secondary storage computing devices, and wherein the third secondary storage computing device is geographically remote from the client computing device.

6. The method of claim 1 , wherein the stored selection criteria comprises one or more of: a geographical location of the client computing device, a geographical location of a secondary storage computing device, a speed of network connection between the client computing device and a secondary storage computing device, a speed of network connection between a secondary storage computing device and a storage device, availability of network connection between the client computing device and a secondary storage computing device, or availability of network connection between a secondary storage computing device and a storage device.

7. The method of claim 1 , wherein said selecting the subset of the set of secondary storage computing devices is based on historical data relating to previous restore operations.

8. The method of claim 7 , wherein the historical data relating to previous restore operations comprises one or more of: an average speed of network connection between a client computing device and a secondary storage computing device, an average speed of network connection between a secondary storage computing device and a storage device, historical availability of network connection between a client computing device and a secondary storage computing device, or historical availability of network connection between a secondary storage computing device and a storage device.

9. The method of claim 1 , wherein the first file is a virtual machine file or a database file.

10. The method of claim 1 , wherein the set of one or more files comprises a second file and the second secondary storage computing device is configured to restore a copy of the second file in addition to the second copy of the first file.

11. An information management system configured to restore data from multiple storage devices, the system comprising:

a computing system comprising one or more computing devices comprising computer hardware, the computing system configured to:

receive a request to restore a set of one or more files including a first file from a secondary storage subsystem to a client computing device residing in a primary storage subsystem, wherein the secondary storage subsystem comprises a plurality of storage devices, and wherein at least two of the plurality of storage devices each store a separate copy of the first file;

identify a set of secondary storage computing devices residing in the secondary storage subsystem, wherein each of the at least two storage devices is associated with at least one of the secondary storage computing devices in the set of secondary storage computing devices;

select a subset of the set of secondary storage computing devices based on stored selection criteria, the subset comprising at least a first secondary storage computing device and a second secondary storage computing device;

using the first secondary storage computing device, initiate a restore operation of a first copy of the first file stored in a first storage device of the at least two of the plurality of storage devices, the first storage device associated with at least the first secondary storage computing device; and

using the second secondary storage computing device, initiate a restore operation of a second copy of the first file stored in a second storage device of the at least two of the plurality of storage devices, the second storage device associated with at least the second secondary storage computing device.

12. The system of claim 11 , wherein at least a portion of the restore operation of the first copy of the first file and at least a portion of the restore operation of the second copy of the first file overlap in time.

13. The system of claim 11 , wherein the computing system is further configured to:

in response determining that the restore operation of the first copy of the first file has been completed, notify the second secondary storage computing device that the first copy of the first file has been restored, wherein the second secondary storage computing device is configured to cancel the restore operation of the second copy of the first file upon receipt of the notification that the first copy of the first file has been restored.

14. The system of claim 11 , wherein the set of one or more files comprises a plurality of files, and the computing system is further configured to:

identify a first group of at least two of the files in the set to restore using the first secondary storage computing device;

identify a second group of at least two of the files in the set to restore using the second secondary storage computing device, wherein the first and second group both include the first file;

determine a first order for restoring the files in the first group; and

determine a second order for restoring the files in the second group, wherein the first file is specified for delivery at an earlier position in the first order than in the second order.

15. The system of claim 11 , wherein a third secondary storage computing device is included in the identified set of secondary storage computing devices but not included in the subset of the set of secondary storage computing devices, and wherein the third secondary storage computing device is geographically remote from the client computing device.

16. The system of claim 11 , wherein the stored selection criteria comprises one or more of: a geographical location of the client computing device, a geographical location of a secondary storage computing device, a speed of network connection between the client computing device and a secondary storage computing device, a speed of network connection between a secondary storage computing device and a storage device, availability of network connection between the client computing device and a secondary storage computing device, or availability of network connection between a secondary storage computing device and a storage device.

17. The system of claim 11 , wherein the computing system is further configured to select the subset of the set of secondary storage computing devices is based on historical data relating to previous restore operations.

18. The system of claim 17 , wherein the historical data relating to previous restore operations comprises one or more of: an average speed of network connection between a client computing device and a secondary storage computing device, an average speed of network connection between a secondary storage computing device and a storage device, historical availability of network connection between a client computing device and a secondary storage computing device, or historical availability of network connection between a secondary storage computing device and a storage device.

19. The system of claim 11 , wherein the first file is a virtual machine file or a database file.

20. The system of claim 11 , wherein the set of one or more files comprises a second file and the second secondary storage computing device is configured to restore a copy of the second file in addition to the second copy of the first file.

Assignments (5)
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 →
RELEASE OF SECURITY INTEREST Recorded Jan 6, 2021
From: BANK OF AMERICA, N.A.
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 054913/0905 →
SECURITY INTEREST Recorded Jul 2, 2014
From: COMMVAULT SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033266/0678 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2014
From: VIJAYAN, MANOJ KUMAR; PAWAR, RAHUL S.
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 032709/0570 →