# US 2016/0259697 A1 · Storage system and method for controlling storage system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2016/0259697 A1
- Document ID: US20160259697A1
- Status: Published application
- Kind: A1
- Application number: 14/424,734
- Filed: 2014-06-02
- Published: 2016-09-08
- Earliest claimed: 2014-06-02
- Assignees: Hitachi, Ltd.
- Applicants: Hitachi, Ltd.
- Inventors: Masanori TAKADA; Akira YAMAMOTO
- Web page: https://patentgrep.com/patent/US20160259697A1

## CPC

- G06F 11/2094: {Redundant storage or storage space (G06F11/2056 takes precedence)}
- G06F 9/4401: Bootstrapping (security arrangements therefor G06F21/57)
- G06F 11/1441: {Resetting or repowering}
- G06F 12/0868: Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
- G06F 12/16: Protection against loss of memory contents {(contains no material, see G06F11/00)}
- G06F 2212/1024: Latency reduction
- G06F 2212/1032: Reliability improvement, data loss prevention, degraded operation etc
- G06F 2212/313: In storage device
- G06F 2212/7201: Logical to physical mapping or translation of blocks or pages
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

Methods are in use for saving data stored in a volatile memory to a non-volatile memory during a power outage in a storage system so that the data on the volatile memory is not lost. In the related art, the entire data saved to the non-volatile memory is read and written in the volatile memory when electric power supply is restored. Then, an operation as the storage system is resumed and an access request from a host is accepted. In the related art, the data saved in the non-volatile memory has to be read in entirety, and thus time is required until resumption of the access request acceptance and availability is impeded. According to the invention, a cache directory and cache data are saved to a non-volatile memory during a power outage and the cache directory is copied from the non-volatile memory to a volatile memory, a storage location of the data whose storage location in the cache directory prior to the saving is the volatile memory is changed to the non-volatile memory, and host I/O processing is initiated when electric power is restored in order to address this problem.

## Claims

### Claim 1

(canceled)

### Claim 2

A storage system comprising:
a storage device that stores data;
a control unit that performs input/output processing on the data for the storage device according to a request from a host computer;
a volatile memory that temporarily keeps the data and keeps a cache directory which shows a storage location for the data by entry;
a non-volatile memory that includes a volatile cache save area and a cache directory save area; and
a battery that electrically powers the volatile memory during an electric power interruption when electric power supply to the volatile memory is interrupted,
wherein the control unit saves the cache directory from the volatile memory to the cache directory save area and saves the data from the volatile memory to the volatile cache save area during the electric power interruption, and copies the cache directory from the cache directory save area to the volatile memory, changes the storage location of the data in the cache directory whose storage location prior to the saving is the volatile memory to the volatile cache save area, and initiates host I/O processing when the electric power supply is resumed,
wherein the cache directory also stores whether or not the data is stored in the storage device by entry, and
wherein the control unit copies the cache directory to the non-volatile memory, copies the data whose storage location prior to the saving is the volatile memory and which is not stored in the storage device from the non-volatile memory to the volatile memory, changes the storage location of the copied data in the cache directory to the copy location, and initiates the host I/O processing when the electric power supply is resumed.

### Claim 3 (depends on 2)

The storage system according to claim 2,
wherein the cache directory also stores whether the entry is valid or invalid by entry, and
wherein the control unit changes the entry whose data storage location is the volatile cache save area to become invalid in the directory prior to the change of the directory and initiates the host I/O processing when the electric power supply is resumed.

### Claim 4 (depends on 2)

The storage system according to claim 2,
wherein the control unit responds data to a host when a read request for the data stored in the volatile cache save area is received from the host, copies the data to the volatile memory, and changes the storage location of the data to a destination of the copy location in the cache directory after the initiation of the host I/O processing, and
wherein the control unit stores data associated with a write request to the volatile memory when the write request for the data stored in the volatile cache save area is received from the host and changes the storage location of the data in the cache directory to a storage location of the data associated with the write request after the initiation of the host I/O processing.

### Claim 5 (depends on 2)

The storage system according to claim 2,
wherein the non-volatile memory includes a plurality of volatile cache save areas,
wherein the control unit saves the data from the volatile memory to an unused one of the plurality of volatile cache save areas during the electric power interruption, and
wherein the control unit copies the data stored in one of the plurality of volatile cache save areas to the volatile memory, changes the storage location of the data to a destination of the copy location in the cache directory, and initiates the host I/O processing after the electric power supply is resumed in a case where the unused volatile cache save area is not present.

### Claim 6

(canceled)

### Claim 7

(canceled)

### Claim 8

A method for controlling a storage system including a storage device that stores data, a control unit that performs input/output processing on the data for the storage device according to a request from a host computer, a volatile memory that temporarily keeps the data and keeps a cache directory which shows a storage location for the data by entry, a non-volatile memory that includes a volatile cache save area and a cache directory save area, and a battery that electrically powers the volatile memory during an electric power interruption when electric power supply to the volatile memory is interrupted, the method comprising:
a step for saving the cache directory from the volatile memory to the cache directory save area and saving the data from the volatile memory to the volatile cache save area during the electric power interruption, and copying the cache directory from the cache directory save area to the volatile memory, changing the storage location of the data in the cache directory whose storage location prior to the saving is the volatile memory to the volatile cache save area, and initiating host I/O processing when the electric power supply is resumed,
wherein the cache directory also stores whether or not the data is stored in the storage device by entry, and
wherein the cache directory is copied to the non-volatile memory, the data whose storage location prior to the saving is the volatile memory and which is not stored in the storage device is copied from the non-volatile memory to the volatile memory, the storage location of the copied data in the cache directory is changed to the copy location, and the host I/O processing is initiated when the electric power supply is resumed.

### Claim 9 (depends on 8)

The method for controlling a storage system according to claim 8,
wherein the cache directory also stores whether the entry is valid or invalid by entry, and
wherein the entry whose data storage location is the volatile cache save area is changed to become invalid in the directory prior to the change of the directory and the host I/O processing is initiated when the electric power supply is resumed.

### Claim 10 (depends on 8)

The method for controlling a storage system according to claim 8,
wherein data is responded to a host when a read request for the data stored in the volatile cache save area is received from the host, the data is copied to the volatile memory, and the storage location of the data is changed to a destination of the copy location in the cache directory after the initiation of the host I/O processing, and
wherein data associated with a write request is stored to the volatile memory when the write request for the data stored in the volatile cache save area is received from the host and the storage location of the data in the cache directory is changed to a storage location of the data associated with the write request after the initiation of the host I/O processing.

### Claim 11 (depends on 8)

The method for controlling a storage system according to claim 8,
wherein the non-volatile memory includes a plurality of volatile cache save areas, wherein the data is saved from the volatile memory to an unused one of the plurality of volatile cache save areas during the electric power interruption, and wherein the data stored in one of the plurality of volatile cache save areas is copied to the volatile memory, the storage location of the data is changed to a destination of the copy location in the cache directory, and the host I/O processing is initiated after the electric power supply is resumed in a case where the unused volatile cache save area is not present.

### Claim 12

(canceled)
