Dynamically adjusting redundancy levels of storage stripes
US-11150991-B2 · Oct 19, 2021 · US
US11520512B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11520512-B2 |
| Application number | US-202016890368-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 2, 2020 |
| Priority date | Oct 31, 2019 |
| Publication date | Dec 6, 2022 |
| Grant date | Dec 6, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques involve determining a first slice distribution used to build first storage units in a first pool; in response to a determination that the first pool is expanded to a second pool, determining, at least based on a sum of the slices having been used to build the first storage units, a second slice distribution of updated slices used to build the first storage units in the second pool; determining, based on the first distribution and the second distribution, a first available number of slices and a second available number of slices available for building second storage units in the second pool, the second storage units being different from the first storage units; and determining, at least based on the first available number and the second available number, the number of the second storage units allowed to be built. Accordingly, available capacity allowed for building can be accurately estimated.
Opening claim text (preview).
We claim: 1. A method for storage management comprising: determining a first distribution of disk slices having been used to build a first set of storage units in a first slice pool, wherein the first slice pool comprises a first plurality of disks, and wherein the first distribution of the disk slices having been used to build the first set of storage units in the first slice pool comprises a distribution, across the disks in the first plurality of disks, of the disk slices in the first slice pool having been used to build the first set of storage units, including: counting a number of the plurality of disks in the first slice pool and a number of disk slices in stripes of the first set of storage units; determining, based on a sum of the disk slices in the first plurality of disks having been used to build the first set of storage units, the number of the first plurality of disks, and the number of the disk slices in the stripes of the first set of storage units, initial positions of the disk slices having been used to build the first set of storage units in the first slice pool; and wherein the first distribution comprises the initial positions; in response to a determination that the first slice pool is expanded to a second slice pool, wherein the second slice pool comprises a second plurality of disks including the first plurality of disks and at least one additional disk, determining, at least based on the sum of the disk slices in each disk of the first plurality of disks having been used to build the first set of storage units, a second distribution of updated disk slices used to build the first set of storage units in the second slice pool, wherein the second distribution of updated disk slices used to build the first set of storage units in the second slice pool comprises a distribution, across the disks in the second plurality of disks, of the disk slices in the second slice pool used to build the first set of storage units, including: counting a number of the second plurality of disks in the second slice pool based on a number of the at least one additional disk and the number of the first plurality of disks in the first slice pool; determining updated positions of the updated disk slices in the second slice pool based on the sum of the disk slices in the first plurality of disks having been used to build the first set of storage units, the number of the second plurality of disks in the second slice pool, and the number of disk slices in the stripes of the first set of storage units; and wherein the second distribution comprises the updated positions; and determining, based on the first distribution and the second distribution, a first available number of disk slices and a second available number of disk slices available for building a second set of storage units in the second slice pool, the second set of storage units being different from the first set of storage units. 2. The method of claim 1 , further comprising: wherein the first available number of disk slices and the second available number of disk slices available for building the second set of storage units in the second slice pool further comprises: determining a reference nominal capacity of a reference disk in disks in the second slice pool; in response to a determination that the reference nominal capacity fails to exceed a threshold capacity, determining an effective nominal capacity for each of the disks as the reference nominal capacity; determining the first available number based on the first distribution and the effective nominal capacity; and determining the second available number based on the second distribution and the effective nominal capacity; and determining, at least based on the first available number and the second available number, the number of the second set of storage units allowed to be built, including: determining a first predicted number of the second set of storage units allowed to be built based on the first available number, a reserved number of reserved disk slices required by the second set of storage units, and a required number of disk slices for building one of the second set of storage units; determining a second predicted number of the second set of storage units allowed to be built based on the second available number, the reserved number, and the required number; and determining the number of the second set of storage units allowed to be built by comparing the first prediction number and the second prediction number. 3. The method of claim 2 , further comprising: in response to a determination that the second prediction number is less than the first prediction number, determining the second prediction number as the number of the second set of storage units allowed to be built. 4. The method of claim 1 , wherein each individual one of the first set of storage units, and each individual one of the second set of storage units, comprises an independent RAID (Redundant Array of Independent Disks) logical storage unit having multiple RAID stripes, a RAID width, and a corresponding set of disk slices from which it is built. 5. An electronic device comprising: at least one processor; and a memory coupled to the at least one processor, the memory having instructions stored therein, the instructions, when executed by the at least one processing unit, causing the device to execute acts, the acts comprising: determining a first distribution of disk slices having been used to build a first set of storage units in a first slice pool, wherein the first slice pool comprises a first plurality of disks, and wherein the first distribution of the disk slices having been used to build the first set of storage units in the first slice pool comprises a distribution, across the disks in the first plurality of disks, of the disk slices in the first slice pool having been used to build the first set of storage units, including: counting a number of the plurality of disks in the first slice pool and a number of disk slices in stripes of the first set of storage units; determining, based on a sum of the disk slices in the first plurality of disks having been used to build the first set of storage units, the number of the first plurality of disks, and the number of the disk slices in the stripes of the first set of storage units, initial positions of the disk slices having been used to build the first set of storage units in the first slice pool; and wherein the first distribution comprises the initial positions; in response to a determination that the first slice pool is expanded to a second slice pool, wherein the second slice pool comprises a second plurality of disks including the first plurality of disks and at least one additional disk, determining, at least based on the sum of the disk slices in each disk of the first plurality of disks having been used to build the first set of storage units, a second distribution of updated disk slices used to build the first set of storage units in the second slice pool, wherein the second distribution of updated disk slices used to build the first set of storage units in the second slice pool comprises a distribution, across the disks in the second plurality of disks, of the disk slices in the second slice pool used to build the first set of storage units, including: counting a number of the second plurality of disks in the second slice pool based on a number of the at least one additional disk and the number of the first plurality of disks in the first slice pool; determining updated positions of the updated disk slices in the second slice pool based on the sum of the disk slices in the first plurality of disks having been used to build the first set of storage units, the number of the second plurality of disks in the second slice pool, and the number of disk slice
Improving or facilitating administration, e.g. storage management · CPC title
by allocating resources to storage systems · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
Saving storage space on storage systems · CPC title
by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.