# US 2020/0401340 A1 · Distributed storage system

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

- Number: US 2020/0401340 A1
- Document ID: US20200401340A1
- Status: Published application
- Kind: A1
- Application number: 16/325,280
- Filed: 2017-06-19
- Published: 2020-12-24
- Earliest claimed: 2017-06-19
- Assignees: Hitachi, Ltd.
- Applicants: Hitachi, Ltd.
- Inventors: Abhishek JOHRI; Mitsuo HAYASAKA; Hieuhanh LE
- Web page: https://patentgrep.com/patent/US20200401340A1

## CPC

- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 12/0871: Allocation or management of cache space
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 2212/262: configured as RAID
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A distributed storage system includes a first node group consisting of a plurality of nodes and a second node group consisting of a plurality of nodes. Each of the first node group and the second node group distributes and stores data of an assigned object to a plurality of constituent nodes. The first node group includes at least one first node shared with the second node group and at least one second node not shared with the second node group. The second node group includes the at least one first node and at least one third node not shared with the first node group.

## Claims

### Claim 1

A distributed storage system comprising:
a first node group consisting of a plurality of nodes; and
a second node group consisting of a plurality of nodes;
wherein each of the first node group and the second node group distributes and stores data of an assigned object to a plurality of constituent nodes,
wherein the first node group includes at least one first node shared with the second node group and at least one second node not shared with the second node group, and
wherein the second node group includes the at least one first node and at least one third node not shared with the first node group.

### Claim 2 (depends on 1)

The distributed storage system according to claim 1,
wherein a number of nodes constituting the first node group is a predetermined number and a number of nodes constituting the second node group is the predetermined number.

### Claim 3 (depends on 1)

The distributed storage system according to claim 1,
wherein, in response to addition of a new node to the first node group and the second node group, the second node group update configuration of the second node group to include the new node and exclude a node from the at least one first node.

### Claim 4 (depends on 3)

The distributed storage system according to claim 3,
wherein the first node group keeps a number of nodes constituting the first node group at a predetermined number and the second node group keeps a number of nodes constituting the second node group at the predetermined number.

### Claim 5 (depends on 1)

The distributed storage system according to claim 1,
wherein, when a new node is added to the first node group consisting of a predetermined number of nodes, the second node group is created from a part of the predetermined number of nodes of the first node group and the new node.

### Claim 6 (depends on 1)

The distributed storage system according to claim 1,
wherein the first node group stores less data of objects assigned to the first node group in each of the at least one first node than each of the at least one second node, and
wherein the second node group stores less data of objects assigned to the the second node group in each of the at least one first node than each of the at least one third node.

### Claim 7 (depends on 6)

The distributed storage system according to claim 6,
wherein a weight value is assigned to each node of the first node group and the second node group, and
wherein data amount to be stored in each node is determined based on the weight value in each of the first node group and the second node group.

### Claim 8 (depends on 7)

The distributed storage system according to claim 7,
wherein a weight value assigned to the at least one first node is half of a weight value assigned to the at least one second node, and the weight value assigned to the at least one second node is equal to a weight value assigned to the at least one third node.

### Claim 9

A method of controlling a distributed storage system comprising:
distributing and storing data of an object assigned to a first node group to a plurality of constituent nodes of the first node group, the first node group consisting of at least one first node shared with a second node group and at least one second node not shared with the second node group; and
distributing and storing data of an object assigned to the second node group in a plurality of constituent nodes of the second node group, the second node group consisting of the at least one first node and at least one third node not shared with the second node group.

### Claim 10 (depends on 9)

The method according to claim 9,
wherein, a number of nodes constituting the first node group is a predetermined number and a number of nodes constituting the second node group is the predetermined number.

### Claim 11 (depends on 9)

The method according to claim 9, further comprising:
in response to addition of a new node to the first node group and the second node group, updating configuration of the second node group to include the new node and exclude a node from the at least one first node.

### Claim 12 (depends on 11)

The method according to claim 11, further comprising:
keeping a number of nodes constituting each of the first node group and the second node group at a predetermined number.

### Claim 13 (depends on 9)

The method according to claim 9, further comprising:
when a new node is added to the first node group consisting of a predetermined number of nodes, creating the second node group from a part of the predetermined number of nodes of the first node group and the new node.

### Claim 14 (depends on 9)

The method according to claim 9, further comprising:
storing less data of objects assigned to the first node group in each of the at least one first node than each of the at least one second node, and
storing less data of objects assigned to the the second node group in each of the at least one first node than each of the at least one third node.

### Claim 15 (depends on 14)

The method according to claim 14, further comprising:
assigning a weight value to each node of the first node group and the second node group; and
determining data amount to be stored in each node based on the weight value in each of the first node group and the second node group.
