IP Library Granted Patent US 11,467,908
Granted Patent B2
US 11,467,908 · App. 16/807,724 · Granted Oct 11, 2022

Distributed storage system, distributed storage node, and parity update method for distributed storage system

Inventors: Kazushi Nakagawa (Tokyo, JP); Mitsuo Hayasaka (Tokyo, JP); Yuto Kamo (Tokyo, JP)
Assignee: HITACHI, LTD.
G06F11/1096G06F3/067G06F3/0619G06F3/0635G06F3/0689G06F11/3034G06F2211/1028
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 11,467,908
App. No.
16/807,724
Granted
Oct 11, 2022
Kind
B2
Abstract

A distributed storage places data units and parity units constituting a stripe formed by divided data into storage nodes in a distributed manner. In reference to determination formulas, either a full-stripe parity calculation method or an RPM parity calculation method is selected so as to minimize an amount of network traffic.

Claims (31)

1. A distributed storage system that includes a processor, and a plurality of nodes having a storage drive each,

a stripe being constituted by data units and by parity units for recovering the data units,

each of the units making up each stripe being stored on the storage drive of a different node,

in a case where an update write is performed on the data units of a given stripe, and

the parity units in the same stripe being updated,

the distributed storage system being configured to perform a first parity update method of calculating and updating the parity units based on all data units in the stripe having undergone the update write, and

a second parity update method of calculating and updating the parity units based on the data units having undergone the update write and on the data units and the parity units preceding the update write, and

the distributed storage system being further configured to switch between the first parity update method and the second parity update method based on an amount of data traffic between the nodes involved in the parity update,

to calculate the amount of data traffic at the time of the update write based on the number of data units in the stripe, on the number of parity units in the stripe, on the number of data units subject to the data write in the stripe, and on a type of the unit held by the node having received a request for the update write, and

to select the parity calculation method and the node that is to perform the parity calculation based on the amount of data traffic.

2. The distributed storage system according to claim 1 ,

wherein the type of the unit held by the node having received the request for the update write is any of a data unit subject to the update write, a data unit not subject to the update write, a parity unit, and a unit other than those units.

3. The distributed storage system according to claim 1 ,

wherein the storage node that is to perform the parity calculation is selected from among the node having received the request for the update write, a storage node storing a data unit subject to the update write, and a storage node storing the parity unit.

4. The distributed storage system according to claim 1 , further switching between the parity calculation methods based on whether or not to use intermediate parity.

5. The distributed storage system according to claim 1 ,

wherein the node having received the request for the update write calculates the amount of data traffic and selects the parity update method accordingly.

6. The distributed storage system according to claim 5 ,

wherein the node storing the data unit and the node storing the parity unit differ depending on the stripe, and

the parity update method is selected for each of the stripes.

7. A distributed storage system that includes a processor, and a plurality of nodes having a storage drive each,

a stripe being constituted by data units and by parity units for recovering the data units,

each of the units making up each stripe being stored on the storage drive of a different node,

in a case where an update write is performed on the data units of a given stripe, and

the parity units in the same stripe being updated,

the distributed storage system being configured to perform

a first parity update method of calculating and updating the parity units based on all data units in the stripe having undergone the update write, and

a second parity update method of calculating and updating the parity units based on the data units having undergone the update write and on the data units and the parity units preceding the update write, and the distributed storage system being further configured:

to switch between the first parity update method and the second parity update method based on an amount of data traffic between the nodes involved in the parity update,

to switch between the parity calculation methods based on whether or not to use intermediate parity, and

wherein, in a case where the intermediate parity is usable, the method of calculating the amount of data traffic with the second parity calculation method is changed depending on whether or not the intermediate parity is to be used.

Assignments (2)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2020
From: NAKAGAWA, KAZUSHI; HAYASAKA, MITSUO; KAMO, YUTO
To: HITACHI, LTD.
Reel/Frame 051997/0186 →
Priority Claims (1)
JP JP2019-213354 · Nov 26, 2019 · national
Continuity (1)
Related Publication 20210157676A1 · May 27, 2021
Cited By (1)
US 12,619,750