PHYSICAL MEDIA AWARE SPACIALLY COUPLED JOURNALING AND REPLAY
First Claim
1. A computer-implemented method, comprising:
- receiving a request to store data to a solid state drive (SSD);
updating a mapping table, the mapping table mapping physical data locations on the SSD to logical addresses;
generating an entry to a journal based at least in part on the request; and
storing, based at least in part on a number of entries stored by the journal, the journal to a predetermined location.
0 Assignments
0 Petitions
Accused Products
Abstract
An indirection mapping data structure can maintain a mapping between logical block addresses used by a host computer and physical data storage locations on a solid state drive. Changes to the indirection mapping data structure can be stored in journals. When a journal is full, the journal can be stored to a predetermined location on the cluster block determined based on the number of entries stored by the journal, leading to a number of journals scattered throughout the cluster block at predetermined locations. Each physical chunk of media, whether written with data or marked as defective is journaled. Such a journaling scheme, where the journal locations are predetermined and each physical chunk of media is journaled is referred to as physical media-aware spatially coupled journaling. During replay the spatially coupled journals can be retrieved from the predefined locations within cluster blocks and used to rebuild the indirection mapping data structure.
3 Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
receiving a request to store data to a solid state drive (SSD); updating a mapping table, the mapping table mapping physical data locations on the SSD to logical addresses; generating an entry to a journal based at least in part on the request; and storing, based at least in part on a number of entries stored by the journal, the journal to a predetermined location. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
at least one processor; and memory including instructions that, when executed by the at least one processor, cause the system to; receive a request to store data to a solid state drive (SSD); update a mapping table, the mapping table mapping physical data locations on the SSD to logical addresses; generate an entry to a journal based at least in part on the request; and store, based at least in part on a number of entries stored by the journal, the journal to a predetermined location. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer-readable storage medium storing instructions that, when executed by at least one processor of a computing device, cause the computing device to:
-
receive a request to store data to a solid state drive (SSD); update a mapping table, the mapping table mapping physical data locations on the SSD to logical addresses; generate an entry to a journal based at least in part on the request; and store, based at least in part on a number of entries stored by the journal, the journal to a predetermined location. - View Dependent Claims (18, 19, 20)
-
Specification