US2021037112A1PendingUtilityA1

Data storage system with rapid restore capability

Assignee: COMMVAULT SYSTEMS INCPriority: Jul 29, 2019Filed: Jul 29, 2019Published: Feb 4, 2021
Est. expiryJul 29, 2039(~13 yrs left)· nominal 20-yr term from priority
H04L 67/5683H04L 67/565H04L 67/1097H04L 67/2823H04L 67/2857
56
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

An improved information management system that implements a staging area or cache to temporarily store primary data in a native format before the primary data is converted into secondary copies in a secondary format is described herein. For example, the improved information management system can include various media agents that each include one or more high speed drives. When a client computing device provides primary data for conversion into secondary copies, the primary data can initially be stored in the native format in the high speed drive(s). If the client computing device then submits a request for the primary data, the media agent can simply retrieve the primary data from the high speed drive(s) and transmit the primary data to the client computing device. Because the primary data is already in the native format, no conversion operations are performed by the media agent, thereby reducing the restore delay.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A networked information management system comprising:
 a client computing device having one or more first hardware processors, wherein the client computing device executes an application that generated a first file; and   one or more computing devices in communication with the client computing device, wherein the one or more computing devices comprise a first drive and a second drive, wherein the one or more computing devices each have one or more second hardware processors, wherein the one or more computing devices are configured with computer-executable instructions that, when executed, cause the one or more computing devices to:
 process a request received from the client computing device to restore a version of a first file that existed at a first time; 
 identify a snapshot stored in the first drive that is associated with the first time and that includes a stub corresponding to the first file, wherein the stub references a storage location of the first file in the second drive; 
 retrieve the first file from the storage location in the second drive based on the identified stub, wherein the first file is stored in the storage location in the second drive in a native format; 
 transmit the first file retrieved from the storage location to the client computing device; 
 process a request received from the client computing device to restore a version of the first file that existed at a second time before the first time; 
 identify a second snapshot stored in the first drive that is associated with the second time and that includes a second stub corresponding to the first file, wherein the second stub references a second storage location of the first file in the second drive; 
 retrieve the first file from the second storage location in the second drive based on the identified second stub, wherein the first file is stored in the second storage location in the second drive in a secondary copy format; 
 convert the first file retrieved from the second storage location from the secondary copy format to the native format; and 
 transmit the converted first file to the client computing device. 
   
     
     
         2 . The networked information management system of  claim 1 , wherein the computer-executable instructions, when executed, further cause the one or more computing devices to shard the version of the first file that existed at the first time into a first file extent and a second file extent. 
     
     
         3 . The networked information management system of  claim 2 , wherein the computer-executable instructions, when executed, further cause the one or more computing devices to:
 determine that the request received from the client computing device corresponds to the second file extent;   identify the snapshot stored in the first drive that includes the stub corresponding to the second file extent;   retrieve the second file extent from the second drive based on the identified stub; and   transmit the retrieved second file extent to the client computing device.   
     
     
         4 . The networked information management system of  claim 1 , wherein the computer-executable instructions, when executed, further cause the one or more computing devices to:
 receive an updated version of the first file;   store the updated version of the first file in the first drive;   determine that the first file has changed since a previous snapshot operation;   store the updated version of the first file in the second drive;   create a second stub corresponding to the updated version of the first file; and   create a skeleton directory in the first drive, wherein the skeleton directory comprises the second stub.   
     
     
         5 . The networked information management system of  claim 4 , wherein the computer-executable instructions, when executed, further cause the one or more computing devices to delete the updated version of the first file from the first drive. 
     
     
         6 . The networked information management system of  claim 1 , wherein the computer-executable instructions, when executed, further cause the one or more computing devices to transmit the first file retrieved from the storage location to the client computing device without performing a conversion operation to convert the first file into the native format. 
     
     
         7 . The networked information management system of  claim 1 , wherein the snapshot is stored in the first drive in association with the client computing device and the application executed by the client computing device. 
     
     
         8 . The networked information management system of  claim 1 , wherein the stub comprises an indication of the first file, a product ID identifying a name of a computing system that stores the version of the first file that existed at the first time, a store ID identifying that the second drive stores the version of the first file that existed at the first time, a universally unique identifier (UUID) identifying the storage location of the version of the first file that existed at the first time in the second drive, and an indication of a time that the snapshot was taken. 
     
     
         9 . The networked information management system of  claim 1 , wherein the first drive forms at least a portion of a first type of file system, and wherein the second drive forms at least a portion of a second type of file system. 
     
     
         10 . The networked information management system of  claim 1 , wherein read times of the second drive are slower than read times of the first drive. 
     
     
         11 . A computer-implemented method comprising:
 receiving, by one or more computing devices comprising a first drive and a second drive, a request from a client computing device to restore a version of a first file that existed at a first time, wherein the first file is previously provided by the client computing device to the one or more computing devices, and wherein the first file is generated by an application executed by the client computing device;   identifying a snapshot stored in the first drive that is associated with the first time and that includes a stub corresponding to the first file, wherein the stub references a storage location of the first file in the second drive;   retrieving the first file from the storage location in the second drive based on the identified stub, wherein the first file is stored in the storage location in the second drive in a native format;   transmitting the first file retrieved from the storage location to the client computing device;   processing a request received from the client computing device to restore a version of the first file that existed at a second time before the first time;   identifying a second snapshot stored in the first drive that is associated with the second time and that includes a second stub corresponding to the first file, wherein the second stub references a second storage location of the first file in the second drive;   retrieving the first file from the second storage location in the second drive based on the identified second stub, wherein the first file is stored in the second storage location in the second drive in a secondary copy format;   converting the first file retrieved from the second storage location from the secondary copy format to the native format; and   transmitting the converted first file to the client computing device.   
     
     
         12 . The computer-implemented method of  claim 11 , further comprising sharding the version of the first file that existed at the first time into a first file extent and a second file extent. 
     
     
         13 . The computer-implemented method of  claim 12 , further comprising:
 determining that the request received from the client computing device corresponds to the second file extent;   identifying the snapshot stored in the first drive that includes the stub corresponding to the second file extent;   retrieving the second file extent from the second drive based on the identified stub; and   transmitting the retrieved second file extent to the client computing device.   
     
     
         14 . The computer-implemented method of  claim 11 , further comprising:
 receiving an updated version of the first file;   storing the updated version of the first file in the first drive;   determining that the first file has changed since a previous snapshot operation;   storing the updated version of the first file in the second drive;   creating a second stub corresponding to the updated version of the first file; and   creating a skeleton directory in the first drive, wherein the skeleton directory comprises the second stub.   
     
     
         15 . The computer-implemented method of  claim 11 , wherein transmitting the retrieved first file to the client computing device further comprises transmitting the first file retrieved from the storage location to the client computing device without performing a conversion operation to convert the first file into the native format. 
     
     
         16 . The computer-implemented method of  claim 11 , wherein the snapshot is stored in the first drive in association with the client computing device and the application executed by the client computing device. 
     
     
         17 . The computer-implemented method of  claim 11 , wherein the stub comprises an indication of the first file, a product ID identifying a name of a computing system that stores the version of the first file that existed at the first time, a store ID identifying that the second drive stores the version of the first file that existed at the first time, a universally unique identifier (UUID) identifying the storage location of the version of the first file that existed at the first time in the second drive, and an indication of a time that the snapshot was taken. 
     
     
         18 . The computer-implemented method of  claim 11 , wherein the first drive forms at least a portion of a first type of file system, and wherein the second drive forms at least a portion of a second type of file system. 
     
     
         19 . The computer-implemented method of  claim 11 , wherein read times of the second drive are slower than read times of the first drive. 
     
     
         20 . A non-transitory computer-readable medium storing instructions, which when executed by one or more computing devices comprising a first drive and a second drive, cause the one or more computing devices to perform a method comprising:
 receiving a request from a client computing device to restore a version of a first file that existed at a first time, wherein the first file is previously provided by the client computing device to the one or more computing devices, and wherein the first file is generated by an application executed by the client computing device;   identifying a snapshot stored in the first drive that is associated with the first time and that includes a stub corresponding to the first file, wherein the stub references a storage location of the first file in the second drive;   retrieving the first file from the storage location in the second drive based on the identified stub, wherein the first file is stored in the storage location in the second drive in a native format;   transmitting the first file retrieved from the storage location to the client computing device;   processing a request received from the client computing device to restore a version of the first file that existed at a second time before the first time;   identifying a second snapshot stored in the first drive that is associated with the second time and that includes a second stub corresponding to the first file, wherein the second stub references a second storage location of the first file in the second drive;   retrieving the first file from the second storage location in the second drive based on the identified second stub, wherein the first file is stored in the second storage location in the second drive in a secondary copy format;   converting the first file retrieved from the second storage location from the secondary copy format to the native format; and   transmitting the converted first file to the client computing device.

Join the waitlist — get patent alerts

Track US2021037112A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.