US 11,755,535 B2
Consistent file system semantics with cloud object storage
Mark Maybee, Boulder, CO (US); James Kremer, Longmont, CO (US); and Victor Latushkin, Superior, CO (US)
Assigned to Oracle International Corporation, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Jun. 8, 2021, as Appl. No. 17/342,448.
Application 17/342,448 is a continuation of application No. 15/610,361, filed on May 31, 2017, granted, now 11,074,220.
Claims priority of provisional application 62/443,391, filed on Jan. 6, 2017.
Prior Publication US 2021/0294777 A1, Sep. 23, 2021
Int. Cl. G06F 16/00 (2019.01); G06F 16/172 (2019.01); G06F 3/06 (2006.01); G06F 11/14 (2006.01); G06F 16/182 (2019.01); G06F 16/185 (2019.01); G06F 12/0868 (2016.01); G06F 12/128 (2016.01); H04L 67/1095 (2022.01); G06F 11/10 (2006.01); G06F 12/0897 (2016.01); G06F 16/23 (2019.01); G06F 16/901 (2019.01); G06F 9/50 (2006.01); G06F 11/30 (2006.01); G06F 12/0804 (2016.01); G06F 12/0813 (2016.01); G06F 12/123 (2016.01); H04L 9/40 (2022.01); G06F 16/432 (2019.01); G06F 16/11 (2019.01); G06F 1/28 (2006.01); G06F 9/455 (2018.01); G06F 11/07 (2006.01); G06F 11/32 (2006.01); G06F 11/34 (2006.01); G06F 21/60 (2013.01); H04L 9/06 (2006.01); H04L 9/08 (2006.01); H04L 9/14 (2006.01); H04L 67/1097 (2022.01); G06F 12/14 (2006.01); H03M 7/30 (2006.01); H03M 7/40 (2006.01)
CPC G06F 16/172 (2019.01) [G06F 1/28 (2013.01); G06F 3/061 (2013.01); G06F 3/064 (2013.01); G06F 3/065 (2013.01); G06F 3/0605 (2013.01); G06F 3/0607 (2013.01); G06F 3/067 (2013.01); G06F 3/0608 (2013.01); G06F 3/0617 (2013.01); G06F 3/0623 (2013.01); G06F 3/0641 (2013.01); G06F 3/0643 (2013.01); G06F 3/0665 (2013.01); G06F 3/0667 (2013.01); G06F 9/45558 (2013.01); G06F 9/5077 (2013.01); G06F 11/07 (2013.01); G06F 11/1004 (2013.01); G06F 11/14 (2013.01); G06F 11/1446 (2013.01); G06F 11/1464 (2013.01); G06F 11/3006 (2013.01); G06F 11/3034 (2013.01); G06F 11/3037 (2013.01); G06F 11/328 (2013.01); G06F 11/3495 (2013.01); G06F 12/0804 (2013.01); G06F 12/0813 (2013.01); G06F 12/0868 (2013.01); G06F 12/0897 (2013.01); G06F 12/123 (2013.01); G06F 12/128 (2013.01); G06F 16/128 (2019.01); G06F 16/182 (2019.01); G06F 16/184 (2019.01); G06F 16/185 (2019.01); G06F 16/1844 (2019.01); G06F 16/2365 (2019.01); G06F 16/434 (2019.01); G06F 16/9027 (2019.01); G06F 21/602 (2013.01); H04L 9/0637 (2013.01); H04L 9/0822 (2013.01); H04L 9/14 (2013.01); H04L 63/0428 (2013.01); H04L 67/1095 (2013.01); H04L 67/1097 (2013.01); G06F 12/1408 (2013.01); G06F 2009/4557 (2013.01); G06F 2009/45583 (2013.01); G06F 2009/45595 (2013.01); G06F 2201/80 (2013.01); G06F 2201/81 (2013.01); G06F 2201/84 (2013.01); G06F 2212/154 (2013.01); G06F 2212/225 (2013.01); G06F 2212/262 (2013.01); G06F 2212/284 (2013.01); G06F 2212/313 (2013.01); G06F 2212/401 (2013.01); G06F 2212/502 (2013.01); H03M 7/30 (2013.01); H03M 7/3086 (2013.01); H03M 7/40 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
one or more processors communicatively coupled to memory, the one or more processors to facilitate:
receiving a first request to perform a transaction with respect to a file, wherein the file corresponds to data blocks and corresponding metadata that are stored separately as logical blocks according to a tree hierarchy, where one or more parent nodes according to the tree hierarchy store one or more reference checksums for one or more child nodes referenced by the one or more parent nodes according to the tree hierarchy;
transmitting a second request to a cloud object store, wherein the second request corresponds to a read operation with respect to at least one cloud storage object stored in the cloud object store that corresponds to a child node according to the tree hierarchy;
responsive to the second request that corresponds to the read operation, receiving a version of the at least one cloud storage object from the cloud object store;
identifying, from metadata that corresponds to a parent node according to the tree hierarchy with respect to the child node that corresponds to the at least one cloud storage object, a reference checksum for the at least one cloud storage object;
consequent to the receiving the version of the at least one cloud storage object, processing the version of the at least one cloud storage object to generate a generated checksum; and
based at least in part on whether the generated checksum matches the reference checksum, generating a response to the first request based at least in part on the version of the at least one cloud storage object or initiating one or more remediation processes.