Enhancing memory buffering by using secondary storage
US-9026737-B1 · May 5, 2015 · US
US9389807B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9389807-B2 |
| Application number | US-201414162673-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 23, 2014 |
| Priority date | Jan 23, 2014 |
| Publication date | Jul 12, 2016 |
| Grant date | Jul 12, 2016 |
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 storage controller receives hints provided by one or more applications over a period of time, wherein the hints are used by the storage controller for organizing data in storage managed by the storage controller. Data on conflicts caused by the provided hints are collected over the period of time. Based on the collected data on the conflicts, one or more conflict avoidance rules are executed to reduce possibility of future conflicts.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: receiving, by a storage controller, hints provided by one or more applications over a period of time, wherein the hints are used by the storage controller for organizing data in storage managed by the storage controller; collecting data on conflicts caused by the provided hints over the period of time; and based on the collected data on the conflicts, executing one or more conflict avoidance rules to reduce possibility of future conflicts, wherein the method further comprises: reorganizing data, in response to determining that the conflicts exceed a first threshold, and a number of conflicting applications exceeds a second threshold; reducing lease window of data if all the conflicting applications have same priority; and providing higher priority to an application with highest rejection rate. 2. The method of claim 1 , the method further comprising: determining, based on the collected data, that thrashing exceeds a threshold level; in response to determining that the thrashing exceeds the threshold level, disabling hints that correspond to extents that are affected by the thrashing; and using an automated storage management mechanism of the storage management application to manage the selected extents without using the hints corresponding to the selected extents. 3. The method of claim 2 , wherein the hints corresponding to the selected extents are disabled for a predetermined period of time and the hints corresponding to the selected extents are enabled after an expiry of the predetermined period of time. 4. The method of claim 1 , the method further comprising: determining that hint spread is below a first threshold level and that a target tier in which extents with hints are placed has a utilization level that is below a second threshold level; using caching for segments of the extents that have hints indicating that the segments are likely to have relatively high utilization, rather than tiering an entirety of the extents. 5. The method of claim 4 , the method further comprising: placing the segments of the extents that have hints indicating that the segments are likely to have relatively high utilization in the target tier without moving the entirety of the extents to the target tier. 6. The method of claim 5 , the method further comprising: disabling hints of the extents, in response to failure of the caching and a failure of the placing of the segments of the extents in the target tier to increase the utilization level to at least the second threshold level. 7. A storage controller, comprising: a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising: receiving, hints provided by one or more applications over a period of time, wherein the hints are used by the storage controller for organizing data in storage managed by the storage controller; collecting data on conflicts caused by the provided hints over the period of time; and based on the collected data on the conflicts, executing one or more conflict avoidance rules to reduce possibility of future conflicts, the operations further comprising: reorganizing data, in response to determining that the conflicts exceed a first threshold, and a number of conflicting applications exceeds a second threshold; reducing lease window of data if all the conflicting applications have same priority; and providing higher priority to an application with highest rejection rate. 8. The storage controller of claim 7 , the operations further comprising: determining, based on the collected data, that thrashing exceeds a threshold level; in response to determining that the thrashing exceeds the threshold level, disabling hints that correspond to extents that are affected by the thrashing; and using an automated storage management mechanism of the storage management application to manage the selected extents without using the hints corresponding to the selected extents. 9. The storage controller of claim 8 , wherein the hints corresponding to the selected extents are disabled for a predetermined period of time and the hints corresponding to the selected extents are enabled after an expiry of the predetermined period of time. 10. The storage controller of claim 7 , the operations further comprising: determining that hint spread is below a first threshold level and that a target tier in which extents with hints are placed has a utilization level that is below a second threshold level; using caching for segments of the extents that have hints indicating that the segments are likely to have relatively high utilization, rather than tiering an entirety of the extents. 11. The storage controller of claim 10 , the operations further comprising: placing the segments of the extents that have hints indicating that the segments are likely to have relatively high utilization in the target tier without moving the entirety of the extents to the target tier. 12. The storage controller of claim 11 , the operations further comprising: disabling hints of the extents, in response to failure of the caching and a failure of the placing of the segments of the extents in the target tier to increase the utilization level to at least the second threshold level. 13. A computer program product, the computer program product comprising: a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations on a processor, the operations comprising: receiving, by a storage controller, hints provided by one or more applications over a period of time, wherein the hints are used by the storage controller for organizing data in storage managed by the storage controller; collecting data on conflicts caused by the provided hints over the period of time; and based on the collected data on the conflicts, executing one or more conflict avoidance rules to reduce possibility of future conflicts, the operations further comprising: reorganizing data, in response to determining that the conflicts exceed a first threshold, and a number of conflicting applications exceeds a second threshold; reducing lease window of data if all the conflicting applications have same priority; and providing higher priority to an application with highest rejection rate. 14. The computer program product of claim 13 , the operations further comprising: determining, based on the collected data, that thrashing exceeds a threshold level; in response to determining that the thrashing exceeds the threshold level, disabling hints that correspond to extents that are affected by the thrashing; and using an automated storage management mechanism of the storage management application to manage the selected extents without using the hints corresponding to the selected extents. 15. The computer program product of claim 14 , wherein the hints corresponding to the selected extents are disabled for a predetermined period of time and the hints corresponding to the selected extents are enabled after an expiry of the predetermined period of time. 16. The computer program product of claim 13 , the operations further comprising: determining that hint spread is below a first threshold level and that a target tier in which extents with hints are placed has a utilization level that is below a second threshold level; using caching for segments of the extents that have hints indicating that the segments are likely to have relatively high utilization, rather than tiering an entirety
Mapping of cache memory to specific storage devices or parts thereof · CPC title
Allocation or management of cache space · CPC title
Single storage device · CPC title
Monitoring storage devices or systems · CPC title
in a storage system, e.g. in a DASD or network based storage system (drivers for digital recording or reproducing units G06F3/06; circuits for error detection or correction within digital recording or reproducing units G11B20/18; for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS], H04L67/1097) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.