US RE49,998 E1
Metadata updating
Jagadish Kumar Mukku, Sunnyvale, CA (US); and Hector Cuellar, San Jose, CA (US)
Assigned to Innovations in Memory LLC, Dover, DE (US)
Filed by INNOVATIONS IN MEMORY LLC, Dover, DE (US)
Filed on Sep. 17, 2021, as Appl. No. 17/478,336.
Application 17/478,336 is a reissue of application No. 15/000,836, filed on Jan. 19, 2016, granted, now 10,417,213, issued on Sep. 17, 2019.
Claims priority of provisional application 62/106,997, filed on Jan. 23, 2015.
Int. Cl. G06F 16/00 (2019.01); G06F 16/18 (2019.01); G06F 16/23 (2019.01)
CPC G06F 16/23 (2019.01) [G06F 16/1805 (2019.01)] 17 Claims
OG exemplary drawing
 
[ 10. A data storage system, comprising:
a storage media comprising a non-volatile storage device having a communications interface with a management sub-system; and
the management sub-system comprising a plurality of controllers in communication with the storage media, wherein the plurality of controllers are in communications with the storage device and with an external user, wherein:
the management sub-system is configured to maintain metadata in the storage media, the metadata containing relationships between logical block addresses (LBAs) and the location of the LBAs in the storage media and each of the controllers is configured to maintain an image of the metadata identical to the metadata images on the other controllers, the metadata image corresponding to at least current active user access requirements,
a controller of the plurality of controllers is assigned as a master controller,
the master controller is configured to send changed metadata either to each of the controllers or to the storage device,
the master controller is configured to instruct each relevant controller to read metadata from the storage device to perform an update,
the master controller is configured to add the update to a log file and send the log file to each of the other controllers and direct each of the controllers having overlapping storage allocation to update the metadata at each location with the log file if the update to the metadata is in a first logical locality, and
the master controller is configured to send the update to the storage media to update the metadata and direct each of the controllers to retrieve the updated metadata from the storage media if the update to the metadata is in a second logical locality. ]