Method, device and computer program product for cache-based index mapping and data access
AssigneeEMC IP Holding Company LLC
InventorsYou Chen, Ao Sun, Yunhai Gong
Life of this patent
Estimating the term…
Abstract
Embodiments for accessing data are provided. A method of accessing data comprises: receiving a request to access first data in a storage device, at least a part of data in the storage device being cached in a cache, and index information of the at least a part of data being recorded in an index structure associated with the cache; querying the index structure to determine whether the first data is cached in the cache; and accessing the first data based on a result of the query. Embodiments of the present disclosure can improve data accessing efficiency while saving memory consumption.
Claims20
A method of accessing data, comprising:
- receiving, by a system comprising a processor, a request to access first data in a storage device, at least a part of data in the storage device being cached in a cache, and index information of at least the part of data being recorded in an index structure associated with the cache, wherein the index structure is not included in the cache and comprises:
- a first identifier data structure that is indicative of a key of a key-value pair architecture, wherein the first identifier data structure identifies a tree structure;
- a second identifier data structure that is indicative of a value of the key-value pair architecture, wherein the second identifier data structure identifies the first data within the tree structure;
- and
- a timestamp data structure that stores timestamp data indicative of a time at which associated data in the cache was last accessed;
- querying the index structure to determine whether the first data is cached in the cache;
- and
- accessing the first data based on a result of the query.
A device for accessing data, comprising:
- at least one processing unit;
- at least one memory comprising a memory that stores an index structure, wherein the at least one memory is coupled to the at least one processing unit and having instructions stored thereon, the instructions, when executed by the at least one processing unit, causing the device to perform acts comprising:
- receiving a request to access first data in a storage device, at least a part of data in the storage device being cached in a cache, and index information of at least the part of data being recorded in the index structure that is separate from and references the cache, the index information comprising:
- a first identifier data structure that is indicative of a key of a key-value pair format, wherein the first identifier data structure identifies a tree structure;
- a second identifier data structure that is indicative of a value of the key-value pair format, wherein the second identifier data structure identifies the first data within the tree structure;
- and
- timestamp data that is indicative of a time at which associated data in the cache was last accessed;
- querying the index structure to determine whether the first data is cached in the cache;
- and
- accessing the first data based on a result of the query.
A computer program product being tangibly stored on a non-transitory computer storage medium and comprising machine-executable instructions which, when executed by a device, cause the device to perform operations, comprising:
- receiving a request to access first data in a storage device, at least a part of data in the storage device being cached in a cache, and index information of the at least a part of data being recorded in an index structure that is separate from and references the cache, wherein the index structure comprises:
- a first identifier data structure that is indicative of a key of a key-value pair arrangement, wherein the first identifier data structure identifies a tree structure;
- a second identifier data structure that is indicative of a value of the key-value pair arrangement, wherein the second identifier data structure identifies the first data within the tree structure;
- and
- a timestamp entry indicative of a time at which associated data in the cache was last accessed;
- querying the index structure to determine whether the first data is cached in the cache;
- and
- accessing the first data based on a result of the query.
Dependencies are inferred from the claim text.