IP Library Granted Patent US 12,197,391
Granted Patent B2
US 12,197,391 · App. 18/170,031 · Granted Jan 14, 2025

File storage system and file transfer method

Inventors: Tomoki Shimizu (Tokyo, JP); Hoshun Terazumi (Tokyo, JP); Shinji Ogasawara (Tokyo, JP); Takeshi Kitamura (Tokyo, JP)
Assignee: HITACHI VANTARA, LTD.
G06F16/1774G06F16/13
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,197,391
App. No.
18/170,031
Granted
Jan 14, 2025
Kind
B2
Abstract

When a transfer target file is updated during multiple part upload of the transfer target file to an external storage system, a file storage system stops the multiple part upload of the transfer target file, and performs multiple part upload of the updated file to the external storage system.

Claims (64)

1. A file storage system, comprising:

an interface apparatus coupled to an external storage system;

a storage apparatus that stores one or more files; and

a processor that performs multiple part upload of a transfer target file among the one or more files to the external storage system,

wherein when the transfer target file is updated during the multiple part upload, the processor stops the multiple part upload of the transfer target file, and performs multiple part upload of the updated file to the external storage system,

wherein when the file having already been transferred to the external storage system is updated, the processor updates a file state of the file to a first dirty state, wherein

the file in the first dirty state is the transfer target file,

when the transfer target file is updated during the multiple part upload, the processor updates the file state of the transfer target file to a second dirty state, and

for each part of the transfer target file, the processor,

performs a state determination that is a determination of whether the file state of the transfer target file is the second dirty state or not, and

transfers the part to the external storage system when a result of the state determination is false, or

stops the multiple part upload of the transfer target file when the result of the state determination is true.

2. The file storage system according to claim 1 ,

wherein for each part of the transfer target file,

the processor performs part determination that is determination of whether the part transferred by the processor, and the part received by the external storage system match with each other or not, and

when a result of the part determination is true, transfer of the part is finished.

3. The file storage system according to claim 2 ,

wherein for each part of the transfer target file, the processor

performs the state determination before transfer of the part, and

transfers the part and then after transfer of the part, performs the state determination again, when the result of the state determination is true, or

performs the part determination, when a result of the repeated state determination is true.

4. The file storage system according to claim 2 ,

wherein for each part of the transfer target file,

the part determination is determination of whether a summary of the part transferred by the processor, and a summary of the part received by the external storage system match with each other or not,

the summary of the part transferred by the processor is a summary calculated by the processor, and

the summary of the part received by the external storage system is a summary calculated by the external storage system.

5. The file storage system according to claim 4 ,

wherein after all parts of the transfer target file are transferred to the external storage system,

the processor performs entire determination that is determination of whether the summary of the transfer target file, and a summary of a file where all parts received by the external storage system are concatenated match with each other or not,

the summary of the transfer target file is a summary calculated by the processor using a calculated summary of each transferred part of the transfer target file,

the summary of the concatenated file is a summary calculated by the external storage system using the calculated summary of each received part of the transfer target file, and

when a result of the entire determination is true, the multiple part upload is finished.

6. The file storage system according to claim 1 ,

wherein after all parts of the transfer target file are transferred to the external storage system,

the processor performs entire determination that is determination of whether the transfer target file transferred by the processor, and a file where all parts received by the external storage system are concatenated match with each other or not, and

when a result of the entire determination is true, the multiple part upload is finished.

7. The file storage system according to claim 1 ,

wherein for each part of the transfer target file, the processor manages whether the part is updated or not, and

in multiple part upload of the updated file, the processor transfers uploaded parts in the updated file to the external storage system, and does not transfer non-updated and transferred parts in the updated file to the external storage system.

8. A file storage system, comprising:

an interface apparatus coupled to an external storage system;

a storage apparatus that stores one or more files; and

a processor that performs multiple part upload of a transfer target file among the one or more files to the external storage system,

wherein when the transfer target file is updated during the multiple part upload, the processor stops the multiple part upload of the transfer target file, and performs multiple part upload of the updated file to the external storage system, and

wherein the processor executes a plurality of computer programs and causes the file storage system to function as a file system unit that updates a file, a file transfer unit that performs multiple part upload of a file, and an I/O monitoring unit that monitors I/O (Input/Output) of a file,

the file system unit accepts an update request, and updates a file designated by the update request among the one or more files,

when the file having already been transferred to the external storage system is updated, the I/O monitoring unit updates a file state of the file to a first dirty state,

the file in the first dirty state is the transfer target file,

when the file transfer target file is updated during the multiple part upload, the I/O monitoring unit updates a file state of the transfer target file to a second dirty state, and

for each part of the transfer target file, the file transfer unit

performs a state determination that is a determination of whether the file state of the transfer target file is the second dirty state or not, and

transfers the part to the external storage system when a result of the state determination is false, or

stops the multiple part upload of the transfer target file when the result of the state determination is true.

9. A file transfer method, comprising:

causing a computer to perform multiple part upload of a transfer target file among one or more files to an external storage system;

causing the computer to update the transfer target file when there is an update request for the transfer target file;

upon possible update of the transfer target file during the multiple part upload, causing the computer to stop the multiple part upload of the transfer target file and performing multiple part upload of the updated file to the external storage system, and

when the file having already been transferred to the external storage system is updated, causing the computer to update a file state of the file to a first dirty state, wherein

the file in the first dirty state is the transfer target file,

when the transfer target file is updated during the multiple part upload, the method further includes causing the computer to update the file state of the transfer target file to a second dirty state, and

for each part of the transfer target file, causing the computer to

perform a state determination that is a determination of whether the file state of the transfer target file is the second dirty state or not, and

transfer the part to the external storage system when a result of the state determination is false, or

stop the multiple part upload of the transfer target file when the result of the state determination is true.

Assignments (2)
MERGER Recorded Aug 26, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 068393/0234 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2023
From: SHIMIZU, TOMOKI; TERAZUMI, HOSHUN; OGASAWARA, SHINJI; KITAMURA, TAKESHI
To: HITACHI, LTD.
Reel/Frame 062719/0604 →
Priority Claims (1)
JP 2022-114159 · Jul 15, 2022 · national
Continuity (1)
Related Publication 20240020276A1 · Jan 18, 2024
References Cited (18)
US 8131281B1 · Hildner · 2012 [cited by examiner]
US 20050076177A1 · Mori · 2005 [cited by examiner]
US 20060129631A1 · Na · 2006 [cited by examiner]
US 20120102154A1 · Huang · 2012 [cited by examiner]
US 20120296946A1 · Goto · 2012 [cited by examiner]
US 20130185509A1 · Golosovker · 2013 [cited by examiner]
US 20130211770A1 · Dresler · 2013 [cited by examiner]
US 20140101115A1 · Ko · 2014 [cited by examiner]
US 20140136485A1 · Miyoshi · 2014 [cited by examiner]
US 20150089028A1 · Zheng · 2015 [cited by examiner]
US 20150339487A1 · Nomura · 2015 [cited by examiner]
US 20170034237A1 · Silver · 2017 [cited by examiner]
US 20200265023A1 · Tomar · 2020 [cited by examiner]
US 20210072870A1 · Arnold · 2021 [cited by examiner]
US 20210303158A1 · Nomura et al. · 2021 [cited by applicant]
US 20220300452A1 · Diehl · 2022 [cited by examiner]
US 20240020276A1 · Shimizu · 2024 [cited by examiner]
JP 2021157381A · 2021 [cited by applicant]