US 12,248,432 B2
Using a storage system to optimize and maintain the metadata associated with a plurality of small files
Apurv Gupta, Bengaluru (IN); and Anirvan Duttagupta, San Jose, CA (US)
Assigned to Cohesity, Inc., San Jose, CA (US)
Filed by Cohesity, Inc., San Jose, CA (US)
Filed on Jul. 21, 2023, as Appl. No. 18/224,979.
Application 18/224,979 is a continuation of application No. 17/174,103, filed on Feb. 11, 2021, granted, now 11,803,513.
Application 17/174,103 is a continuation of application No. 16/426,390, filed on May 30, 2019, granted, now 10,949,384, issued on Mar. 16, 2021.
Claims priority of provisional application 62/693,742, filed on Jul. 3, 2018.
Prior Publication US 2024/0045832 A1, Feb. 8, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 11/14 (2006.01); G06F 11/16 (2006.01); G06F 16/11 (2019.01); G06F 16/90 (2019.01); G06F 16/901 (2019.01); G06F 16/907 (2019.01); G06F 16/908 (2019.01); G06F 16/909 (2019.01); G06F 16/951 (2019.01)
CPC G06F 16/128 (2019.01) [G06F 16/113 (2019.01); G06F 16/9027 (2019.01); G06F 16/907 (2019.01)] 19 Claims
OG exemplary drawing
 
1. A method, comprising:
determining, by a storage system receiving a first content file from a storage device, that a storage size associated with the first content file is less than a threshold size, wherein metadata of the first content file is represented by a first file metadata structure;
in response to the determination that the storage size associated with the first content file is less than the threshold size updating, by the storage system, a combined metadata structure at least by:
determining, by the storage system and from a combined metadata structure reservation node of a tree data structure, an offset range associated with the combined metadata structure;
attempting, by the storage system, to successfully obtain a lock for the combined metadata structure;
in response to successfully obtaining the lock for the combined metadata structure, reserving, by the storage system, the offset range associated with the combined metadata structure; and
combining in the combined metadata structure, the metadata represented by the first file metadata structure with metadata of a second content file, the metadata of the second content file represented by a second file metadata structure, wherein a storage size associated with the second content file is less than the threshold size; and
updating, by the storage system, the tree data structure at least by updating a first reference that references a first root node of the first file metadata structure to reference a first portion of the combined metadata structure corresponding to the first content file and updating a second reference that references a second root node of the second file metadata structure to reference a second portion of the combined metadata structure corresponding to the second content file.