Spillover slot
AssigneeEMC Corporation
InventorVadim Longinov
Life of this patent
Estimating the term…
Abstract
Managing a cache memory includes providing at least one spillover slot, stored in the cache memory, that contains information about a plurality of cache data slots transferred from the cache memory to a local disk. The spillover slot has a metadata portion with information about cache data slots transferred from the cache memory to the local disk and has a catalog portion with entries that point to different sections of the metadata portion. Each section of the metadata portion corresponding to information about one of the cache data slots transferred from the cache memory to the local disk.
Claims20
A method of managing a cache memory, comprising:
- providing at least one spillover slot, stored in the cache memory, that contains information about a plurality of cache data slots transferred from the cache memory to a local disk, the spillover slot having a metadata portion with information about cache data slots transferred from the cache memory to the local disk and having a catalog portion with entries that point to different sections of the metadata portion, each section of the metadata portion corresponding to information about one of the cache data slots transferred from the cache memory to the local disk;
- for each of the cache data slots transferred from the cache memory to the local disk, determining a first hash key and a second hash key, wherein the first hash key is calculated based on information related to a source of data in a cache data slot and the second hash key is used as an index to entries of the catalog portion;
- linking information about each of the cache data slots transferred from the cache memory to the local disk to a first hash chain of cache data slots, wherein information about a plurality of cache slots in the same first hash chain produce the same first hash key;
- and
- linking information about each of the cache data slots transferred from the cache memory to the local disk to a second hash chain of different information about one of the cache data slots transferred from the cache memory to the local disk within a single spillover slot, wherein each element in a second hash chain produces the same second hash key.
Computer software, provided in a computer-readable storage medium, that manages a cache memory, the software comprising:
- executable code that provides at least one spillover slot, stored in the cache memory, that contains information about a plurality of cache data slots transferred from the cache memory to a local disk, the spillover slot having a metadata portion with information about cache data slots transferred from the cache memory to the local disk and having a catalog portion with entries that point to different sections of the metadata portion, each section of the metadata portion corresponding to information about one of the cache data slots transferred from the cache memory to the local disk;
- executable code that, for each of the cache data slots transferred from the cache memory to the local disk, determines a first hash key and a second hash key, wherein the first hash key is calculated based on information related to a source of data in a cache data slot and the second hash key is used as an index to entries of the catalog portion;
- executable code that links information about each of the cache data slots transferred from the cache memory to the local disk to a first hash chain of cache data slots, wherein information about a plurality of cache slots in the same first hash chain produce the same first hash key;
- and
- executable code that links information about each of the cache data slots transferred from the cache memory to the local disk to a second hash chain of different information about one of the cache data slots transferred from the cache memory to the local disk within a single spillover slot, wherein each element in a second hash chain produces the same second hash key.
A data storage device, comprising:
- at least one disk drive that contains data;
- at least one host adaptor, coupled to the at least one disk drive, that receives data to be stored on the at least one disk drive;
- at least one cache memory that contains at least one spillover slot with information about a plurality of cache data slots transferred from the cache memory to a local disk, the spillover slot having a metadata portion with information about cache data slots transferred from the cache memory to the local disk and having a catalog portion with entries that point to different sections of the metadata portion, each section of the metadata portion corresponding to information about one of the cache data slots transferred from the cache memory to the local disk;
- and
- computer software, in a computer-readable medium, having executable code that, for each of the cache data slots transferred from the cache memory to the local disk, determines a first hash key and a second hash key, wherein the first hash key is calculated based on information related to a source of data in a cache data slot and the second hash key is used as an index to entries of the catalog portion, executable code that links information about each of the cache data slots transferred from the cache memory to the local disk to a first hash chain of cache data slots that, wherein information about a plurality of cache slots in the same first hash chain produce the same first hash key, and executable code that links information about each of the cache data slots transferred from the cache memory to the local disk to a second hash chain of different information about one of the cache data slots transferred from the cache memory to the local disk within a single spillover slot, wherein each element in a catalog entry second hash chain produces the same second hash key.
Dependencies are inferred from the claim text.