RECONSTRUCTING AN INDIRECTION TABLE FROM LOGGED MEDIA ADDRESSES
First Claim
Patent Images
1. An apparatus, comprising:
- checkpoint data for an indirection table, wherein the checkpoint data is stored in a solid state media and comprises media addresses for sequential logical addresses of the indirection table;
journal data stored in the solid state media, wherein the journal data identifies changes in the indirection table after creation of the checkpoint data;
metadata summaries stored in the solid state media, wherein the metadata summaries contain error correction data for the checkpoint data and journal data; and
logic circuitry configured to;
read the checkpoint data from the solid state media;
read the journal data from the solid state media;
reconstruct the indirection table by overwriting at least some of the media addresses from the checkpoint data with media addresses from the journal data;
check for errors in the checkpoint data or the journal data; and
use the metadata summaries to recover from the errors in the checkpoint data and/or the errors in the journal data.
1 Assignment
0 Petitions
Accused Products
Abstract
The storage system uses a combination of checkpoint data and journal data to reconstruct an indirection table. The checkpoint data comprises compacted media addresses from the indirection table that are then stored in a relatively few number of media blocks. This allows the media controller to quickly read the compacted checkpoint data from the solid state media. The media controller generates the journal data from logical addresses and associated media addresses for additional write operations received while creating the checkpoint data. The media controller uses metadata when errors are identified in the checkpoint data or journal data.
-
Citations
23 Claims
-
1. An apparatus, comprising:
-
checkpoint data for an indirection table, wherein the checkpoint data is stored in a solid state media and comprises media addresses for sequential logical addresses of the indirection table; journal data stored in the solid state media, wherein the journal data identifies changes in the indirection table after creation of the checkpoint data; metadata summaries stored in the solid state media, wherein the metadata summaries contain error correction data for the checkpoint data and journal data; and logic circuitry configured to; read the checkpoint data from the solid state media; read the journal data from the solid state media; reconstruct the indirection table by overwriting at least some of the media addresses from the checkpoint data with media addresses from the journal data; check for errors in the checkpoint data or the journal data; and use the metadata summaries to recover from the errors in the checkpoint data and/or the errors in the journal data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
identifying a reconstruction condition for an indirection table; reading checkpoint data for the indirection table from a memory, wherein the checkpoint data comprises media addresses for sequential logical addresses of the indirection table; reading journal data from the memory, wherein the journal data identifies changes between different stored versions of the checkpoint data; reconstructing the indirection table by overwriting at least some of the media addresses from the checkpoint data with media addresses from the journal data; checking for errors in the checkpoint data or the journal data; identifying metadata summaries in the memory containing error correction data for the checkpoint data and/or journal data; and using the error correction data in the metadata summaries to recover from the errors in the checkpoint data and/or the errors in the journal data. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. An apparatus, comprising:
-
non-volatile memory configured to store checkpoint data for an indirection table, journal data containing changes in the checkpoint data, and metadata summaries containing error correction data for the checkpoint data and journal data; and a media controller configured to; read the checkpoint data and the journal data from the non-volatile memory into a volatile memory; reconstruct the indirection table by updating at least some of the checkpoint data with the journal data; and use the metadata summaries to recover from errors in the checkpoint data and/or errors in the journal data. - View Dependent Claims (19, 20, 21, 22, 23)
-
Specification