# US 2025/0147703 A1 · Storage system and memory control method

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

- Number: US 2025/0147703 A1
- Document ID: US20250147703A1
- Status: Published application
- Kind: A1
- Application number: 19/013,607
- Filed: 2025-01-08
- Published: 2025-05-08
- Earliest claimed: 2023-01-11
- Assignees: Hitachi Vantara, Ltd.
- Applicants: Hitachi Vantara, Ltd.
- Inventors: Takaki MATSUSHITA; Kazuki MATSUGAMI; Akira DEGUCHI; Norio SHIMOZONO; Shinichi HAYASHI
- Web page: https://patentgrep.com/patent/US20250147703A1

## CPC

- G06F 3/0665: {at area level, e.g. provisioning of virtual or logical volumes}
- G06F 3/0608: {Saving storage space on storage systems}
- G06F 3/065: {Replication mechanisms}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 12/0253: {Garbage collection, i.e. reclamation of unreferenced memory}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A first node performs copy (virtual copy) of address mapping between a virtual volume and a pool to a first virtual volume to create a third virtual volume in the first node. A second node performs mapping from a first pool volume in the second node to the third virtual volume in the first node, and links an address of the first pool volume, which is mapped to the third virtual volume, to an address of a second virtual volume in the second node.

## Claims

### Claim 1

A storage system comprising a plurality of nodes including a first node and a second node, wherein
each node includes
a virtual volume,
a pool including one or more pool volumes, in which data to an address of the virtual volume is logically stored in an address mapped to the address of the virtual volume,
one or more physical drives that store entity of data which is logically stored in the pool,
a memory that stores management information about data, which is information including mapping between an address of the virtual volume and an address of the pool, and
a processor,
a processor of the first node performs virtual copy, which is a copy of the mapping between the address of the virtual volume and the address of the pool, to a first virtual volume in the first node, to create a third virtual volume in the first node,
a processor of the second node
performs mapping from a first pool volume in the second node to the third virtual volume created in the first node, and
links an address of the first pool volume, which is mapped to the third virtual volume, to an address of a second virtual volume in the second node.

### Claim 2 (depends on 1)

The storage system according to claim 1, wherein
when the first node receives an instruction to create the second virtual volume while the first node includes the first virtual volume, the processor of the first node creates the third virtual volume, and the processor of the second node performs mapping from the first pool volume to the third virtual volume.

### Claim 3 (depends on 1)

The storage system according to claim 1, wherein
when an address of data to be written is an address of the second virtual volume, the processor of the second node performs log-structured write of the data to a second pool volume in the second node, and
the log-structured write includes storing post-update data in the pool while pre-update data remains in the pool, and changing a mapping destination address of the address of the virtual volume from an address of the pre-update data to an address of the post-update data.

### Claim 4 (depends on 1)

The storage system according to claim 1, wherein
the first node is a node in an on-premises environment,
the second node is a node in a public cloud environment, and
the third virtual volume is a volume as a snapshot of the first virtual volume.

### Claim 5 (depends on 3)

The storage system according to claim 3, wherein
the processor of the second node performs a prefetch process in response to a prefetch instruction, and
the prefetch process includes
prefetching the data in the second virtual volume through an address in the first pool volume that is mapped to the address with data in the third virtual volume, and
performing write of the prefetched data to the second pool volume.

### Claim 6 (depends on 5)

The storage system according to claim 5, wherein
the first node includes a plurality of virtual third volumes,
a respective virtual third volume is a virtual copy of one first virtual volume and includes data which is different from ones the other virtual volumes include,
when a mapping destination is changed among the virtual third volumes, the prefetch process includes
specifying, from the first node, a difference position, which is an address having a difference in data between the third virtual volume before changing the mapping destination and the third virtual volume after changing the mapping destination, and
prefetching data obtained from the difference position.

### Claim 7 (depends on 6)

The storage system according to claim 6, wherein
the processor of the second node invalidates data before prefetch associated with a position where data prefetch has been performed in order to make the data be a target of garbage collection.

### Claim 8 (depends on 6)

The storage system according to claim 6, wherein
the plurality of virtual third volumes are snapshots whose generations are different.

### Claim 9

A memory control method, using a storage system comprising a plurality of nodes including a first node and a second node, and each node includes a virtual volume, a pool including one or more pool volumes, one or more physical drives, a memory, and a processor, the memory control method comprising:
logically storing, in the pool including the one or more pool volumes, an address of the virtual volume in an address mapped to the address of the virtual volume;
storing, via the one or more physical drives, entity of data which is logically stored in the pool;
storing, via the memory, management information about data, which is information including mapping between an address of the virtual volume and an address of the pool;
performing, by the first node, a virtual copy, which is a copy of mapping between an address of the virtual volume and the address of the pool, to a first virtual volume in the first node, to create a third virtual volume in the first node;
performing, by the second node, mapping from a first pool volume in the second node to the third virtual volume created in the first node; and
linking, by the second node, an address of the first pool volume, which is mapped to the third virtual volume, to an address of a second virtual volume in the second node.
