Method and system of disk access pattern selection for content based storage RAID system
US-10691354-B1 · Jun 23, 2020 · US
US11263080B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11263080-B2 |
| Application number | US-201916445990-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 19, 2019 |
| Priority date | Jul 20, 2018 |
| Publication date | Mar 1, 2022 |
| Grant date | Mar 1, 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 manage a cache. Such techniques involve creating a primary cache by a cache management module in a storage system. Such techniques further involve: in response to the primary cache being created, sending a first request to a hardware management module to obtain first information about a first virtual disk. Such techniques further involve: in response to receiving the first information from the hardware management module, creating a secondary cache using the first virtual disk. Such techniques further involve: in response to an available capacity of the primary cache being below a predetermined threshold, flushing at least one cache page in the primary cache to the secondary cache. In certain techniques, it is possible to use spare extents in the disk array to create the secondary cache to increase a total capacity of the cache in the system, thereby improving the access performance of the system.
Opening claim text (preview).
We claim: 1. A method of managing a cache, comprising: creating a primary cache by a cache management module in a storage system; in response to the primary cache being created, sending a first request to a hardware management module in the storage system to obtain first information about a first virtual disk in the storage system, wherein the storage system comprises at least one physical disk having a plurality of extents, the plurality of extents comprise a first group of extents for creating a first disk array, and the first virtual disk is created by the hardware management module based on at least one spare extent from the first group of extents, the at least one spare extent from the first group of extents being reserved for rebuilding the first disk array; in response to receiving the first information from the hardware management module, creating a secondary cache using the first virtual disk; and in response to an available capacity of the primary cache being below a predetermined threshold, flushing at least one cache page in the primary cache to the secondary cache. 2. The method according to claim 1 , wherein the primary cache is a read-write cache, and the secondary cache is a read-only cache. 3. The method according to claim 1 , further comprising: in response to receiving, from the hardware management module, a second request to remove the first virtual disk from the secondary cache to rebuild the first disk array with the at least one spare extent, removing the first virtual disk from the secondary cache. 4. The method according to claim 1 , wherein the first information includes at least one of an identifier and a capacity of the first virtual disk. 5. The method according to claim 2 , further comprising: in response to receiving, from an application, a third request to write first data to the storage system, determining whether a first cache page for caching data in an address to which the first data is to be written is present in the primary cache; and in response to determining that the first cache page is present in the primary cache, writing the first data to the first cache page. 6. The method according to claim 5 , further comprising: in response to determining that the first cache page is absent from the primary cache, determining whether a second cache page for caching data in an address to which the first data is to be written is present in the secondary cache; and in response to determining that the second cache page is absent from the secondary cache, writing the first data into the at least one physical disk. 7. The method according to claim 6 , further comprising: in response to determining that the second cache page is present in the secondary cache, invalidating the second cache page; allocating, in the primary cache, a third cache page for caching data in the address to which the first data is to be written; and writing the first data into the third cache page. 8. The method according to claim 2 , wherein flushing the at least one cache page in the primary cache to the secondary cache comprises: in response to the available capacity of the primary cache being below the predetermined threshold, determining, from the primary cache, the at least one cache page that does not need to be flushed to the at least one physical disk; and flushing the at least one cache page to the secondary cache. 9. The method according to claim 1 , further comprising: in response to the secondary cache being created and second information about a second virtual disk in the storage system being received from the hardware management module, extending the secondary cache using the second virtual disk, wherein the plurality of extents further comprise a second group of extents for creating a second disk array, and the second virtual disk is created by the hardware management module based on at least one spare extent from the second group of extents, the at least one spare extent from the second group of extents being reserved for rebuilding the second disk array. 10. The method according to claim 1 , further comprising: in response to the secondary cache being created and third information about a third virtual disk in the storage system being received from the hardware management module, extending the secondary cache using the third virtual disk, wherein the plurality of extents further comprise a third group of extents for extending the first disk array, and the third virtual disk is created by the hardware management module based on at least one spare extent from the third group of extents, the at least one spare extent from the third group of extents being reserved for rebuilding the extended first disk array. 11. The method according to claim 1 , further comprising: in response to receiving, from the hardware management module, an indication that the first virtual disk fails, removing the first virtual disk from the secondary cache. 12. An apparatus for managing a cache, comprising: at least one processing unit; at least one memory, the at least one memory being coupled to the at least one processing unit and has instructions stored thereon and executed by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the device to perform acts, the acts comprising: creating a primary cache in a storage system; in response to the primary cache being created, sending a first request to a hardware management module in the storage system to obtain first information about a first virtual disk in the storage system, wherein the storage system comprises at least one physical disk having a plurality of extents, the plurality of extents comprise a first group of extents for creating a first disk array, and the first virtual disk is created by the hardware management module based on at least one spare extent from the first group of extents, the at least one spare extent from the first group of extents being reserved for rebuilding the first disk array; in response to receiving the first information from the hardware management module, creating a secondary cache using the first virtual disk; and in response to an available capacity of the primary cache being below a predetermined threshold, flushing at least one cache page in the primary cache to the secondary cache. 13. The apparatus according to claim 12 , wherein the primary cache is a read-write cache, and the secondary cache is a read-only cache. 14. The apparatus according to claim 12 , wherein the acts further comprise: in response to receiving, from the hardware management module, a second request to remove the first virtual disk from the secondary cache to rebuild the first disk array with the at least one spare extent, removing the first virtual disk from the secondary cache. 15. The apparatus according to claim 12 , wherein the first information includes at least one of an identifier and a capacity of the first virtual disk. 16. The apparatus according to claim 13 , wherein the acts further comprise: in response to receiving, from an application, a third request to write first data to the storage system, determining whether the a first cache page for caching data in an address to which the first data is to be written is present in the primary cache; and in response to determining that the first cache page is present in the primary cache, writing the first data to the first cache page. 17. The apparatus according to claim 16 , wherein the acts further comprise: in response to determining that the first cache page is absent
Disk arrays, e.g. RAID, JBOD · CPC title
Space efficiency improvement · CPC title
Improving I/O performance · CPC title
with two or more cache hierarchy levels (with multilevel cache hierarchies G06F12/0811) · CPC title
at device level, e.g. emulation of a storage device or system · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.