Indexing architecture for deduplicated cache system of a storage system
First Claim
1. A computer-implemented method for indexing content stored in a cache memory device, the method comprising:
- in response to receiving a first request for caching a first file extent associated with a first file in a cache memory device, generating a first fingerprint based on content of the first file extent;
searching in a fingerprint index based on the first fingerprint to determine whether the first file extent has been stored in the cache memory, wherein fingerprint index includes a plurality of fingerprint entries, each mapping a particular fingerprint to a storage location of the cache memory device in which a corresponding file extent is stored; and
in response to determining that a fingerprint entry matching the first fingerprint is found, associating a first identifier identifying the first file extent and the first file with a storage location of the cache memory device obtained from the matching fingerprint entry, without storing the first file extent in the cache memory device.
9 Assignments
0 Petitions
Accused Products
Abstract
A computer-implemented method for indexing content stored in a cache memory device is disclosed. The method starts with in response to receiving a first request for caching a first file extent associated with a first file in a cache memory device, generating a first fingerprint based on content of the first file extent. Then the method continues with searching in a fingerprint index based on the first fingerprint to determine whether the first file extent has been stored in the cache memory. In response to determining that a fingerprint entry matching the first fingerprint is found, the method then continues with associating a first identifier identifying the first file extent and the first file with a storage location of the cache memory device obtained from the matching fingerprint entry, without storing the first file extent in the cache memory device.
-
Citations
25 Claims
-
1. A computer-implemented method for indexing content stored in a cache memory device, the method comprising:
-
in response to receiving a first request for caching a first file extent associated with a first file in a cache memory device, generating a first fingerprint based on content of the first file extent; searching in a fingerprint index based on the first fingerprint to determine whether the first file extent has been stored in the cache memory, wherein fingerprint index includes a plurality of fingerprint entries, each mapping a particular fingerprint to a storage location of the cache memory device in which a corresponding file extent is stored; and in response to determining that a fingerprint entry matching the first fingerprint is found, associating a first identifier identifying the first file extent and the first file with a storage location of the cache memory device obtained from the matching fingerprint entry, without storing the first file extent in the cache memory device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A storage system, comprising:
-
one or more storage units to store a plurality of files; a cache memory device to cache at least some data blocks of at least some of the files; a file manager executed by a processor to provide an interface to access the plurality of files stored in the one or more storage units; and a cache manager executed by the processor configured to generate a first fingerprint based on content of a first file extent, in response to receiving a first request for caching the first file extent associated with the first file; the cache manager further configured to search in a fingerprint index based on the first fingerprint to determine whether the first file extent has been stored in the cache memory, wherein fingerprint index includes a plurality of fingerprint entries, each mapping a particular fingerprint to a storage location of the cache memory device in which a corresponding file extent is stored; and in response to determining that a fingerprint entry matching the first fingerprint is found, the cache manager further configured to associate a first identifier identifying the first file extent and the first file with a storage location of the cache memory device obtained from the matching fingerprint entry, without storing the first file extent in the cache memory device. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A non-transitory computer-readable storage medium having instructions stored therein, which when executed by a processor, cause the processor to perform a method for indexing content stored in a cache memory device, the method comprising:
-
in response to receiving a first request for caching a first file extent associated with a first file in a cache memory device, generating a first fingerprint based on content of the first file extent; searching in a fingerprint index based on the first fingerprint to determine whether the first file extent has been stored in the cache memory, wherein fingerprint index includes a plurality of fingerprint entries, each mapping a particular fingerprint to a storage location of the cache memory device in which a corresponding file extent is stored; and in response to determining that a fingerprint entry matching the first fingerprint is found, associating a first identifier identifying the first file extent and the first file with a storage location of the cache memory device obtained from the matching fingerprint entry, without storing the first file extent in the cache memory device. - View Dependent Claims (22, 23, 24, 25)
-
Specification