Systems and methods for a file-level cache
AssigneeLongitude Enterprise Flash S.A.R.L.
InventorsVikram Joshi, Yang Luan, Michael F. Brown, Hrishikesh A. Vidwans
Life of this patent
Estimating the term…
Abstract
A multi-level cache comprises a plurality of cache levels, each configured to cache I/O request data pertaining to I/O requests of a different respective type and/or granularity. The multi-level cache may comprise a file-level cache that is configured to cache I/O request data at a file-level of granularity. A file-level cache policy may comprise file selection criteria to distinguish cacheable files from non-cacheable files. The file-level cache may monitor I/O requests within a storage stage, and may service I/O requests from a cache device.
Claims22
A method for caching input/output (I/O) request data using a non-volatile cache, the method comprising:
- monitoring I/O requests on an operating system operating on a computing device;
- applying file selection criteria to the monitored I/O requests to identify an I/O request pertaining to a cacheable file;
- and
- servicing the identified I/O request using a non-volatile cache in response to the cacheable file satisfying the file selection criteria.
A system for caching input/output (I/O) request data using a non-volatile cache, comprising:
- an I/O request monitor to monitor I/O requests within a storage stack;
- a non-volatile cache;
- and
- a cache management system configured to apply file selection criteria to the monitored I/O requests to identify I/O requests that pertain to cacheable files,
- wherein the cache management system services the identified I/O requests using the non-volatile cache.
A computer-readable storage medium comprising computer-readable instructions configured to cause a computing device to cache input/output (I/O) request data on a non-volatile cache, the method comprising:
- monitoring I/O requests within a virtual machine;
- applying file selection criteria to the monitored I/O requests to identify I/O requests pertaining to cacheable files;
- and
- servicing the identified I/O requests using a non-volatile cache operating in the host for the virtual machine, wherein servicing an identified I/O request comprises accessing cache metadata that associates a source identifier of the I/O request with a respective cache address of the non-volatile cache.
Dependencies are inferred from the claim text.