Avoiding storage device overlap in raid extent sub group and keeping relationship balance on mapped raid system and method
AssigneeEMC IP Holding Company LLC
InventorsGeng Han, Ilya Usvyatsky, Jian Gao, Jamin Kang, Jibing Dong, Hongpo Gao
Life of this patent
Estimating the term…
Abstract
A method, computer program product, and computer system for adding, by a computing device, a plurality of disks in an extent pool to an available disk list. It may be determined, for a Mapped RAID group, that each RAID extent in a sub group has not been allocated. At least one RAID extent in the sub group may be allocated based upon, at least in part, determining that each RAID extent in a sub group has not been allocated.
Claims9
A computer-implemented method comprising:
- adding, by a computing device, a plurality of disks in an extent pool to an available disk list;
- determining, for a Mapped RAID group, that each RAID extent in a sub group has not been allocated;
- sorting the disk list in the extent pool by free disk extent count;
- determining whether a disk extent in the available disk list is a first disk extent allocated for the at least one RAID extent;
- selecting whichever disk from the available disk list that has a most freed disk extent as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is the first disk extent allocated for the at least one RAID extent;
- selecting whichever disk from the available disk list that has a minimum score in a neighborhood matrix as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is not the first disk extent allocated for the at least one RAID extent, wherein the neighborhood matrix indicates how many times a disk extent from a respective disk is combined with a disk extent from another disk in a RAID extent;
- and
- allocating at least one RAID extent in the sub group based upon, at least in part, determining that each RAID extent in a sub group has not been allocated.
A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising:
- adding a plurality of disks in an extent pool to an available disk list;
- determining, for a Mapped RAID group, that each RAID extent in a sub group has not been allocated;
- sorting the disk list in the extent pool by free disk extent count;
- determining whether a disk extent in the available disk list is a first disk extent allocated for the at least one RAID extent;
- selecting whichever disk from the available disk list that has a most freed disk extent as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is the first disk extent allocated for the at least one RAID extent;
- selecting whichever disk from the available disk list that has a minimum score in a neighborhood matrix as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is not the first disk extent allocated for the at least one RAID extent, wherein the neighborhood matrix indicates how many times a disk extent from a respective disk is combined with a disk extent from another disk in a RAID extent;
- and
- allocating at least one RAID extent in the sub group based upon, at least in part, determining that each RAID extent in a sub group has not been allocated.
A computing system including one or more processors and one or more memories configured to perform operations comprising:
- adding a plurality of disks in an extent pool to an available disk list;
- determining, for a Mapped RAID group, that each RAID extent in a sub group has not been allocated;
- sorting the disk list in the extent pool by free disk extent count;
- determining whether a disk extent in the available disk list is a first disk extent allocated for the at least one RAID extent;
- selecting whichever disk from the available disk list that has a most freed disk extent as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is the first disk extent allocated for the at least one RAID extent;
- selecting whichever disk front the available disk list that has a minimum score in a neighborhood matrix as a candidate disk for allocation to the at least one RAID extent if the disk extent in the available disk list is not the first disk extent allocated for the at least one RAID extent, wherein the neighborhood matrix indicates how many times a disk extent from a respective disk is combined with a disk extent from another disk in a RAID extent;
- and
- allocating at least one RAID extent in the sub group based upon, at least in part, determining that each RAID extent in a sub group has not been allocated.
Dependencies are inferred from the claim text.