Method and apparatus to use DRAM as a cache for slow byte-addressible memory for efficient cloud applications
US-12174739-B2 · Dec 24, 2024 · US
US2021286533A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2021286533-A1 |
| Application number | US-202017020016-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 14, 2020 |
| Priority date | Mar 13, 2020 |
| Publication date | Sep 16, 2021 |
| Grant date | — |
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, according to a received request for creating a stripe in a storage system, a type of the stripe; acquiring a first workload distribution corresponding to the determined type, wherein the first workload distribution describes the distribution, among a first number of storage devices, of multiple extents in a set of stripes of this type in the storage system; selecting a set of extents from the first number of storage devices based on the first workload distribution, so that the distribution, among the first number of storage devices, of the selected set of extents and the multiple extents in the set of stripes of this type satisfies a preset distribution condition associated with the type; and using the selected set of extents to create the requested stripe based on a stripe creation rule associated with the type. The stripes can be managed in a more effective manner.
Opening claim text (preview).
1 . A method for managing stripes in a storage system which includes a first number of storage devices, the method comprising: determining, according to a received request for creating a stripe in the storage system, a type of the stripe; acquiring a first workload distribution corresponding to the determined type, wherein the first workload distribution describes the distribution, among the first number of storage devices, of multiple extents in a set of stripes of this type in the storage system; selecting a set of extents from the first number of storage devices based on the first workload distribution, so that the distribution, among the first number of storage devices, of the selected set of extents and the multiple extents in the set of stripes of this type satisfies a preset distribution condition associated with the type; and using the selected set of extents to create the requested stripe based on a stripe creation rule associated with the type. 2 . The method according to claim 1 , wherein acquiring the first workload distribution corresponding to the determined type includes: according to a determination that the storage system does not include a stripe of this type, creating the first workload distribution according to the first number, wherein the first workload distribution indicates that there is no stripe of this type in the first number of storage devices. 3 . The method according to claim 2 , further comprising: determining a set of storage devices in which the selected set of extents are located, respectively; and updating the first workload distribution based on the determined set of storage devices. 4 . The method according to claim 3 , wherein the type of the stripe includes user data which indicates that user data from a user of the storage system will be stored in the stripe; and updating the first workload distribution based on the determined set of storage devices includes: determining corresponding storage capacities of corresponding storage devices in the first number of storage devices; and updating the first workload distribution based on the corresponding storage capacities and the selected set of storage devices. 5 . The method according to claim 4 , wherein updating the first workload distribution based on the corresponding storage capacities and the selected set of storage devices includes: determining corresponding workloads of the corresponding storage devices based on a relation between the corresponding storage capacities and a maximum storage capacity of the first number of storage devices; and updating the first workload distribution based on the determined corresponding workloads. 6 . The method according to claim 1 , further comprising: according to a determination that the number of the storage devices in the storage system is changed from the first number to a second number, acquiring a second workload distribution corresponding to the determined type, wherein the second workload distribution describes the distribution, among the second number of storage devices, of multiple extents in a set of stripes of this type in the storage system; and migrating at least a portion of the extents in the set of stripes based on the second workload distribution. 7 . The method according to claim 6 , wherein migrating the at least a portion of the extents in the set of stripes based on the second workload distribution includes: for a given storage device in the first number of storage devices, determining source extents to be migrated in the first number of storage devices based on storage capacities of the first number of storage devices and storage capacities of the second number of storage devices; selecting destination extents from the second number of storage devices based on the second workload distribution; and migrating data in the source extents to the destination extents. 8 . The method according to claim 7 , wherein the type of the stripe includes user data, and determining source extents to be migrated in the first number of storage devices further includes: determining the number of extents to be migrated in the given storage device based on a relation between a given storage capacity of the given storage device and an extreme storage capacity of the first number of storage devices; and selecting the source extents based on the determined number. 9 . The method according to claim 1 , wherein the type of the stripe includes metadata which indicates that metadata of user data will be stored in the stripe, and the preset distribution condition includes a polling condition; and selecting a set of extents from the first number of storage devices based on the first workload distribution includes: according to the first workload distribution, selecting the set of storage devices from the first number of storage devices in accordance with the polling condition; and selecting the set of extents respectively from the selected set of storage devices. 10 . The method according to claim 1 , further comprising: determining the number of valid storage extents involved in a given storage device in the first number of storage devices based on the first workload distribution. 11 . An electronic device, comprising: at least one processor; and a memory coupled to the at least one processor, wherein the memory has instructions stored therein, the instructions, when executed by the at least one processor, cause the device to perform an action for managing stripes in a storage system that includes a first number of storage devices, and the action includes: determining, according to a received request for creating a stripe in the storage system, a type of the stripe; acquiring a first workload distribution corresponding to the determined type, wherein the first workload distribution describes the distribution, among the first number of storage devices, of multiple extents in a set of stripes of this type in the storage system; selecting a set of extents from the first number of storage devices based on the first workload distribution, so that the distribution, among the first number of storage devices, of the selected set of extents and the multiple extents in the set of stripes of this type satisfies a preset distribution condition associated with the type; and using the selected set of extents to create the requested stripe based on a stripe creation rule associated with the type. 12 . The electronic device according to claim 11 , wherein acquiring the first workload distribution corresponding to the determined type includes: according to a determination that the storage system does not include a stripe of this type, creating the first workload distribution according to the first number, wherein the first workload distribution indicates that there is no stripe of this type in the first number of storage devices. 13 . The electronic device according to claim 12 , wherein the action further includes: determining a set of storage devices in which the selected set of extents are located, respectively; and updating the first workload distribution based on the determined set of storage devices. 14 . The electronic device according to claim 13 , wherein the type of the stripe includes user data which indicates that user data from a user of the storage system will be stored in the stripe; and updating the first workload distribution based on the determined set of storage devices includes: determining corresponding storage capacities of corresponding storage devices in the first number of storage devices; and updating the first workload distribution based on the correspond
Migration mechanisms · CPC title
Management of space entities, e.g. partitions, extents, pools · CPC title
Management of blocks · CPC title
by initialisation or re-initialisation of 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.