Systems and methods for rebuilding a cache index
US-10331561-B1 · Jun 25, 2019 · US
US11971825B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11971825-B2 |
| Application number | US-202217864579-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 14, 2022 |
| Priority date | Jul 14, 2022 |
| Publication date | Apr 30, 2024 |
| Grant date | Apr 30, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques are provided for managing metadata of a storage system. A storage control system manages a storage metadata structure which comprises metadata items for accessing data items in a storage system comprising a persistent write cache and a primary storage. The storage metadata structure comprises a first metadata structure that is configured to organize metadata items received from the write cache at a first granularity, and a second metadata structure that is configured to organize metadata items received from the first metadata structure at a second granularity, wherein the second granularity is greater than the first granularity. The storage control system utilizes the storage metadata structure to access data items in the persistent write cache and the primary storage.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: managing, by a storage control system, a storage metadata structure which comprises metadata items for accessing data items in a storage system comprising a persistent write cache and a primary storage, wherein the storage metadata structure comprises a first metadata structure that is configured to organize metadata items, which are associated with data items written to the persistent write cache, at a first granularity, and a second metadata structure that is configured to organize metadata items received from the first metadata structure at a second granularity, wherein the second granularity is greater than the first granularity; performing, by the storage control system, a merge operation to merge a plurality of metadata items of the first metadata structure into a merged set of metadata items having at least one metadata item which has the second granularity for insertion into the second metadata structure, and at least one remaining metadata item which has a granularity less than the second granularity; inserting, by the storage control system, the merged set of metadata items into the second metadata structure; inserting, by the storage control system, the at least one remaining metadata item into at least one designated segment of the first metadata structure for temporarily storing the at least one remaining metadata item for a subsequent merge operation; and utilizing, by the storage control system, the storage metadata structure to access data items in at least one of the persistent write cache and the primary storage. 2. The method of claim 1 , wherein: the first granularity corresponds to a first allocation unit size of the persistent write cache, wherein each metadata item with the first granularity references a data item having the first allocation unit size; and the second granularity corresponds to a second allocation unit size of the primary storage, which is greater than the first allocation unit size of the persistent write cache, wherein each metadata item with the second granularity references a data item with the second allocation unit size. 3. The method of claim 1 , wherein the first metadata structure comprises a log-structured merge tree data structure, and the second metadata structure comprises a B+ tree data structure. 4. The method of claim 1 , wherein: the first metadata structure comprises a log-structured merge tree data structure comprising a plurality of levels; each level of the log-structured merge tree data structure comprises a plurality of segments which are configured to store metadata items in a sorted order; and a last level of the log-structured merge tree data structure comprises the at least one designated segment of the first metadata structure which is configured to receive and store metadata items at the first granularity, which are included in segments of the last level of the log-structured merge tree data structure, and which cannot be merged into the second metadata structure. 5. The method of claim 4 , wherein managing the storage metadata structure comprises: writing, by the storage control system, a first metadata item with the first granularity into a first level of the log-structured merge tree data structure, wherein the first metadata item references a first data item in the persistent write cache; writing, by the storage control system, the first data item in the persistent write cache into a second data item in the primary storage, wherein the second data item overwrites the first data item; and writing, the storage control system, a second metadata item with the second granularity into the first level of the log-structured merge tree data structure, wherein the second metadata item references the second data item which overwrites the first data item. 6. The method of claim 5 , wherein managing the storage metadata structure further comprises: performing, by the storage control system, a merge operation to aggregate metadata items of each segment of a group of segments in the last level of the log-structured merge tree data structure, for insertion of the aggregated metadata items into the second metadata structure, wherein a given segment of the group of segments comprises the first metadata item; determining whether the second metadata item is included in a segment of the group of segments; and one of (i) inserting, by the storage control system, the first metadata item into the at least one designated segment, in response to determining that the second metadata item is not included in a segment of the group of segments, and (ii) deleting, by the storage control system, the first metadata item, in response to determining that the second metadata item, which overwrites the first metadata item, is included in a segment of the group of segments. 7. The method of claim 6 , wherein managing the storage metadata structure further comprises: determining, by the storage control system, whether a third metadata item with the first granularity, which is present in the at least one designated segment, has a key value that matches a key value of a newer metadata item in the group of segments; and deleting, by the storage control system, the third metadata item from the at least one designated segment, in response to determining that the newer metadata item with the matching key value is present in the group of segments. 8. The method of claim 1 , further comprising: receiving, by the storage control system, a read request for a target data item; searching, by the storage control system, the storage metadata structure to find a target metadata item which references the target data item; and utilizing, by the storage control system, the target metadata item to access the target data item from one of the persistent write cache and the primary storage. 9. An article of manufacture comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code is executable by one or more processors to implement a method which comprises: managing, by a storage control system, a storage metadata structure which comprises metadata items for accessing data items in a storage system comprising a persistent write cache and primary storage, wherein the storage metadata structure comprises a first metadata structure that is configured to organize metadata items, which are associated with data items written to the persistent write cache, at a first granularity, and a second metadata structure that is configured to organize metadata items received from the first metadata structure at a second granularity, wherein the second granularity is greater than the first granularity; performing, by the storage control system, a merge operation to merge a plurality of metadata items of the first metadata structure into a merged set of metadata items having at least one metadata item which has the second granularity for insertion into the second metadata structure, and at least one remaining metadata item which has a granularity less than the second granularity; inserting, by the storage control system, the merged set of metadata items into the second metadata structure; inserting, by the storage control system, the at least one remaining metadata item into at least one designated segment of the first metadata structure for temporarily storing the at least one remaining metadata item for a subsequent merge operation; and utilizing, by the storage control system, the storage metadata structure to access data items in at least one of the persistent write cache and the primary storage. 10. The article of manufacture of claim 9 , wherein: the first
Data transfer between cache memory and other subsystems, e.g. storage devices or host systems · CPC title
with multilevel cache hierarchies · CPC title
Metadata, control data · CPC title
In storage device · CPC title
Networked environment · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.