Techniques for caching data using a volatile memory cache and solid state drive
First Claim
1. A system comprising:
- a volatile memory cache including cached write data that has not yet been destaged to a data storage device;
a solid state drive configured to include;
a first area that stores at least a portion of cached write data from the volatile memory cache, and a second area that, upon the occurrence of a vault operation event, stores all remaining portions of cached write data from the volatile memory cache not stored in the first area; and
a controller coupled to the volatile memory cache and the solid state drive, the controller being configured to;
operate in a first mode of normal processing of data requests in which cached write data is copied from a first portion of the volatile memory cache to the first area and not the second area, and then destaged from the first area to a data storage device, wherein the first portion of the volatile memory is designated as free and made available for another use once the cached write data of the first portion has been copied to the first area, and, operate in a second mode in which all remaining portions of cached write data from the volatile memory cache not currently included in the first area are copied to the second area upon the occurrence of a vault operation event, wherein the second area is a reserved portion of the solid state drive and is not used when operating in the first mode of normal processing of data requests;
receive a signal indicating a vault operation event; and
in response to receiving said signal, operate in said second mode.
9 Assignments
0 Petitions
Accused Products
Abstract
Described are techniques for performing recovery processing in a data storage system. A providing a flash-based memory is provided with includes cached write data that has not been destaged to a data storage device. It is determined whether said flash-based memory has a threshold amount of storage available thereon. If the flash-based memory does not have the threshold amount of storage available thereon, portions of the cache write data are destaged until said flash-based memory has a threshold amount of storage available thereon. Received data requests are processed in accordance with a first policy different from a second policy used in connection with processing received data requests if said flash-based memory has a threshold amount of storage available thereon.
15 Citations
20 Claims
-
1. A system comprising:
-
a volatile memory cache including cached write data that has not yet been destaged to a data storage device; a solid state drive configured to include;
a first area that stores at least a portion of cached write data from the volatile memory cache, and a second area that, upon the occurrence of a vault operation event, stores all remaining portions of cached write data from the volatile memory cache not stored in the first area; anda controller coupled to the volatile memory cache and the solid state drive, the controller being configured to; operate in a first mode of normal processing of data requests in which cached write data is copied from a first portion of the volatile memory cache to the first area and not the second area, and then destaged from the first area to a data storage device, wherein the first portion of the volatile memory is designated as free and made available for another use once the cached write data of the first portion has been copied to the first area, and, operate in a second mode in which all remaining portions of cached write data from the volatile memory cache not currently included in the first area are copied to the second area upon the occurrence of a vault operation event, wherein the second area is a reserved portion of the solid state drive and is not used when operating in the first mode of normal processing of data requests; receive a signal indicating a vault operation event; and in response to receiving said signal, operate in said second mode. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A non-transitory computer readable medium comprising code stored thereon for caching data, the non-transitory computer readable medium comprising code stored thereon that, when executed, performs a method comprising:
-
configuring a solid state drive including a first area and a second area, wherein the first area is used to store at least a portion of cached write data from a volatile memory cache, said volatile memory cache including cached write data that has not yet been destaged to a data storage device, and wherein, upon the occurrence of a vault operation event, said second area is used to store all remaining portions of cached write data from the volatile memory cache not stored in the first area; operating in a first mode of normal processing of data requests in which cached write data is copied from a first portion of the volatile memory cache to the first area and not the second area, and then destaged from the first area to a data storage device, wherein the first portion of the volatile memory is designated as free and made available for another use once the cached write data has been copied to the first area; and in response to a vault operation event, operating in a second mode in which all remaining portions of cached write data from the volatile memory cache not currently included in the first area are copied to the second area, wherein the second area is a reserved portion of the solid state drive and is not used when operating in the first mode of normal processing of data requests.
-
-
13. A non-transitory computer readable medium comprising code stored thereon for managing data, the non-transitory computer readable medium comprising code stored thereon that, when executed, performs a method comprising:
-
while operating in a first mode of normal processing of data requests, copying portions of cached write data not yet destaged to a data storage device from a first portion of a volatile memory cache to a first area in a solid state drive and not a second area of the solid state drive, and then copying the portions of the cached write data from the first area to the data storage device, wherein the first portion of the volatile memory is designated as free and made available for another use once the cached write data of the first portion has been copied to the first area; and in response to a vault operation event, operating in a second mode wherein all remaining portions of cached write data from the volatile memory cache not currently included in the first area are copied to a second area of the solid state drive, wherein when operating in the first mode, the first area is used and the second area is a reserved portion of the solid state drive and is not used when operating in the first mode of normal processing of data request. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification