Method and apparatus for controlling access to a disk array

US10613770B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10613770-B2
Application numberUS-201615384769-A
CountryUS
Kind codeB2
Filing dateDec 20, 2016
Priority dateDec 29, 2015
Publication dateApr 7, 2020
Grant dateApr 7, 2020

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 method and an apparatus for controlling an access to a disk array. The method comprises: receiving a command for writing to a first stripe of the plurality of stripes; and determining a first parity position for the first stripe by searching a mapping table, the mapping table recording a first mapping between the first stripe and the first parity position allocated in the first stripe, the first parity position being arranged in a first disk of the plurality of disks having a minimum wearing level. The embodiments of the present disclosure further disclose a corresponding apparatus. The embodiments of the present disclosure provides a solution for controlling an access to a disk array, which can achieve a dynamic balance of wearing levels among all of the disks in a RAID, thereby making it possible to control or manage a failure order of the disks.

First claim

Opening claim text (preview).

We claim: 1. A method of controlling an access to a disk array, the disk array including a plurality of disks that are divided into a plurality of stripes with same fixed storage capability, the method comprising: receiving a command for writing to a first stripe of the plurality of stripes; and determining a first parity position for the first stripe by searching a mapping table, the mapping table recording a first mapping between the first stripe and the first parity position allocated in the first stripe, the first parity position being arranged in a first disk of the plurality of disks having a minimum wearing level. 2. The method of claim 1 , further comprising: in response to determining that a second stripe of the plurality of stripes is unable to be retrieved in the mapping table, selecting, from the plurality of disks, a second disk with a minimum wearing level among the plurality of disks to arrange a second parity position for the second stripe; and recording a second mapping between the second stripe and the second parity position in the mapping table. 3. The method of claim 2 , further comprising: determining an actual wearing level factor for a third disk of the plurality of disks based on a ratio of an average erase count to a maximum erase count of the third disk; and determining a wearing level factor for the third disk based on the actual wearing level of the third disk. 4. The method of claim 3 , wherein the determining the wearing level factor for the third disk comprises: setting a reference wearing level for the third disk; and determining the wearing level factor for the third disk by adding the reference wearing level and the actual wearing level of the third disk. 5. The method of claim 4 , further comprising: adjusting the reference wearing level for the third disk dynamically. 6. The method of claim 5 , further comprising: adjusting the reference wearing level for the third disk in response to a user request. 7. The method of claim 1 , further comprising: in response to a trigger condition being satisfied, updating the mapping table. 8. The method of claim 7 , wherein the trigger condition comprises at least one of: a time interval exceeds a first threshold since the mapping table is detected to record mappings associated with all of the plurality stripes, a count for input and output requests exceeds a second threshold since the mapping table is detected to record mappings associated with all of the plurality stripes, and traffic of the input and output requests exceeds a third threshold since the mapping table is detected to record mappings associated with all of the plurality stripes. 9. The method of claim 7 , wherein the updating the mapping table comprises: determining a respective wearing level for each of the plurality of disks; updating a third parity position for a third stripe of the plurality of stripes periodically by selecting from the plurality of disks a fourth disk with a minimum wearing level among the plurality of disks to arrange the third parity position; and recording a third mapping between the third stripe and the updated third parity position in the mapping table. 10. The method of claim 9 , wherein the updating the mapping table comprises: updating a fourth parity position for a fourth stripe of the plurality of stripes periodically by exchanging the fourth parity position with a data position; and recording a fourth mapping between the fourth stripe and the updated fourth parity position in the mapping table. 11. The method of claim 1 , wherein each disk of the plurality of disks is a solid state disk (SSD) having a SSD wearing level value which represents an amount remaining life for that SSD; and wherein determining the first parity position for the first stripe includes: from multiple SSDs selected for holding the first stripe, selecting the SSD having the lowest SSD wearing level value to effectuate placement of parity for the first stripe in the SSD furthest from its end of life. 12. An apparatus for controlling an access to a disk array, the disk array including a plurality of disks that are divided into a plurality of stripes with same fixed storage capability, the apparatus comprising: a receiving unit configured to receive a command for writing to a first stripe of the plurality of stripes; and a mapping management unit configured to determine a first parity position for the first stripe by performing a searching operation that searches a mapping table, a result of the searching operation including the mapping table recording a first mapping which defines a relationship between the first stripe and the first parity position allocated in the first stripe, the relationship identifying the first parity position as being arranged in a first disk of the plurality of disks having a minimum wearing level; wherein each disk of the plurality of disks has a respective wearing level identifying an amount of remaining life for that disk, the first disk having the lowest wearing level to indicate that the first disk currently has the longest remaining service life among the other disks of the plurality of disks. 13. The apparatus according to claim 12 , wherein the mapping management unit is further configured to: in response to determining that a second stripe of the plurality of stripes is unable to be retrieved in the mapping table, select, from the plurality of disks, a second disk with a minimum wearing level among the plurality of disks to arrange a second parity position for the second stripe; and record a second mapping between the second stripe and the second parity position in the mapping table. 14. The apparatus according to claim 13 , wherein the mapping management unit is further configured to: determine an actual wearing level factor for a third disk of the plurality of disks based on a ratio of an average erase count to a maximum erase count of the third disk; and determine a current wearing level factor for the third disk based on the actual wearing level of the third disk. 15. The apparatus according to claim 14 , wherein the mapping management unit is further configured to determine the current wearing level factor for the third disk by: setting a reference wearing level for the third disk; and determining the current wearing level factor for the third disk by adding the reference wearing level and the actual wearing level of the third disk. 16. The apparatus according to claim 15 , wherein the mapping management unit is further configured to: adjust the reference wearing level for the third disk dynamically. 17. The apparatus according to claim 16 , wherein the mapping management unit is further configured to: adjust the reference wearing level for the third disk in response to a user request. 18. The apparatus according to claim 12 , wherein the mapping management unit is further configured to: in response to a trigger condition being satisfied, updating the mapping table. 19. The apparatus according to claim 18 , wherein the trigger condition comprises at least one of: a time interval exceeds a first threshold since the mapping table is detected to record mappings associated with all of the plurality stripes, a count for input and output requests exceeds a second threshold since the mapping table is detected to record mappings associated with all of the plurality stripes, and traffic of the input and output requests exceeds a third threshold since the mapping table is detected to record mappings assoc

Assignees

Inventors

Classifications

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

  • at area level, e.g. provisioning of virtual or logical volumes · CPC title

  • by changing the path, e.g. traffic rerouting, path reconfiguration · CPC title

  • G06F3/0616Primary

    in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · CPC title

  • G06F3/0619Primary

    in relation to data integrity, e.g. data losses, bit errors · 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 US10613770B2 cover?
A method and an apparatus for controlling an access to a disk array. The method comprises: receiving a command for writing to a first stripe of the plurality of stripes; and determining a first parity position for the first stripe by searching a mapping table, the mapping table recording a first mapping between the first stripe and the first parity position allocated in the first stripe, the fi…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0616. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 07 2020 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).