Rekeying information on storage devices using a proactive copy service
US-2021124504-A1 · Apr 29, 2021 · US
US12271610B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12271610-B2 |
| Application number | US-202318227037-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 27, 2023 |
| Priority date | Jan 18, 2023 |
| Publication date | Apr 8, 2025 |
| Grant date | Apr 8, 2025 |
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 data storage involve selecting a target Redundant Array of Independent Disks (RAID) from a plurality of RAIDs in a storage resource pool. Such techniques further involve determining a local neighbor matrix of the target RAID based on the target RAID, wherein the local neighbor matrix indicates distribution of a plurality of storage extents of a plurality of RAID extents of the target RAID on the storage resource pool. Such techniques further involve performing a resource reallocating operation on the storage resource pool based on the local neighbor matrix. Accordingly, a local neighbor matrix can be calculated at the granularity of an individual RAID, and the local neighbor matrix can be applied to balance a local neighboring relationship, so as to ensure overall balance of the neighbor matrix of the entire storage resource pool and improve IO performance.
Opening claim text (preview).
The invention claimed is: 1. A method for data storage, comprising: selecting a target Redundant Array of Independent Disks (RAID) from a plurality of RAIDs in a storage resource pool; determining a local neighbor matrix of the target RAID based on the target RAID, wherein the local neighbor matrix indicates distribution of a plurality of storage extents of a plurality of RAID extents of the target RAID on the storage resource pool; and performing a resource reallocating operation on the storage resource pool based on the local neighbor matrix; wherein determining a local neighbor matrix of the target RAID based on the target RAID comprises: determining an iteration step size based on a width of the storage resource pool and a width of the RAID extent; determining, for the target RAID, a set comprising a plurality of RAID extent groups, wherein the number of RAID extents in each RAID extent group of the plurality of RAID extent groups is equal to the iteration step size; and traversing the set to determine the local neighbor matrix. 2. The method according to claim 1 , wherein performing a resource reallocating operation on the storage resource pool based on the local neighbor matrix comprises: determining whether the target RAID has local congestion based on the local neighbor matrix; and shuffling, in response to a determination that the target RAID has local congestion, the storage resource pool to optimize the distribution. 3. The method according to claim 2 , wherein the set is a first set, and determining whether the target RAID has local congestion based on the local neighbor matrix comprises: determining, for the target RAID, a second set comprising a plurality of RAID extent groups, wherein the number of RAID extents in each of the plurality of RAID extent groups of the second set is an integral multiple of the iteration step size; traversing the second set to determine the local neighbor matrix; and determining, based on the local neighbor matrix, whether the target RAID has local congestion. 4. The method according to claim 2 , wherein performing a data shuffling operation on the storage resource pool in response to a determination that the target RAID has local congestion comprises: optimizing the local neighbor matrix to improve uniformity of the distribution; and shuffling the storage resource pool based on the optimized local neighbor matrix. 5. The method according to claim 4 , further comprising: determining a global neighbor matrix with the local neighbor matrix as an initial value, wherein the global neighbor matrix indicates distribution of storage extents of RAID extents of all RAIDs in the storage resource pool on the storage resource pool; and updating the global neighbor matrix based on the optimized local neighbor matrix. 6. The method according to claim 5 , wherein the target RAID extent is a first RAID extent, the local neighbor matrix is a first local neighbor matrix, and the method further comprises: selecting a second RAID from the plurality of RAID of the storage resource pool, wherein the number of RAID extents of the second RAID is less than that of the first RAID; determining a second local neighbor matrix based on the second RAID; determine, based on the second local neighbor matrix, whether the second RAID has local congestion; optimizing the second local neighbor matrix in response to a determination that the second RAID has local congestion; shuffling the shuffled storage resource pool based on the optimized second local neighbor matrix; and updating the global neighbor matrix based on the optimized second local neighbor matrix. 7. The method according to claim 6 , wherein shuffling the shuffled storage resource pool based on the optimized second local neighbor matrix comprises: shuffling an unoptimized RAID extent; and shuffling an optimized RAID extent in response to that the unoptimized RAID extent does not exist. 8. The method according to claim 6 , further comprising: determining whether the second RAID is the last RAID in the storage resource pool; determining, in response to a determination that the second RAID is the last RAID in the storage resource pool, the global neighbor matrix based on the shuffled storage resource pool; and selecting, in response to that the second RAID is not the last RAID in the storage resource pool, a third RAID in the storage resource pool, wherein the number of RAID extents of the third RAID is less than that of the second RAID. 9. The method according to claim 1 , wherein selecting the target RAID from a plurality of RAIDs of the storage resource pool comprises: acquiring the number of RAID extents for each RAID in the storage resource pool; and determining a RAID with the largest number among the plurality of RAID as the target RAID. 10. An electronic device, comprising: a processor; and a memory coupled to the processor, wherein the memory has instructions stored therein which, when executed by the processor, cause the device to perform actions comprising: selecting a target Redundant Array of Independent Disks (RAID) from a plurality of RAIDs in a storage resource pool; determining a local neighbor matrix of the target RAID based on the target RAID, wherein the local neighbor matrix indicates distribution of a plurality of storage extents of a plurality of RAID extents of the target RAID on the storage resource pool; and performing a resource reallocating operation on the storage resource pool based on the local neighbor matrix; wherein determining a local neighbor matrix of the target RAID based on the target RAID comprises: determining an iteration step size based on a width of the storage resource pool and a width of the RAID extent; determining, for the target RAID, a set comprising a plurality of RAID extent groups, wherein the number of RAID extents in each RAID extent group of the plurality of RAID extent groups is equal to the iteration step size; and traversing the set to determine the local neighbor matrix. 11. The electronic device according to claim 10 , wherein performing a resource reallocating operation on the storage resource pool based on the local neighbor matrix comprises: determining whether the target RAID has local congestion based on the local neighbor matrix; and shuffling, in response to a determination that the target RAID has local congestion, the storage resource pool to optimize the distribution. 12. The electronic device according to claim 11 , wherein the set is a first set, and determining whether the target RAID has local congestion based on the local neighbor matrix comprises: determining, for the target RAID, a second set comprising a plurality of RAID extent groups, wherein the number of RAID extents in each of the plurality of RAID extent groups of the second set is an integral multiple of the iteration step size; traversing the second set to determine the local neighbor matrix; and determining, based on the local neighbor matrix, whether the target RAID has local congestion. 13. The electronic device according to claim 11 , wherein performing a data shuffling operation on the storage resource pool in response to a determination that the target RAID has local congestion comprises: optimizing the local neighbor matrix to improve uniformity of the distribution; and shuffling the storage resource pool based on the optimized local neighbor matrix. 14. The electronic device according to claim 13 , wherein the actions further comprise: determining a global neighbor matrix with the local neighbor matrix as an initial value, wherein the global
Disk arrays, e.g. RAID, JBOD · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
by allocating resources to storage systems · CPC title
Point-in-time backing up or restoration of persistent data · CPC title
Parity calculation or recalculation after configuration or reconfiguration of the system · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.