Flexible expansion of data storage capacity
US-11461023-B1 · Oct 4, 2022 · US
US11907552B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11907552-B2 |
| Application number | US-202217890338-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 18, 2022 |
| Priority date | Jan 21, 2022 |
| Publication date | Feb 20, 2024 |
| Grant date | Feb 20, 2024 |
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 for extending a storage system having a first pool involve adding, in response to a request, second storage devices, wherein the first pool is generated using first storage devices and based on a first standard. The first pool includes first stripes created using the first standard, and the number of the second storage devices equals a first stripe width associated with the first standard. Such techniques further involve creating a second pool using the second storage devices and based on a second standard, wherein a second stripe width associated with the second standard equals the first stripe width. Such techniques further involve creating second stripes in the second pool using the second storage devices and based on the second standard. Such techniques further involve storing data of at least one of the first stripes to a corresponding stripe of the second stripes according to a data shuffle rule.
Opening claim text (preview).
The invention claimed is: 1. A method for extending a storage system, comprising: adding, in response to receiving a request to extend the storage system comprising a first storage resource pool, a second plurality of storage devices to the storage system, wherein the first storage resource pool is generated using a first plurality of storage devices and based on a first storage array standard, the first storage resource pool comprises a first plurality of stripes created using the first storage array standard, and the number of the second plurality of storage devices is equal to a first stripe width associated with the first storage array standard; creating a second storage resource pool using the second plurality of storage devices and based on a second storage array standard, wherein a second stripe width associated with the second storage array standard is equal to the first stripe width; creating a second plurality of stripes in the second storage resource pool using the second plurality of storage devices and based on the second storage array standard; and storing data of at least one stripe of the first plurality of stripes to a corresponding stripe of the second plurality of stripes according to a data shuffle rule. 2. The method according to claim 1 , further comprising: identifying, in response to determining that the data in the at least one stripe has been stored, corresponding storage space in the first storage resource pool as available storage space in the storage system. 3. The method according to claim 2 , further comprising: releasing the data in the at least one stripe in response to determining that the corresponding storage space is identified as available storage space. 4. The method according to claim 1 , wherein the first storage array standard and the second storage array standard comprise a standard based on a redundant array of independent disks (RAID), and the second storage array standard is determined based on the number of the second plurality of storage devices. 5. The method according to claim 1 , wherein storing data of at least one stripe of the first plurality of stripes to a corresponding stripe of the second plurality of stripes comprises: determining, based on the first storage array standard, a first plurality of extents of at least one stripe of the first plurality of stripes, wherein the number of the first plurality of extents is equal to the number of the first plurality of storage devices; determining, based on the second storage array standard, a second plurality of extents of at least one stripe of the second plurality of stripes, wherein the number of the second plurality of extents is equal to the number of the second plurality of storage devices; and storing data of the first plurality of extents to the second plurality of extents according to the data shuffle rule. 6. The method according to claim 1 , wherein the data shuffle rule comprises: determining a third plurality of stripes among the first plurality of stripes, wherein the number of the third plurality of stripes is half the number of the first plurality of stripes; and storing data in the third plurality of stripes to a corresponding stripe in the second plurality of stripes. 7. The method according to claim 6 , wherein determining the third plurality of stripes comprises: selecting, among all stripes, a plurality of stripes in odd-numbered rows, and determining the selected plurality of stripes as the third plurality of stripes; or selecting, among all stripes, a plurality of stripes in even-numbered rows, and determining the selected plurality of stripes as the third plurality of stripes. 8. An electronic device, comprising: a processor; and a memory coupled to the processor, wherein the memory has instructions stored therein, and the instructions, when executed by the processor, cause the device to execute actions comprising: adding, in response to receiving a request to extend the storage system comprising a first storage resource pool, a second plurality of storage devices to the storage system, wherein the first storage resource pool is generated using a first plurality of storage devices and based on a first storage array standard, the first storage resource pool comprises a first plurality of stripes created using the first storage array standard, and the number of the second plurality of storage devices is equal to a first stripe width associated with the first storage array standard; creating a second storage resource pool using the second plurality of storage devices and based on a second storage array standard, wherein a second stripe width associated with the second storage array standard is equal to the first stripe width; creating a second plurality of stripes in the second storage resource pool using the second plurality of storage devices and based on the second storage array standard; and storing data of at least one stripe of the first plurality of stripes to a corresponding stripe of the second plurality of stripes according to a data shuffle rule. 9. The electronic device according to claim 8 , wherein the actions further comprise: identifying, in response to determining that the data in the at least one stripe has been stored, corresponding storage space in the first storage resource pool as available storage space in the storage system. 10. The electronic device according to claim 9 , wherein the actions further comprise: releasing the data in the at least one stripe in response to determining that the corresponding storage space is identified as available storage space. 11. The electronic device according to claim 8 , wherein the first storage array standard and the second storage array standard comprise a standard based on a redundant array of independent disks (RAID), and the second storage array standard is determined based on the number of the second plurality of storage devices. 12. The electronic device according to claim 8 , wherein storing data of at least one stripe of the first plurality of stripes to a corresponding stripe of the second plurality of stripes comprises: determining, based on the first storage array standard, a first plurality of extents of at least one stripe of the first plurality of stripes, wherein the number of the first plurality of extents is equal to the number of the first plurality of storage devices; determining, based on the second storage array standard, a second plurality of extents of at least one stripe of the second plurality of stripes, wherein the number of the second plurality of extents is equal to the number of the second plurality of storage devices; and storing data of the first plurality of extents to the second plurality of extents according to the data shuffle rule. 13. The electronic device according to claim 8 , wherein the data shuffle rule comprises: determining a third plurality of stripes among the first plurality of stripes, wherein the number of the third plurality of stripes is half the number of the first plurality of stripes; and storing data in the third plurality of stripes to a corresponding stripe in the second plurality of stripes. 14. The electronic device according to claim 13 , wherein determining the third plurality of stripes comprises: selecting, among all stripes, a plurality of stripes in odd-numbered rows, and determining the selected plurality of stripes as the third plurality of stripes; or selecting, among all stripes, a plurality of stripes in even-numbered rows, and determining the selected plurality of stripes as the third plurality of stripes. 15. An apparatus for ex
by allocating resources to storage systems · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device · CPC title
Management of space entities, e.g. partitions, extents, pools · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.