| CPC G06F 16/2282 (2019.01) [G06F 3/0607 (2013.01); G06F 3/061 (2013.01); G06F 3/0619 (2013.01); G06F 3/0632 (2013.01); G06F 3/064 (2013.01); G06F 3/065 (2013.01); G06F 3/0652 (2013.01); G06F 3/0655 (2013.01); G06F 3/0665 (2013.01); G06F 3/0688 (2013.01); G06F 3/0689 (2013.01); G06F 9/4401 (2013.01); G06F 9/4881 (2013.01); G06F 12/0246 (2013.01); G06F 12/0253 (2013.01); G06F 16/211 (2019.01); G06F 16/252 (2019.01); G06F 21/572 (2013.01); G06F 2209/482 (2013.01); G06F 2212/702 (2013.01); G06F 2212/7205 (2013.01)] | 18 Claims |

|
1. A storage system comprising:
a plurality of solid-state storage devices; and
a storage system controller, operatively coupled to and separate from the plurality of solid-state storage devices, the storage system controller comprising a processing device, the processing device configured to:
identify an entry in a data structure based on a directory, the directory indicating an organization of information in the data structure and the entry associated with a set of blocks on the plurality of solid state storage devices;
determine one or more characteristics of the set of data blocks based on the entry;
identify a first entry of the data structure and a second entry of a copy of the data structure, the first entry and the second entry associated with the set of blocks;
generate a new data structure based on the first entry, the second entry, and one or more rules; and
perform a storage operation on the set of blocks based on the one or more characteristics.
|