Method and system to perform caching based on file-level heuristics
First Claim
1. A method comprising:
- receiving file-level information of input/output (I/O) access of data stored in a storage medium, wherein the file-level information comprises at least one of file deletion, file copying, file opening, file reading, file size, file type, and file movement information; and
caching or evicting the data stored in the storage medium into a caching device based at least on the received file-level information.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system to perform caching based at least on one or more file-level heuristics. The caching of a storage medium in a caching device is performed by a cache policy engine. The cache policy engine receives file-level information of input/output access of data of the storage medium and caches or evicts the data of the storage medium in the caching device based on the received file-level information. By utilizing information about the files and file operations associated with the disk sectors or logical block addresses of the storage medium, the cache policy engine can make a better decision on the data selection of the storage medium to be cached in or evicted from the caching device in one embodiment of the invention. Higher cache hit rates can be achieved and the performance of the system utilizing the cache policy engine is improved.
-
Citations
36 Claims
-
1. A method comprising:
-
receiving file-level information of input/output (I/O) access of data stored in a storage medium, wherein the file-level information comprises at least one of file deletion, file copying, file opening, file reading, file size, file type, and file movement information; and caching or evicting the data stored in the storage medium into a caching device based at least on the received file-level information. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving file-level information of input/output (I/O) access of data stored in a storage medium; and caching or evicting the data stored in the storage medium into a caching device based at least on the received file-level information, wherein caching or evicting the data stored in the storage medium into the caching device comprises caching the data when a file type or a file extension of the data belongs to an inclusion list and no caching of the data, or evicting the data when the file type of the data belongs to an exclusion list. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a storage medium to store data; a NAND flash memory to cache the data of the storage medium; and a cache policy engine to cache or evict the data of the storage medium in the NAND flash memory based at least on one or more file-level heuristics associated with the data, wherein the one or more file-level heuristics comprises no caching, evicting, reducing a priority, or increasing an age of the data when a size of a file associated with the data is larger than a threshold. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. An apparatus comprising:
a cache policy engine to cache or evict data stored in a storage medium into NAND flash memory based at least on one or more file-level heuristics associated with the data, wherein the file-level heuristics comprise at least one of file deletion, file copying, file opening, file reading, file size, file type, and file movement information. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
-
30. A computer readable storage medium having instructions stored thereon which, when executed, cause a processor to perform the following method:
-
receiving file-level information of input/output (I/O) access of data stored in a storage medium, wherein the file-level information comprises at least one of file deletion, file copying, file opening, file reading, file size, file type, and file movement information; and caching or evicting the data stored in the storage medium into a caching device based at least on the received file-level information. - View Dependent Claims (31, 32, 33, 34, 35, 36)
-
Specification