Patent ID: 11934656
Assignee: NETAPP, INC.
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 18:
19. A non-transitory machine readable medium comprising instructions, which when executed by a machine, causes the machine to:
generate, by instances of a slice service hosted at each worker node of a distributed storage architecture of distributed storage managed by the worker nodes, probabilistic structures used to indicate block identifiers of in-use blocks of the distributed storage that are used by the worker nodes to store data;
manage, by instances of a block service hosted at each worker node, bins composed of one or more blocks of the distributed storage managed by the worker node;
perform, by a garbage collection process hosted through the block service at each worker node, garbage collection rounds to free unused blocks within subsets of the bins, wherein an instance of the garbage collection process at a worker node performs the garbage collection rounds by comparing the probabilistic structures, received from instances of the slice service at the worker nodes, to block identifiers within a subset of a bin to identify and free unused blocks within the subset of the bin, wherein the unused blocks correspond to block identifiers not indicated by the probabilistic structures; and
dynamically setting, by a garbage collection management service, a rate of performing the garbage collection rounds and a size of the subset of the bin to process based upon heuristics corresponding to at least one of an amount of fullness of the distributed storage, a time elapsed since initialization of the garbage collection process, or an amount of unused blocks being freed.