Method for moving data extent
US-2019384518-A1 · Dec 19, 2019 · US
US11099761B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11099761-B2 |
| Application number | US-201916249364-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 16, 2019 |
| Priority date | Jan 18, 2018 |
| Publication date | Aug 24, 2021 |
| Grant date | Aug 24, 2021 |
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 expand storage space. Such techniques can create a storage stripe group during a shuffling operation after a storage device being added, without waiting for full completion of the shuffling operation. Such techniques can effectively reduce the waiting time for creating the storage stripe group. Besides, such techniques can support partial mapping of the storage stripe group, such that the storage resources mapped to the storage stripe group can be rapidly utilized.
Opening claim text (preview).
We claim: 1. A method of managing a storage system, the storage system including a plurality of storage devices, the method comprising: receiving a creating request for creating a group of storage stripes of the storage system, the creating request indicating a width of the group of storage stripes to be created; in response to adding a storage device to the storage system, initiating redistribution of data across the plurality of storage devices and the added storage device, the initiating redistribution of data comprising: transferring all data from a first plurality of storage extents on the plurality of storage devices to a second plurality of storage extents on the added storage device, respectively, the first plurality of storage extents having all of its data transferred being referred to herein as a plurality of free storage extents; and performing, before the redistribution of data is completed, acts comprising: initiating creation of the group of storage stripes, the initiating creation comprising: obtaining a first plurality of target storage extents satisfying the width from at least the plurality of free storage extents on the plurality of storage devices; selecting, from the first plurality of target storage extents, a first group of free storage extents on at least different ones of the plurality of storage devices, respectively, the first group of free storage extents having a first number of free storage extents corresponding to the width of the group of storage stripes; and performing partial mapping of free storage extents to the group of storage stripes, the partial mapping comprising: mapping a physical address of the first group of free storage extents to a logical address of a first storage stripe of the group of storage stripes; and mapping the logical address of the first storage stripe to a logical address of the group of storage stripes, a size of accessible storage space in the group of storage stripes corresponding to a size of storage space in the first group of free storage extents; and accessing the storage space in the first group of free storage extents mapped to the first storage stripe of the group of storage stripes. 2. The method of claim 1 , wherein the creating request further indicates a total accessible storage space in the group of storage stripes to be created, and wherein the initiating creation of the group of storage stripes further comprises: determining that the size of accessible storage space is less than the total accessible storage space indicated in the creating request; and in response to determining that the size of accessible storage space is less than the total accessible storage space indicated in the creating request, selecting, from the first plurality of target storage extents, at least a second group of free storage extents on at least different ones of the plurality of storage devices, respectively, the second group of free storage extents having a second number of free storage extents corresponding to the width of the group of storage stripes. 3. The method of claim 2 , wherein the performing partial mapping further comprises: mapping a physical address of the second group of free storage extents to a logical address of a second storage stripe of the group of storage stripes; mapping the logical address of the second storage stripe to the logical address of the group of storage stripes; and updating the size of accessible storage space in the group of storage stripes to a total combined size of (i) the size of storage space in the first group of free storage extents mapped to the first storage stripe of the group of storage stripes and (ii) a size of storage space in the second group of free storage extents mapped to the second storage stripe of the group of storage stripes. 4. The method of claim 3 , further comprising: marking the group of storage stripes as having storage space that is fully accessible. 5. The method of claim 1 , further comprising: obtaining a second plurality of target storage extents from at least the plurality of free storage extents on the plurality of storage devices; in response to the second plurality of target storage extents failing to satisfy the width, waiting for one or more additional storage extents to be released during the redistribution of data; and updating the second plurality of target storage extents using the one or more additional storage extents released by the redistribution of data. 6. The method of claim 1 , wherein the initiating creation of the group of storage stripes further comprises: creating a logical unit related to the group of storage stripes; and outputting information associated with the logical unit for accessing the accessible storage space in the group of storage stripes. 7. The method of claim 1 , further comprising: transmitting, to a volatile drive memory, information indicating the accessible storage space in the group of storage stripes. 8. A device for managing a storage system, comprising: a plurality of storage devices; at least one processing unit; and at least one memory coupled to the at least one processing unit and stored with instructions, the instructions, when executed by the at least one processing unit, performing acts comprising: receiving a creating request for creating a group of storage stripes of the storage system, the creating request indicating a width of the group of storage stripes to be created in response to adding a storage device to the storage system, initiating redistribution of data across the plurality of storage devices and the added storage device, the initiating redistribution of data comprising: transferring all data from a first plurality of storage extents on the plurality of storage devices to a second plurality of storage extents on the added storage device, respectively, the first plurality of storage extents having all of its data transferred being referred to herein as a plurality of free storage extents; and performing, before the redistribution of data is completed, acts comprising: initiating creation of the group of storage stripes, the initiating creation comprising: obtaining a first plurality of target storage extents satisfying the width from at least the plurality of free storage extents on the plurality of storage devices; selecting, from the first plurality of target storage extents, a first group of free storage extents on at least different ones of the plurality of storage devices, respectively, the first group of free storage extents having a first number of free storage extents corresponding to the width of the group of storage stripes; and performing partial mapping of free storage extents to the group of storage stripes, the partial mapping comprising: mapping a physical address of the first group of free storage extents to a logical address of a first storage stripe of the group of storage stripes; and mapping the logical address of the first storage stripe to a logical address of the group of storage stripes, a size of accessible storage space in the group of storage stripes corresponding to a size of storage space in the first group of free storage extents; and accessing the storage space in the first group of free storage extents mapped to the first storage stripe of the group of storage stripes. 9. The device of claim 8 , wherein the creating request further indicates a total accessible storage space in the group of storage stripes to be created, and wherein the initiating creation of the group of storage stripes further comprises: determining that the size of accessible storage space is less than the total accessible storage space indicated in the creating request; and in response to
in relation to response time · CPC title
Management of blocks · CPC title
Parity data used in redundant arrays of independent storages, e.g. in RAID systems · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
Migration mechanisms · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.