Method, device and computer readable storage media for rebuilding redundant array of independent disks

US10922177B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10922177-B2
Application numberUS-201815955082-A
CountryUS
Kind codeB2
Filing dateApr 17, 2018
Priority dateApr 17, 2017
Publication dateFeb 16, 2021
Grant dateFeb 16, 2021

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.

Embodiments of the present disclosure relate to method, device and computer readable storage media for rebuilding redundant array of independent disks (RAID). The method comprises: in response to detecting at least one fault disk in the RAID, adding a new disk to the RAID for rebuilding; determining, according to a mapping table, a first set of storage blocks marked as “free” in the at least one fault disk, the mapping table indicating usage state of storage space in the RAID; and writing a predetermined value into a second set of storage blocks corresponding to the first group of storage blocks in the new disk.

First claim

Opening claim text (preview).

We claim: 1. A method of rebuilding a redundant array of independent disks (RAID), the method comprising: in response to detecting at least one fault disk in the RAID, adding a new disk to the RAID for rebuilding; determining, from a mapping table, a first set of storage blocks marked as “free” in the at least one fault disk, the mapping table indicating usage state of storage space in the RAID; and writing a predetermined value into a second set of storage blocks corresponding to the first set of storage blocks in the new disk, wherein the mapping table indicates usage state of storage blocks in the RAID, the storage blocks corresponding to logic storage slices in a mapping logic unit, and wherein the method further comprises: in response to the mapping logic unit receiving a write request, (i) allocating a new slice from a slice pool and (ii) sending a first indication to a RAID controller that controls the RAID, the first indication identifying the new slice; in response to the RAID controller receiving the first indication, marking as used in the mapping table a block that corresponds to the new slice; sending, by the RAID controller to the mapping logic unit, a second indication that the new slice is available; and in response to the mapping logic unit receiving the second indication, marking the new slice as available in the mapping logic unit. 2. The method of claim 1 , further comprising: reading, from fault-free disks in the RAID, data associated with a third set of storage blocks in the fault disk, which are marked as “used” in the mapping table; determining, based on the read data, redundant data corresponding to the third set of storage blocks; and writing the redundant data into a fourth set of storage blocks corresponding to the third set of storage blocks in the new disk. 3. The method of claim 1 , further comprising updating the mapping table, the updating comprising: in response to receiving from the mapping logic unit a third indication of a logic storage slice to be released in the mapping logic unit, marking the storage block corresponding to the logic storage slice to be released as “free” in the mapping table. 4. The method of claim 3 , the updating further comprising: sending to the mapping logic unit a fourth indication indicating that the storage block corresponding to the logic storage slice to be released has been marked as “released” in the mapping table. 5. The method of claim 1 , wherein disks in the RAID are hard disk drives. 6. The method of claim 1 , further comprising: receiving, by the RAID controller of the RAID from the mapping logic unit, a third indication that identifies a particular slice to be released from the mapping logic unit; in response to the RAID controller receiving the third indication, marking as free in the mapping table a block that corresponds to the particular slice; sending, by the RAID controller to the mapping logic unit, a fourth indication that the block that corresponds to the particular slice has been released; and in response to the mapping logic unit receiving the fourth indication, marking the particular slice as released in the mapping logic unit. 7. A storage system comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions executed by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the storage system to perform actions, the actions comprising: in response to detecting at least one fault disk in a redundant array of independent disks (RAID), a RAID controller adding a new disk to the RAID for rebuilding; the RAID controller determining, from a mapping table, a first set of storage blocks marked as “free” in the at least one fault disk, the mapping table indicating usage state of storage space in the RAID; and the RAID controller writing a predetermined value into a second set of storage blocks corresponding to the first set of storage blocks in the new disk, wherein the mapping table indicates usage state of storage blocks in the RAID, the storage blocks corresponding to logic storage slices in a mapping logic unit, and wherein the actions further comprise: in response to the mapping logic unit receiving a write request, (i) allocating a new slice from a slice pool and (ii) sending a first indication to the RAID controller that controls the RAID, the first indication identifying the new slice, the RAID controller and the mapping logic unit running in the storage system; in response to the RAID controller receiving the first indication, marking as used in the mapping table a block that corresponds to the new slice; sending, by the RAID controller to the mapping logic unit, a second indication that the new slice is available; and in response to the mapping logic unit receiving the second indication, marking the new slice as available in the mapping logic unit. 8. The storage system of claim 7 , the actions further comprising: reading, from fault-free disks in the RAID, data associated with a third set of storage blocks in the fault disk, which are marked as “used” in the mapping table; determining, based on the read data, redundant data corresponding to the third set of storage blocks; and writing the redundant data into a fourth set of storage blocks corresponding to the third set of storage blocks in the new disk. 9. The storage system of claim 7 , the actions further comprising updating the mapping table, and the updating comprising: in response to receiving from the mapping logic unit a third indication indicating a logic storage slice to be released in the mapping logic unit, marking the storage block corresponding to the logic storage slice to be released as “free” in the mapping table. 10. The storage system of claim 9 , wherein the updating further comprises: sending to the mapping logic unit a fourth indication indicating that the storage block corresponding to the logic storage slice to be released has been marked as “released” in the mapping table. 11. The storage system of claim 7 , wherein disks in the RAID are hard disk drives. 12. A computer program product for rebuilding a redundant array of independent disks (RAID), the computer program product comprising: a non-transitory computer readable medium encoded with computer executable code, the code configured to enable the execution of: in response to detecting at least one fault disk in the RAID, adding a new disk to the RAID for rebuilding; determining, from a mapping table, a first set of storage blocks marked as “free” in the at least one fault disk, the mapping table indicating usage state of storage space in the RAID; and writing a predetermined value into a second set of storage blocks corresponding to the first set of storage blocks in the new disk, wherein the mapping table indicates usage state of storage blocks in the RAID, the storage blocks corresponding to logic storage slices in a mapping logic unit, and wherein the code is further configured to enable the execution of: receiving, by a RAID controller of the RAID from the mapping logic unit, a third indication that identifies a particular slice to be released from the mapping logic unit; in response to the RAID controller receiving the third indication, marking as free in the mapping table a block that corresponds to the particular slice; sending, by the RAID controller to the mapping logic unit, a fourth indication that the block that corresponds to the particular slice has been released; and in response to the mapping logic unit receiving the fourth indication, marking the particular slice as

Assignees

Inventors

Classifications

  • Parity data used in redundant arrays of independent storages, e.g. in RAID systems · CPC title

  • Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title

  • Solving problems relating to consistency · CPC title

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

  • Rebuilding, e.g. when physically replacing a failing disk · 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 US10922177B2 cover?
Embodiments of the present disclosure relate to method, device and computer readable storage media for rebuilding redundant array of independent disks (RAID). The method comprises: in response to detecting at least one fault disk in the RAID, adding a new disk to the RAID for rebuilding; determining, according to a mapping table, a first set of storage blocks marked as “free” in the at least on…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/1076. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 16 2021 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 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).