Systems, methods, and interfaces for adaptive cache persistence
First Claim
1. A method, comprising:
- identifying input/output (I/O) requests that pertain to a file associated with a backing store;
determining a persistence level of a plurality of persistence levels for the identified I/O requests based on a duration of storage in a computing device for data corresponding to the identified I/O requests;
selecting an ephemeral cache mode from a plurality of cache modes for the identified I/O requests based on the determined persistence level, wherein each cache mode corresponds to a respective duration of storage in which the ephemeral cache mode comprises caching the data in cache storage in response to determining a low persistence level corresponding to storage of data in the computing device without redundancy, separate from the backing store, without accessing the backing store; and
servicing the identified I/O requests by caching data of the file in the ephemeral cache mode, wherein;
caching the data of the file in the ephemeral cache mode comprises;
admitting the data of the file into the cache storage without redundantly admitting the data elsewhere, andevicting the data of the file from the cache storage, andthe data is admitted and evicted from the cache storage without accessing the backing store.
6 Assignments
0 Petitions
Accused Products
Abstract
A storage module may be configured to service I/O requests according to different persistence levels. The persistence level of an I/O request may relate to the storage resource(s) used to service the I/O request, the configuration of the storage resource(s), the storage mode of the resources, and so on. In some embodiments, a persistence level may relate to a cache mode of an I/O request. I/O requests pertaining to temporary or disposable data may be serviced using an ephemeral cache mode. An ephemeral cache mode may comprise storing I/O request data in cache storage without writing the data through (or back) to primary storage. Ephemeral cache data may be transferred between hosts in response to virtual machine migration.
-
Citations
19 Claims
-
1. A method, comprising:
-
identifying input/output (I/O) requests that pertain to a file associated with a backing store; determining a persistence level of a plurality of persistence levels for the identified I/O requests based on a duration of storage in a computing device for data corresponding to the identified I/O requests; selecting an ephemeral cache mode from a plurality of cache modes for the identified I/O requests based on the determined persistence level, wherein each cache mode corresponds to a respective duration of storage in which the ephemeral cache mode comprises caching the data in cache storage in response to determining a low persistence level corresponding to storage of data in the computing device without redundancy, separate from the backing store, without accessing the backing store; and servicing the identified I/O requests by caching data of the file in the ephemeral cache mode, wherein; caching the data of the file in the ephemeral cache mode comprises; admitting the data of the file into the cache storage without redundantly admitting the data elsewhere, and evicting the data of the file from the cache storage, and the data is admitted and evicted from the cache storage without accessing the backing store. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus comprising:
-
means for monitoring storage requests directed to a primary storage to identify storage requests that pertain to a file of the primary storage determined to be a dispensable file, where in dispensability is based on a duration of storage in a computing device for data in the dispensable file corresponding to the identified storage requests; means for caching data of the dispensable file exclusively within cache storage, separate from the primary storage, in response to determining storage of the data in the computing device without redundancy corresponding to the identified storage requests, wherein caching the data of the dispensable file comprises writing the data of the dispensable file to the cache storage without accessing the primary storage and without redundantly storing the data elsewhere; means for acknowledging completion of a request to write specified data to the dispensable file in response to caching the specified data within the cache storage and without accessing the primary storage and without redundantly storing the data elsewhere; means for servicing one or more storage requests pertaining to the specified data by use of the cache storage and without accessing the primary storage and without redundantly storing the data elsewhere; and means for removing the specified data from the cache storage without accessing the primary storage such that the specified data is evicted from the cache storage without being written to the primary storage and without redundantly storing the data elsewhere. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. An apparatus, comprising:
-
an agent configured to intercept input/output (I/O) requests pertaining to a client; a storage controller configured to assign cache modes to the intercepted I/O requests from a plurality of cache modes based on a duration of storage file data corresponding to the I/O requests will be stored in the client and storage of the file data in the client without redundancy, the plurality of cache modes including an ephemeral cache mode, wherein the storage controller is configured to assign the ephemeral cache mode to intercepted I/O requests pertaining to files of a primary storage system determined to correspond to file data that will be stored for a an amount of time that expires upon execution of one or more of a subsequent reboot, a subsequent restart, and a subsequent shutdown of the client; and a cache management system configured to service the intercepted I/O requests in accordance with the cache modes assigned thereto, wherein servicing the intercepted I/O requests assigned the ephemeral cache mode comprises caching data of the files within a cache storage device, separate from the primary storage system and without accessing the primary storage system and without redundantly storing the data elsewhere, by; writing the data of the files to the cache storage device without accessing the primary storage system and without redundantly storing the data elsewhere in response to write requests of the intercepted I/O requests assigned the ephemeral cache mode, and removing the data of the files from the cache storage device without accessing the primary storage system via to one or more of a reboot, restart, and shutdown of the client such that the data of the files are written to the cache storage device and, not written elsewhere, are subsequently removed from the cache storage device without accessing the primary storage system, wherein the agent, the storage controller, and the cache management system comprise one or more of a circuit, a programmable circuit, and instructions stored on a non-transitory computer-readable storage medium. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification