Cache eviction based on types of data stored in storage systems

US9569367B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9569367-B1
Application numberUS-201414196308-A
CountryUS
Kind codeB1
Filing dateMar 4, 2014
Priority dateMar 4, 2014
Publication dateFeb 14, 2017
Grant dateFeb 14, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Exemplary methods for improving cache utilization include in response to receiving a request to store data, storing the data in one of a plurality of cache slots of a cache. In one embodiment, the methods further include after storing the data, setting a status of the cache slot as write pending to indicate that the cache slot contains data which needs to be written to a corresponding destination storage device. The methods include determining an eviction type of the cached data based on whether the destination storage device is a local storage device or a remote storage device. In one embodiment, after copying data from the cache slot to the corresponding destination storage device, marking the cache slot with the determined eviction type. In response to receiving another request to store data, evicting at least one of the cache slots based on the eviction type.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for improving cache utilization, the method comprising: in response to receiving a request to store data, storing the data in one of a plurality of cache slots of a cache; after storing the data, setting a status of the cache slot as write pending (WP) to indicate that the cache slot contains data which needs to be written to a corresponding destination storage device; determining an eviction type of the cached data based on whether the destination storage device is a local storage device or a remote storage device, wherein the eviction type includes one of a normal eviction type and an immediate eviction type, and the eviction type is determined to be an immediate eviction type if the destination storage device is a remote storage device; after copying data from the cache slot to the corresponding destination storage device, marking the cache slot with the determined eviction type; and in response to receiving another request to store data, evicting at least one of the cache slots according to an eviction schedule determined based on the corresponding eviction type, wherein a cache slot with the immediate type is evicted prior to a cache slot with the normal eviction type. 2. The method of claim 1 , wherein a cache slot marked with immediate eviction is freed for reuse after a shorter duration of time than a cache slot marked with a normal eviction. 3. The method of claim 2 , wherein marking a cache slot for normal eviction comprises setting a timestamp of the cache slot with a time of when the data is stored in the cache slot. 4. The method of claim 3 , wherein marking a cache slot for immediate eviction comprises setting a timestamp of the cache slot with a value of zero. 5. The method of claim 1 , further comprising: after copying data from the cache slot to the destination storage device, clearing the status of the cache slot to indicate that the cache slot no longer contains data which needs to be written to the corresponding destination storage device. 6. The method of claim 1 , wherein evicting the at least one of the cache slots comprises: determining a set of one or more non-WP cache slots; and determining, from the determined set of one or more non-WP cache slots, a cache slot with a timestamp that contains a smallest value; and evicting the non-WP cache slot with the timestamp that contains the smallest value. 7. A non-transitory computer-readable medium having computer instructions stored therein, which when executed by a processor, cause the processor to perform operations comprising: in response to receiving a request to store data, storing the data in one of a plurality of cache slots of a cache; after storing the data, setting a status of the cache slot as write pending (WP) to indicate that the cache slot contains data which needs to be written to a corresponding destination storage device; determining an eviction type of the cached data based on whether the destination storage device is a local storage device or a remote storage device, wherein the eviction type includes one of a normal eviction type and an immediate eviction type, and the eviction type is determined to be an immediate eviction type if the destination storage device is a remote storage device; after copying data from the cache slot to the corresponding destination storage device, marking the cache slot with the determined eviction type; and in response to receiving another request to store data, evicting at least one of the cache slots according to an eviction schedule determined based on the corresponding eviction type, wherein a cache slot with the immediate type is evicted prior to a cache slot with the normal eviction type. 8. The non-transitory computer-readable medium of claim 7 , wherein a cache slot marked with immediate eviction is freed for reuse after a shorter duration of time than a cache slot marked with a normal eviction. 9. The non-transitory computer-readable medium of claim 8 , wherein marking a cache slot for normal eviction comprises setting a timestamp of the cache slot with a time of when the data is stored in the cache slot. 10. The non-transitory computer-readable medium of claim 9 , wherein marking a cache slot for immediate eviction comprises setting a timestamp of the cache slot with a value of zero. 11. The non-transitory computer-readable medium of claim 7 , further comprising: after copying data from the cache slot to the destination storage device, clearing the status of the cache slot to indicate that the cache slot no longer contains data which needs to be written to the corresponding destination storage device. 12. The non-transitory computer-readable medium of claim 7 , wherein evicting the at least one of the cache slots comprises: determining a set of one or more non-WP cache slots; and determining, from the determined set of one or more non-WP cache slots, a cache slot with a timestamp that contains a smallest value; and evicting the non-WP cache slot with the timestamp that contains the smallest value. 13. A data processing system, comprising: a processor; and a memory to store instructions, which when executed from the memory, cause the processor to in response to receiving a request to store data, store the data in one of a plurality of cache slots of a cache, after storing the data, set a status of the cache slot as write pending (WP) to indicate that the cache slot contains data which needs to be written to a corresponding destination storage device, determine an eviction type of the cached data based on whether the destination storage device is a local storage device or a remote storage device, wherein the eviction type includes one of a normal eviction type and an immediate eviction type, and the eviction type is determined to be an immediate eviction type if the destination storage device is a remote storage device, after copying data from the cache slot to the corresponding destination storage device, mark the cache slot with the determined eviction type, and in response to receiving another request to store data, evict at least one of the cache slots according to an eviction schedule determined based on the corresponding eviction type, wherein a cache slot with the immediate type is evicted prior to a cache slot with the normal eviction type. 14. The data processing system of claim 13 , wherein a cache slot marked with immediate eviction is freed for reuse after a shorter duration of time than a cache slot marked with a normal eviction. 15. The data processing system of claim 14 , wherein marking a cache slot for normal eviction comprises setting a timestamp of the cache slot with a time of when the data is stored in the cache slot. 16. The data processing system of claim 15 , wherein marking a cache slot for immediate eviction comprises setting a timestamp of the cache slot with a value of zero. 17. The data processing system of claim 13 , wherein the processor is further configured to: after copying data from the cache slot to the destination storage device, clear the status of the cache slot to indicate that the cache slot no longer contains data which needs to be written to the corresponding destination storage device. 18. The data processing system of claim 13 , wherein evicting the at least one of the cache slots comprises: determining a set of one or more non-WP cache slots; and determining, from the determined set of one or more non-WP cache slots, a cache slot with a timestamp that contains a smallest value; and evicting the non

Assignees

Inventors

Classifications

  • Management of the data involved in backup or backup restore · CPC title

  • with special data handling, e.g. priority of data or instructions, handling errors or pinning · CPC title

  • Backup scheduling policy · CPC title

  • with main memory updating (G06F12/0806 takes precedence) · CPC title

  • Data transfer between cache memory and other subsystems, e.g. storage devices or host systems · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9569367B1 cover?
Exemplary methods for improving cache utilization include in response to receiving a request to store data, storing the data in one of a plurality of cache slots of a cache. In one embodiment, the methods further include after storing the data, setting a status of the cache slot as write pending to indicate that the cache slot contains data which needs to be written to a corresponding destinati…
Who is the assignee on this patent?
Emc Corp, Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F12/123. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 14 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).