Memory-efficient processing of RAID metadata bitmaps

US11494103B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11494103-B2
Application numberUS-201916530121-A
CountryUS
Kind codeB2
Filing dateAug 2, 2019
Priority dateAug 2, 2019
Publication dateNov 8, 2022
Grant dateNov 8, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A storage system comprises a plurality of storage nodes each comprising one or more storage devices and a processor coupled to a memory. The storage system is configured to store data blocks across the storage devices of the storage nodes utilizing a redundant array of independent disks (RAID) arrangement. At least a given one of the storage nodes is configured to store a plurality of RAID metadata bitmaps in persistent storage of the storage node so as to be available for a recovery operation in the event of a detected failure, to identify a particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation, and to temporarily store the identified subset of the RAID metadata bitmaps in the memory of the storage node in a manner determined based at least in part on an operation type of the additional operation.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising: a storage system comprising a plurality of storage nodes each comprising one or more storage devices; each of the storage nodes further comprising a processor coupled to a memory; wherein the storage system is configured to store data blocks across the storage devices of the storage nodes utilizing a redundant array of independent disks (RAID) arrangement; at least a given one of the storage nodes being configured: to store a plurality of RAID metadata bitmaps in persistent storage of the given storage node so as to be available for a recovery operation associated with a detected failure; to identify a particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation; and to temporarily store the identified subset of the RAID metadata bitmaps in the memory of the given storage node in a manner determined based at least in part on an operation type of the additional operation; wherein one or more other subsets of the RAID metadata bitmaps, different than the identified subset, are not stored in the memory of the given storage node but remain stored in the persistent storage of the given storage node; and wherein identifying the particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation comprises: detecting a write cache emptying operation; determining particular RAID stripes to be written as part of the write cache emptying operation; selecting one or more of the particular RAID stripes; and identifying the particular subset of the RAID metadata bitmaps as one or more of the RAID metadata bitmaps associated with the selected one or more RAID stripes. 2. The apparatus of claim 1 wherein the RAID arrangement includes parity information supporting at least one recovery option for reconstructing the data blocks of at least one of the storage devices responsive to a failure of that storage device. 3. The apparatus of claim 1 wherein each of the storage nodes further comprises a set of processing modules configured to communicate over one or more networks with corresponding sets of processing modules on other ones of the storage nodes. 4. The apparatus of claim 3 wherein the sets of processing modules comprise respective servers that collectively implement at least a portion of a distributed storage controller of the storage system. 5. The apparatus of claim 3 wherein the sets of processing modules of the storage nodes each comprise at least one data module and at least one control module. 6. The apparatus of claim 1 wherein the given storage node in reading data blocks from its one or more storage devices is further configured to read the data blocks from at least one designated RAID stripe. 7. The apparatus of claim 1 wherein different ones of the RAID metadata bitmaps indicate at least free or taken status for different subsets of the data blocks stored across the storage devices of the storage nodes, and wherein a given one of the RAID metadata bitmaps comprises a plurality of entries for respective ones of its associated data blocks with each such entry indicating which of a plurality of possible states applies to a corresponding data block wherein the possible states include at least a free state and a taken state. 8. The apparatus of claim 7 wherein the possible states further comprise at least one additional state including a not parity state. 9. The apparatus of claim 1 wherein selecting one or more of the RAID stripes comprises selecting the one or more RAID stripes based at least in part on amounts of free data blocks in respective ones of the RAID stripes. 10. The apparatus of claim 1 wherein the given storage node is further configured: to select particular ones of a plurality of RAID stripes to be rebuilt in a rebuild operation; and to read one or more of the RAID metadata bitmaps associated with the selected RAID stripes into the memory; and to perform corresponding portions of the rebuild operation; to write the RAID metadata bitmaps to the persistent storage; to repeat the selecting, reading, performing and writing until the rebuild operation is complete. 11. The apparatus of claim 1 wherein the given storage node is further configured: to delay verification of at least one of the RAID metadata bitmaps in conjunction with a read operation; and to perform the verification of said at least one of the RAID metadata bitmaps in conjunction with a subsequent writing thereof. 12. The apparatus of claim 1 wherein the given storage node is further configured: to identify a subset of the data blocks to be read in conjunction with a reconstruction operation to correct data block degradations; and to launch multiple reads of respective RAID metadata bitmaps in parallel with performing reads of the identified subset of data blocks. 13. An apparatus, comprising: a storage system comprising a plurality of storage nodes each comprising one or more storage devices; each of the storage nodes further comprising a processor coupled to a memory; wherein the storage system is configured to store data blocks across the storage devices of the storage nodes utilizing a redundant array of independent disks (RAID) arrangement; at least a given one of the storage nodes being configured: to store a plurality of RAID metadata bitmaps in persistent storage of the given storage node so as to be available for a recovery operation associated with a detected failure; to identify a particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation; and to temporarily store the identified subset of the RAID metadata bitmaps in the memory of the given storage node in a manner determined based at least in part on an operation type of the additional operation; and wherein identifying the particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation comprises: detecting an operation that involves decrementing reference counts of a subset of the data blocks to zero; and identifying the particular subset of the RAID metadata bitmaps as one or more of the RAID metadata bitmaps associated with the operation that involves decrementing reference counts of a subset of the data blocks to zero. 14. A method comprising: configuring a storage system to include a plurality of storage nodes each comprising one or more storage devices, each of the storage nodes further comprising a processor coupled to a memory; storing data blocks across the storage devices of the storage nodes utilizing a redundant array of independent disks (RAID) arrangement; and for at least a given one of the storage nodes: storing a plurality of RAID metadata bitmaps in persistent storage of the given storage node so as to be available for a recovery operation associated with a detected failure; identifying a particular subset of the RAID metadata bitmaps to be updated in conjunction with an additional operation other than the recovery operation; and temporarily storing the identified subset of the RAID metadata bitmaps in the memory of the given storage node in a manner determined based at least in part on an operation type of the additional operation; wherein one or more other subsets of the RAID metadata bitmaps, different than the identified subset, are not stored in the memory of the given storage node but remain stored in the persistent storage of the given storage node; and wherein identifying th

Assignees

Inventors

Classifications

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • G06F11/108Primary

    Parity data distribution in semiconductor storages, e.g. in SSD · CPC title

  • Improving or facilitating administration, e.g. storage management · CPC title

  • Reconstruction on already foreseen single or plurality of spare disks · CPC title

  • G06F3/0644Primary

    Management of space entities, e.g. partitions, extents, pools · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11494103B2 cover?
A storage system comprises a plurality of storage nodes each comprising one or more storage devices and a processor coupled to a memory. The storage system is configured to store data blocks across the storage devices of the storage nodes utilizing a redundant array of independent disks (RAID) arrangement. At least a given one of the storage nodes is configured to store a plurality of RAID meta…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/108. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 08 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).