Prioritizing Garbage Collection and Block Allocation Based on I/O History for Logical Address Regions
US-2015347296-A1 · Dec 3, 2015 · US
US2016124673A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016124673-A1 |
| Application number | US-201514857856-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 18, 2015 |
| Priority date | Oct 31, 2014 |
| Publication date | May 5, 2016 |
| 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.
A method for allocating cache for a disk array includes monitoring an I/O distribution of the disk array in a predetermined time period, determining a garbage collection state of the disk array, the garbage collection state allows the disk array to perform a garbage collection and prevents the disk array to perform the garbage collection, and determining an allocation of the cache based on the I/O distribution and the garbage collection state.
Opening claim text (preview).
What is claimed is: 1 . A method for allocating cache for a disk array, the method comprising: monitoring an I/O distribution of the disk array in a predetermined time period; determining a garbage collection state of the disk array, the garbage collection state allows the disk array to perform a garbage collection and prevents the disk array to perform the garbage collection; and determining an allocation of the cache based on the I/O distribution and the garbage collection state. 2 . The method according to claim 1 , wherein determining the garbage collection state of the disk array comprises: determining the garbage collection state of the disk array based on the I/O distribution of the disk array, an I/O distribution of other disk arrays or a garbage collection state of other disk arrays. 3 . The method according to claim 2 , wherein determining the garbage collection state of the disk array comprises: preventing, by the garbage collection state, the disk array to perform the garbage collection in response to the I/O distribution of the disk array being in one of the following states: the I/O distribution of the disk array is in a busy state and the I/O distribution of a number larger than a first threshold of other disk arrays is also in the busy state; the I/O distribution of the disk array is in the busy state, the I/O distribution of a number larger than the first threshold of other disk arrays is in a free state, and a number larger than a second threshold of other disk arrays are performing the garbage collection; or the I/O distribution of the disk array is in a free state and a number larger than a third threshold of other disk arrays are performing the garbage collection. 4 . The method according to claim 2 , wherein determining the garbage collection state of the disk array comprises: allowing, by the garbage collection state, the disk array to perform the garbage collection in response to the I/O distribution of the disk array being in one of the following states: the I/O distribution of the disk array is in a busy state, the I/O distribution of a number larger than a first threshold of other disk arrays is in a free state, and a number larger than a second threshold of other disk arrays are not performing the garbage collection; or the I/O distribution of the disk array is in a free state and a number larger than a third threshold of other disk arrays are not performing the garbage collection. 5 . The method according to claim 1 , wherein the determining the garbage collection state of the disk array comprises: determining whether to allow the disk array to perform the garbage collection based on a garbage collection level of the disk array. 6 . The method according to claim 1 , wherein determining the allocation of the cache based on the I/O distribution and the garbage collection state comprises: allocating a largest cache for the disk array in response to the I/O distribution of the disk array being in a busy state and allowing the garbage collection. 7 . The method according to claim 1 , wherein determining the allocation of the cache based on the I/O distribution and the garbage collection state comprises: allocating a smallest cache for the disk array in response to the I/O distribution of the disk array being in a free state and preventing the garbage collection. 8 . The method according to claim 1 , further comprising: receiving a garbage collection request signal; inquiring the garbage collection state; allowing the disk array to perform the garbage collection, in response to the garbage collection state; sending a garbage collection confirmation signal; obtaining the cache to be allocated; and allocating the obtained cache to the disk array. 9 . The method according to claim 8 , further comprising: preventing the disk array to perform the garbage collection, in response to the garbage collection state; sending a garbage collection delay signal; and writing a data of the cache to be cleared into other disk arrays. 10 . The method according to claim 9 , wherein writing the data of the cache to be cleared into other disk arrays comprises: sending the garbage collection confirmation signal; obtaining the cache to be allocated; and allocating the obtained cache to the disk array. 11 . The method according to claim 9 , further comprising: writing the data in the allocated cache into the disk array in response to the garbage collection being finished. 12 . A computer system for allocating cache for a disk array, the computer system comprising: one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, wherein the computer system further comprises: an I/O distribution monitor configured to monitor I/O distribution of the disk array in a predetermined time period; a garbage collection state determiner configured to determine garbage collection state of the disk array, the garbage collection state including allowing the disk array to perform garbage collection and preventing the disk array to perform garbage collection; and a cache allocation controller configured to determine allocation of the cache based on the I/O distribution and the garbage collection state. 13 . The computer system according to claim 12 , wherein the garbage collection state determiner is further configured to determine the garbage collection state of the disk array based on the I/O distribution of the disk array, an I/O distribution of other disk arrays or a garbage collection state of other disk arrays. 14 . The computer system according to claim 13 , wherein the garbage collection state determiner is further configured in a way such that the garbage collection state prevents the disk array to perform the garbage collection in response to the I/O distribution of the disk array being in one of the following states: the I/O distribution of the disk array is in a busy state and the I/O distribution of a number larger than a first threshold of other disk arrays is also in the busy state; the I/O distribution of the disk array is in the busy state, the I/O distribution of a number larger than the first threshold of other disk arrays is in a free state, and a number larger than a second threshold of other disk arrays are performing the garbage collection; or the I/O distribution of the disk array is in a free state and a number larger than a third threshold of other disk arrays are performing the garbage collection. 15 . The computer system according to claim 13 , wherein the garbage collection state determiner is further configured in a way such that the garbage collection state is allowing the disk array to perform the garbage collection in response to the I/O distribution of the disk array being in one of the following states: the I/O distribution of the disk array is in a busy state, the I/O distribution of a number larger than a first threshold of other disk arrays is in a free state, and a number larger than a second threshold of other disk arrays are not performing the garbage collection; or the I/O distribution of the disk array is in a free state and a number larger than a third threshold of other disk arrays are not performing the garbage collection. 16 . The computer system according to claim 12 , wherein the garbage collection state determiner is further configured to d
Cleaning, compaction, garbage collection, erase control · CPC title
in block erasable memory, e.g. flash memory · CPC title
by allocating resources to storage systems · CPC title
Monitoring storage devices or systems · CPC title
Plurality of storage devices · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.