US 11,940,957 B2
Method and system for expanding storage capacity using cloud storage systems
Danyal Haroon Mokhtarzada, Silver Spring, MD (US); Zekeria Tariq Mokhtarzada, Silver Spring, MD (US); and Ryan William Stout, Bozeman, MT (US)
Assigned to MOKHTARZADA HOLDINGS, LLC., Silver Spring, MD (US)
Filed by MOKHTARZADA HOLDINGS, LLC, Silver Spring, MD (US)
Filed on Jan. 19, 2023, as Appl. No. 18/156,521.
Application 18/156,521 is a continuation of application No. 17/336,403, filed on Jun. 2, 2021, granted, now 11,580,077.
Application 17/336,403 is a continuation of application No. 16/245,244, filed on Jan. 10, 2019, granted, now 11,042,445, issued on Jun. 22, 2021.
Application 16/245,244 is a continuation of application No. 15/497,102, filed on Apr. 25, 2017, granted, now 10,180,883, issued on Jan. 15, 2019.
Application 15/497,102 is a continuation of application No. 14/832,771, filed on Aug. 21, 2015, granted, now 9,646,010, issued on May 9, 2017.
Claims priority of provisional application 62/042,679, filed on Aug. 27, 2014.
Prior Publication US 2023/0153275 A1, May 18, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/182 (2019.01); G06F 11/14 (2006.01); G06F 16/10 (2019.01); G06F 16/11 (2019.01); G06F 16/13 (2019.01); G06F 16/178 (2019.01); G06F 16/23 (2019.01)
CPC G06F 16/1824 (2019.01) [G06F 11/1451 (2013.01); G06F 16/10 (2019.01); G06F 16/113 (2019.01); G06F 16/119 (2019.01); G06F 16/122 (2019.01); G06F 16/13 (2019.01); G06F 16/178 (2019.01); G06F 16/182 (2019.01); G06F 16/1844 (2019.01); G06F 16/2358 (2019.01)] 15 Claims
OG exemplary drawing
 
1. One or more non-transitory machine-readable media storing instructions that, when executed by one or more processors of a computer system, cause the computer system to perform operations comprising:
obtaining, from a data source, data to be stored;
obtaining storage information that indicates that the obtained data be stored using (i) both the local persistent storage and the cloud storage, (ii) the cloud storage but not the local persistent storage, or (iii) the local persistent storage but not the cloud storage;
causing the obtained data to be stored using (i) both the local persistent storage and the cloud storage, (ii) the cloud storage but not the local persistent storage, or (iii) the local persistent storage but not the cloud storage, based on the obtained storage information;
causing the obtained data stored using (i) both the local persistent storage and the cloud storage and/or (iii) the local persistent storage but not the cloud storage to be stored in cloud storage;
determining whether an acknowledgement indicating that the obtained data has been successfully stored in the cloud storage is received from the cloud storage;
responsive to the determination that the acknowledgement is received, causing the obtained data to be removed from local persistent storage of the computer system; and
responsive to obtaining the data from the data source, causing a ghost file representation of the obtained data to be stored in the local persistent storage in lieu of storing the obtained data in the local persistent storage, wherein the ghost file representation is a local file representative of the obtained data and is smaller in size than a file comprising the obtained data stored in the cloud storage.