IP Library Granted Patent US 12,461,678
Granted Patent B2
US 12,461,678 · App. 18/461,997 · Granted Nov 4, 2025

Storage system including storage nodes each including a storage controller configured to run on a processor

Inventors: Shintaro Ito (Tokyo, JP); Sachie Tajima (Tokyo, JP); Takahiro Yamamoto (Tokyo, JP); Yoshinori Ohira (Tokyo, JP)
Assignee: HITACHI VANTARA, LTD.
G06F3/0655G06F3/0614G06F3/0683
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,461,678
App. No.
18/461,997
Granted
Nov 4, 2025
Kind
B2
Abstract

A storage system having both a high performance and high reliability is implemented. The storage system includes a plurality of storage nodes each including a processor and a memory, and a storage device. Each of the plurality of storage nodes includes a storage controller configured to run on the processor, the plurality of storage controllers include an active storage controller configured to process data output to and received from the storage device, and a standby storage controller configured to take over the processing of the data from the active storage controller, each of the active storage controller and the standby storage controller is allocated with a storage area of the memory, and the storage node changes an amount of a memory capacity allocated for the storage controller of the self-node when a state of the storage controller is switched between a standby state and an active state.

Claims (45)

1 . A storage system comprising:

a plurality of storage nodes each including a processor and a memory; and

a storage device, wherein

each of the plurality of storage nodes includes a storage controller configured to run on the processor,

the plurality of storage controllers include;

an active storage controller configured to process data output to and received from the storage device; and

a standby storage controller configured to take over the processing of the data from the active storage controller,

each of the active storage controller and the standby storage controller is allocated with a storage area of the memory,

said each of the plurality of storage nodes changes an amount of a memory capacity allocated for the storage controller of a self-node of said each of the plurality of storage nodes when a state of the storage controller of said each of the plurality of storage nodes is switched between a standby state and an active state,

wherein a redundancy group includes the active storage controller and the standby storage controller configured to take over the processing,

wherein the plurality of storage controllers in a same redundancy group are located in different nodes and a plurality of the storage controllers belonging to different redundancy groups are located in a same node,

wherein the data is made redundant and stored in the storage device by the plurality of storage controllers in the redundancy group

wherein a cache allocated to the storage controller includes a dirty cache configured to store data to be written to the storage device and a clean cache configured to store data read from the storage device,

wherein a storage amount of the clean cache of the active storage controller is larger than that of the standby storage controller, and

wherein the storage node subtracts a total capacity of the dirty caches held by all of the storage controllers of the self-node from a total capacity of the caches held by all of the storage controllers of the self-node, divides a subtraction result by a number of the storage controllers of the self-node, and adds a capacity of the dirty cache of each of the storage controllers to an obtained value to calculate a target cache capacity of each of the storage controllers.

2 . The storage system according to claim 1 , wherein

when the state of the storage controller is switched from the standby state to the active state, the memory capacity allocated to the storage controller is increased.

3 . The storage system according to claim 1 , wherein

when the state of the storage controller is switched from the active state to the standby state, the memory capacity allocated to the storage controller is reduced.

4 . The storage system according to claim 1 , wherein

said each of the plurality of storage nodes includes one active storage controller and two standby storage controllers, and

when one of the standby storage controllers is switched to the active storage controller, a memory capacity to be used by another of the standby storage controllers to hold the clean cache is reduced.

5 . The storage system according to claim 1 , wherein

the storage node is capable of compressing user data and cache data contains metadata related to the compression.

6 . The storage system according to claim 1 , wherein

the storage node sets the target cache capacity for each of the storage controllers of the self-node, and reduces, when a cache capacity of a certain one of the storage controllers is larger than the target cache capacity, the cache capacity of the storage controller.

7 . The storage system according to claim 2 , wherein

when the memory capacity is increased, a memory capacity allocated to another storage controller of the same storage node is reduced.

8 . The storage system according to claim 6 , wherein

the storage node preferentially reduces the clean cache to reduce the cache capacity, and destages the dirty cache to reduce the cache capacity when it is necessary to further reduce the cache capacity after the clean cache is completely reduced.

9 . A storage system comprising:

a plurality of storage nodes each including a processor and a memory; and

a storage device, wherein

each of the plurality of storage nodes includes a storage controller configured to run on the processor,

the plurality of storage controllers include:

an active storage controller configured to process data output to and received from the storage device; and

a standby storage controller configured to take over the processing of the data from the active storage controller,

each of the active storage controller and the standby storage controller is allocated with a storage area of the memory, and

said each of the plurality of storage nodes changes an amount of a memory capacity allocated for the storage controller of a self-node of said each of the plurality of storage nodes when a state of the storage controller of said each of the plurality of storage nodes is switched between a standby state and an active state,

wherein a redundancy group includes the active storage controller and the standby storage controller configured to take over the processing,

wherein the plurality of storage controllers in a same redundancy group are located in different nodes and a plurality of the storage controllers belonging to different redundancy groups are located in a same node,

wherein the data is made redundant and stored in the storage device by the plurality of storage controllers in the redundancy group

wherein a cache allocated to the storage controller includes a dirty cache configured to store data to be written to the storage device and a clean cache configured to store data read from the storage device,

wherein a storage amount of the clean cache of the active storage controller is larger than that of the standby storage controller, and

wherein the storage node subtracts a total capacity of the dirty caches held by all of the storage controllers of the self-node and a total capacity of the clean caches for metadata held by all of the storage controllers of the self-node from a total capacity of the caches held by all of the storage controllers of the self-node, divides a subtraction result by a number of the storage controllers of the self-node, and adds, to an obtained value, a capacity of the dirty cache and a capacity of the clean cache for the metadata of each of the storage controllers to calculate a target cache capacity of each of the storage controllers.

Assignments (2)
DE-MERGER EFFECTIVE APRIL 1, 2024 Recorded Oct 1, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069083/0345 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2023
From: ITO, SHINTARO; TAJIMA, SACHIE; YAMAMOTO, TAKAHIRO; OHIRA, YOSHINORI
To: HITACHI, LTD.
Reel/Frame 064816/0739 →
Priority Claims (1)
JP 2023-077946 · May 10, 2023 · national
Continuity (1)
Related Publication 20240377981A1 · Nov 14, 2024
References Cited (10)
US 10083100B1 · Agetsuma et al. · 2018 [cited by applicant]
US 20120124294A1 · Atkisson · 2012 [cited by examiner]
US 20180032440A1 · Iyer · 2018 [cited by examiner]
US 20220156396A1 · Bednash · 2022 [cited by examiner]
US 20220215001A1 · P S · 2022 [cited by examiner]
US 20220222015A1 · Sakai · 2022 [cited by examiner]
US 20230195535A1 · Pabón · 2023 [cited by examiner]
US 20230236980A1 · Fang · 2023 [cited by examiner]
US 20240069742A1 · McGee · 2024 [cited by examiner]
JP 2019101703A · 2019 [cited by applicant]