US 12,253,920 B2
Use of cluster-level redundancy within a cluster of a distributed storage management system to address node-level errors
Wei Sun, Boulder, CO (US); Anil Paul Thoppil, Pleasanton, CA (US); and Anne Maria Vasu, Erie, CO (US)
Assigned to NetApp, Inc., San Jose, CA (US)
Filed by NetApp, Inc., San Jose, CA (US)
Filed on Mar. 18, 2024, as Appl. No. 18/608,742.
Application 18/608,742 is a continuation of application No. 17/680,631, filed on Feb. 25, 2022, granted, now 11,934,280.
Claims priority of provisional application 63/279,892, filed on Nov. 16, 2021.
Prior Publication US 2024/0220377 A1, Jul. 4, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 3/06 (2006.01); G06F 11/10 (2006.01); G06F 11/16 (2006.01); G06F 11/30 (2006.01); G06F 16/27 (2019.01)
CPC G06F 11/1662 (2013.01) [G06F 3/0622 (2013.01); G06F 3/064 (2013.01); G06F 3/0679 (2013.01); G06F 11/1088 (2013.01); G06F 11/3034 (2013.01); G06F 16/27 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
managing, by an instance of a distributed data store of a first node of a plurality of nodes of a cluster of a distributed storage system, storage of data blocks as values and corresponding block identifiers (IDs) as keys by implementing a tree in which each branch of a plurality of branches of the tree is associated with a respective range of block IDs;
identifying a missing branch of the plurality of branches; and
recovering one or more missing block IDs within the respective range of block IDs of the missing branch without requiring knowledge of the one or more missing block IDs by for each block ID in the respective range of block IDs of the missing branch:
reading a data block corresponding to the block ID from a second node of the plurality of nodes that maintains redundant information relating to the block ID; and
reinserting the block ID within the KV store by writing the data block to the first node.