IP Library › Granted Patent US 12,650,778
Granted Patent B2
US 12,650,778 · App. 18/830,805 · Granted Jun 9, 2026

Storage system and control method for storage system

Inventors: Taisuke Ono (Tokyo, JP); Yoshinori Ohira (Tokyo, JP); Takahiro Yamamoto (Tokyo, JP); Shintaro Ito (Tokyo, JP)
Assignee: HITACHI VANTARA, LTD.
G06F3/0619G06F3/0659G06F3/067G06F12/0868
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,650,778
App. No.
18/830,805
Granted
Jun 9, 2026
Kind
B2
Abstract

When execution of a write-back operation is selected, a storage system stores, in a cache area, data for which a write request is issued from a higher-level apparatus, stores an updated content of the cache area in a cache log storage area, and then writes the data to a data storage area. On the other hand, when execution of a write-through operation is selected, the storage system does not execute storage into the cache area and the cache log storage area, stores an updated content of the data storage area in a write log storage area, and then writes the data to the data storage area.

Claims (45)

1 . A storage system comprising:

one or a plurality of storage nodes each including a non-volatile storage device, a storage controller configured to process reading and writing of data from and to the storage device, and a volatile memory, wherein

the memory has a cache area where data related to a write request from a higher-level apparatus is temporarily stored,

the storage device has a cache log storage area where an updated content of the cache area is stored, a data storage area where the data related to the write request is permanently stored, and a write log storage area where an updated content of the data storage area is stored,

the storage controller

switches between a write-back operation and a write-through operation, the write-back operation being an operation in which the data related to the write request is stored in the cache area and the cache log storage area, then the higher-level apparatus is responded to, and the data is written to the data storage area after the response, and the write-through operation being an operation in which the data is written to the data storage area and then the higher-level apparatus is responded to, and

in the write-back operation, writes the data to the data storage area without writing the updated content of the data storage area to the write log storage area, and in the write-through operation, writes the data to the data storage area after writing the updated content of the data storage area to the write log storage area.

2 . The storage system according to claim 1 , wherein

when power loss occurs in the storage system during a period from the response to the writing of the data to the data storage area, in recovery processing of the power loss, the storage controller reads the updated content of the cache area from the cache log storage area of the storage device to restore data in the cache area of the memory and writes the restored data to the data storage area in a case of the write-back operation, and reads the updated content of the data storage area from the write log storage area to apply the updated content to the data storage area in a case of the write-through operation.

3 . The storage system according to claim 1 , wherein

the storage controller

upon receiving the write request, adds a protection code for error detection to the data related to the write request,

in the write-back operation, stores the data and the protection code in the cache area and the cache log storage area, and then writes the data and the protection code to the data storage area, and

in the write-through operation, writes the updated content of the data storage area to the write log storage area, and then writes the data and the protection code to the data storage area.

4 . The storage system according to claim 3 , wherein

the storage controller

divides an area in the storage device and a storage area corresponding to the area and provided to the higher-level apparatus into sectors as minimum write units, and

writes the protection code and the corresponding data to the same sector in the data storage area.

5 . The storage system according to claim 3 , wherein

an area in the storage device and a storage area corresponding to the area and provided to the higher-level apparatus are divided into sectors as minimum write units, and

the protection code and the corresponding data are written to different sectors in the data storage area.

6 . The storage system according to claim 3 , wherein

the storage controller

divides an area in the storage device and a storage area corresponding to the area and provided to the higher-level apparatus into sectors as minimum write units,

groups a plurality of the protection codes related to a plurality of pieces of the data of a plurality of sectors into a protection code group, and

reads, when writing the data to a sector of the data storage area, the protection code group including the protection code of the data to be written from the data storage area, overwrites the protection code of the protection code group, writes the overwritten protection code to the write log storage area, and then writes the protection code group including the overwritten protection code to the data storage area.

7 . The storage system according to claim 1 , wherein

the storage controller collectively writes, to the write log storage area, the updated content of the data storage area related to a plurality of the write requests.

8 . The storage system according to claim 1 , wherein

the storage controller collectively writes, to the storage device, the updated content of the data storage area and the updated content of one or more of the cache areas related to a plurality of the write requests.

9 . The storage system according to claim 1 , wherein

the storage controller of one of the storage nodes that receives the write request from the higher-level apparatus transfers the data related to the write request to another storage node constituting the storage system,

the storage controller of the storage node that receives the transferred data

switches between a write-back operation and a write-through operation, the write-back operation being an operation in which the transferred data is stored in the cache area and the cache log storage area, then the higher-level apparatus is responded to, and the data is written to the data storage area after the response, and the write-through operation being an operation in which the data is written to the data storage area and then the higher-level apparatus is responded to, and

in the write-back operation, writes the data to the data storage area without writing the updated content of the data storage area to the write log storage area, and in the write-through operation, writes the data to the data storage area after writing the updated content of the data storage area to the write log storage area.

10 . The storage system according to claim 1 , wherein

parity related to the data is stored in a storage node different from the storage node that stores the data,

the storage controller of one of the storage nodes that receives the write request from the higher-level apparatus reads, from the data storage area, old data to be updated by new data related to the write request, creates an intermediate code from the new data and the old data, and transfers the intermediate code to another storage node that constitutes the storage system and stores the parity, and

the storage controller of the other storage node that receives the intermediate code reads old parity on the data storage area, creates new parity from the intermediate code and the old parity, writes the new parity to the write log storage area, and then writes the new parity to the data storage area.

11 . A control method for a storage system that includes one or a plurality of storage nodes each including a storage controller configured to process reading and writing of data, and a volatile memory, wherein

the memory has a cache area where data related to a write request from a higher-level apparatus is temporarily stored,

a non-volatile storage device has a cache log storage area where an updated content of the cache area is stored, a data storage area where the data related to the write request is permanently stored, and a write log storage area where an updated content of the data storage area is stored,

the storage controller

switches between a write-back operation and a write-through operation, the write-back operation being an operation in which the data related to the write request is stored in the cache area and the cache log storage area, then the higher-level apparatus is responded to, and the data is written to the data storage area after the response, and the write-through operation being an operation in which the data is written to the data storage area and then the higher-level apparatus is responded to, and

in the write-back operation, writes the data to the data storage area without writing the updated content of the data storage area to the write log storage area, and in the write-through operation, writes the data to the data storage area after writing the updated content of the data storage area to the write log storage area.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2024
From: ONO, TAISUKE; OHIRA, YOSHINORI; YAMAMOTO, TAKAHIRO; ITO, SHINTARO
To: HITACHI VANTARA, LTD.
Reel/Frame 068554/0007 →
Priority Claims (1)
JP 2024-068558 · Apr 19, 2024 · national
Continuity (1)
Related Publication 20250328258A1 · Oct 23, 2025
References Cited (4)
US 11188469B2 · Wei · 2021 [cited by examiner]
US 20190243553A1 · Yamamoto et al. · 2019 [cited by applicant]
US 20230083242A1 · Sugihara · 2023 [cited by examiner]
WO 2018179073A1 · 2018 [cited by applicant]