Techniques for using flash-based memory in recovery processing
First Claim
1. A method of performing recovery processing in a data storage system, the method comprising:
- providing a flash-based memory including cached write data of write operations that has not been destaged to a non-volatile data storage device to which the write operations are directed;
determining whether a vault operation event has occurred to cause a transition from a normal processing mode to a vault operation processing mode, wherein, in the normal processing mode, the cached write data, on the flash-based memory is stored in a first area of the flash-based memory and not in a second area of the flash-based memory, and wherein, in said vault operation processing mode, said cached write data on the flash-based memory is stored in the first area and in the second area of the flash-based memory, wherein, upon transitioning to the vault operation processing mode, performing processing including;
determining whether said flash-based memory has a threshold amount of storage available thereon, and, if said flash-based memory does not have the threshold amount of storage available thereon, destaging portions of the cached write data until said flash-based memory has the threshold amount of storage available thereon, wherein said destaging destages the cached write data of the flash-based memory to the non-volatile data storage device to which the write operations are directed in accordance with an ordering of the first area and second area and said ordering indicates to destage cached write data from one of said first area and said second area prior to destaging cached write data from another of said first area and said second area; and
processing received data requests in accordance with a first policy different from a second policy used in connection with processing received data requests in the normal processing mode; and
determining whether to resume the normal processing mode, wherein, upon resuming the normal processing mode, processing received data requests according to the second policy, wherein the second policy indicates performing write request processing for a write request, said write request processing including caching data of the write request in a first portion of volatile memory and copying the data of the write request from the first portion of volatile memory to the first area, wherein said write request processing does not store data of write requests in the second area and wherein the first portion of volatile memory is designated as free and made available for another use once the data of the first portion has been copied to the first area.
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.
104 Citations
18 Claims
-
1. A method of performing recovery processing in a data storage system, the method comprising:
-
providing a flash-based memory including cached write data of write operations that has not been destaged to a non-volatile data storage device to which the write operations are directed; determining whether a vault operation event has occurred to cause a transition from a normal processing mode to a vault operation processing mode, wherein, in the normal processing mode, the cached write data, on the flash-based memory is stored in a first area of the flash-based memory and not in a second area of the flash-based memory, and wherein, in said vault operation processing mode, said cached write data on the flash-based memory is stored in the first area and in the second area of the flash-based memory, wherein, upon transitioning to the vault operation processing mode, performing processing including; determining whether said flash-based memory has a threshold amount of storage available thereon, and, if said flash-based memory does not have the threshold amount of storage available thereon, destaging portions of the cached write data until said flash-based memory has the threshold amount of storage available thereon, wherein said destaging destages the cached write data of the flash-based memory to the non-volatile data storage device to which the write operations are directed in accordance with an ordering of the first area and second area and said ordering indicates to destage cached write data from one of said first area and said second area prior to destaging cached write data from another of said first area and said second area; and processing received data requests in accordance with a first policy different from a second policy used in connection with processing received data requests in the normal processing mode; and determining whether to resume the normal processing mode, wherein, upon resuming the normal processing mode, processing received data requests according to the second policy, wherein the second policy indicates performing write request processing for a write request, said write request processing including caching data of the write request in a first portion of volatile memory and copying the data of the write request from the first portion of volatile memory to the first area, wherein said write request processing does not store data of write requests in the second area and wherein the first portion of volatile memory is designated as free and made available for another use once the data of the first portion has been copied to the first area. - View Dependent Claims (2, 3, 4, 5, 6, 7, 17, 18)
-
-
8. A method of performing recovery processing in a data storage system having a plurality of storage processors, the method comprising:
-
providing, for each of said plurality of storage processors, a flash-based memory including cached write data of write operations that has not been destaged to a non-volatile data storage device to which the write operations are directed; determining whether, a vault operation event has occurred to cause a transition from a normal processing mode to a vault operation processing mode, wherein, in the normal processing mode, the cached write data on the flash-based memory is stored in a first area flash-based memory and not in a second area of the flash-based memory, and wherein, in the vault operation mode, said cached write data on the flash-based memory is stored in the first area and the second area of the flash-based memory, wherein, upon transition to the vault operation processing mode, performing processing including; determining whether each of said plurality of storage processors has a same copy of cached write data included in said flash-based memory; if each of said plurality of storage processors does not have the same copy, then performing processing including; determining, from a first of the plurality of storage processors, a most current copy of cached write data as stored on the flash-based memory of each of said plurality of storage processors; and
,restoring the most current copy of the cached write data from said first storage processor to others of said plurality of storage processors; for each of said plurality of storage processors, if the flash-based memory of said each storage processor does not have a threshold amount of storage available thereon, for said each storage processor, destaging portions of the cached write data until said flash-based memory has the threshold amount of storage available thereon, wherein said destaging destages cached write data of the flash-based memory to the non-volatile data storage device to which the write operations are directed in accordance with an ordering of the first, area and second area and said ordering indicates to destage cached write data from one of said first area and said second area prior to destaging cached write data from another of said first area and said second area; and processing received data requests in accordance with a first policy different from a second policy used in connection with processing received data requests in the normal processing mode; and determining whether to resume the normal processing mode, wherein, upon resuming the normal processing mode, processing received data requests according to the second policy, wherein the second policy indicates performing write request processing for a write request, said write request processing including caching data of the write request in a first portion of volatile memory and copying the data of the write request from the first portion of volatile memory to the first area, wherein said write request processing does not store data of write requests in the second area and wherein the first portion of volatile memory is designated as free and made available for another use once the data of the first portion has been copied to the first area. - View Dependent Claims (9)
-
-
10. A method of performing recovery processing in a data storage system, the method comprising:
-
providing a flash-based memory including cached write data that has not been destaged to a data storage device, said flash-based memory including a first area used as a write cache and a second area used as a vault area to which cached write data in a volatile memory cache of the data storage system is stored upon the occurrence of a vault operation event causing a transition from a normal processing mode to a vault operation processing mode, wherein said vault operation event indicates failure of a power source of the data storage system, wherein, in the normal processing mode, the cached write data on the flash-based memory is stored in the first area of the flash-based memory and not in the second area of the flash-based memory, and wherein, in said vault operation processing mode, said cached write data on the flash-based memory is stored in the first area and in the second area of the flash-haled memory; determining whether the vault operation event has occurred to cause the transition to the vault operation processing mode, wherein, upon transitioning to the vault operation processing mode, performing processing including; copying cached write data from said volatile memory cache to said second area of the flash-based memory; determining whether said flash-based memory has a threshold amount of storage available thereon, and, if said flash-based memory does not have the threshold amount of storage available thereon, destaging portions of the cached write data from the flash-based memory to the data storage device until said flash-based memory has the threshold amount of storage available thereon; and processing received data requests in accordance with a first policy different from a second policy used in connection with processing received data requests in the normal processing mode; and determining whether to resume the normal processing mode, wherein, upon resuming the normal processing mode, processing subsequently received write data in accordance with the second policy using said first area as a write cache and said second area as a vault area, said processing in accordance with the second policy including caching the subsequently received write data in the volatile memory cache, copying the subsequently received write data from the volatile memory cache to said first area and not the second area, and destaging the subsequently received write data to the device. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
Specification