US 12,216,614 B2
Data restore system
Anand Apte, Pune (IN); and Harshit Rai, Pune (IN)
Assigned to Druva Inc., Santa Clare, CA (US)
Filed by Druva Inc., Santa Clara, CA (US)
Filed on Jan. 12, 2023, as Appl. No. 18/096,065.
Claims priority of application No. 202241002128 (IN), filed on Jan. 13, 2022.
Prior Publication US 2023/0222040 A1, Jul. 13, 2023
Int. Cl. G06F 11/00 (2006.01); G06F 11/14 (2006.01); G06F 16/11 (2019.01); G06F 16/13 (2019.01); G06F 16/16 (2019.01); G06F 16/172 (2019.01); G06F 16/174 (2019.01); G06F 16/903 (2019.01)
CPC G06F 16/128 (2019.01) [G06F 11/1435 (2013.01); G06F 11/1453 (2013.01); G06F 11/1466 (2013.01); G06F 11/1469 (2013.01); G06F 16/125 (2019.01); G06F 16/13 (2019.01); G06F 16/162 (2019.01); G06F 16/172 (2019.01); G06F 16/1744 (2019.01); G06F 16/1748 (2019.01); G06F 16/90335 (2019.01); G06F 2201/84 (2013.01)] 22 Claims
OG exemplary drawing
 
1. A data restore system, comprising:
a backup data storage configured to store data for a client;
a data restore module configured to receive a restore trigger from the client and to initiate restore operation for selected data from the backup data storage in response to the received trigger, wherein the data restore module is further configured to:
receive information regarding the selected data to be restored;
access a metadata storage to receive metadata information for the selected data;
access the metadata storage to receive one or more urls to download data blocks for selected data based on their respective block identifications (BlockIDs);
access an object storage to concurrently download data blocks using the urls corresponding to the selected data;
concurrently provide the metadata information and the downloaded data blocks to a controller to facilitate sorting of the downloaded data blocks based on the files they belong to; and
store the downloaded restored data to a target data storage,
wherein the urls for obtaining data blocks for the selected data are received in response to one or more API calls, made concurrently by the restore system to the metadata storage, and
wherein the controller is further configured to close the file and set corresponding file attributes of the one or more files if it is detected that all the data blocks for a particular file are restored.