Method and apparatus for controlling access to a disk array
First 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.
6 Assignments
0 Petitions
Accused Products
Abstract
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.
29 Citations
23 Claims
-
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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
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. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method of storing data, the method comprising:
-
receiving a write command to write data to a disk array having a plurality of solid state disks (SSDs), each SSD of the plurality of SSDs having a SSD wearing level value which represents an amount remaining life for that SSD, and each SSD of the plurality of SSDs providing multiple storage locations; in response to the write command, performing a mapping operation that accesses a mapping table to select a storage stripe to hold the data, the mapping operation (i) selecting, as the storage stripe, storage locations in a group of SSDs of the plurality of SSDs, and (ii) selecting, based on the SSD wearing level value of each SSD of the group of SSDs, a particular storage location from the storage locations in the group of SSDs, the particular storage location being in the SSD of the group of SSDs having the most remaining life; and writing parity for the data to the particular storage location selected from the storage locations in the group of SSDs and the data to remaining storage locations in the group of SSDs.
-
Specification