IP Library Granted Patent US 10,805,394
Granted Patent B2
US 10,805,394 · App. 15/540,041 · Granted Oct 13, 2020

File server apparatus having shared file system with file and directory operation processing

Inventors: Hitoshi Kamei (Tokyo, JP); Masanori Takata (Tokyo, JP); Akiyoshi Tsuchiya (Tokyo, JP)
Assignee: HITACHI, LTD.
H04L67/1097G06F12/0868G06F16/176G06F16/182G06F2212/1024G06F2212/263G06F2212/314G06F2212/463G06F2212/466
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 10,805,394
App. No.
15/540,041
Granted
Oct 13, 2020
Kind
B2
Abstract

A file server apparatus includes a second file system volume including cache data of a first file system volume stored in a shared file storage apparatus. The file server apparatus determines the operation type indicated by an access request to the first file system volume from a client. When the operation type is directory operation, the file server sends an instruction of directory operation to the shared file storage apparatus, and then transmits a completion response to the client. When the operation type is file operation, the file server apparatus executes a file operation in the second file system volume, transmits a completion response to the client, and then transmits a file operation instruction to the shared file storage apparatus.

Claims (75)

1. A file server apparatus configured to share a first file system volume stored in a shared file storage apparatus with another file server apparatus, and mediate accesses from a client to the first file system volume, the file server apparatus comprising:

a second file system volume including cache data of the first file system volume; and

a computer programmed to:

receive an access request to the first file system volume from the client;

execute an operation indicated by the access request in the second file system volume; and

transmit a completion response of the operation to the client,

wherein, when an operation type indicated by the access request is a directory operation, the computer is further programmed to:

transmit an instruction of the directory operation to be executed in the first file system volume to the shared file storage apparatus prior to transmitting the completion response to the client, and

wherein, when the operation type indicated by the access request is a file operation, the computer is further programmed to:

cache an instruction of the file operation to be executed in the first file system volume in a cache memory of the file server apparatus prior to transmitting the completion response to the client;

after transmitting the completion response to the client, determine whether the file operation is permitted to be executed in the first file system volume based on a presence or absence of a parent directory indicated by a path of a file of the file operation in the first file system volume; and

transmit, when the file operation is permitted to be executed in the first file system volume, the cached instruction of the file operation to be executed in the first file system volume to the shared file storage apparatus.

2. The file server apparatus according to claim 1 ,

wherein the computer is programmed to:

make an inquiry to the shared file storage apparatus concerning a target directory of the directory operation to be executed in the first file system volume; and

determine permission/prohibition of the directory operation based on a response to the inquiry.

3. A file server apparatus configured to share a first file system volume stored in a shared file storage apparatus with another file server apparatus, and mediate accesses from a client to the first file system volume, the file server apparatus comprising:

a second file system volume including cache data of the first file system volume; and

a computer programmed to:

receive an access request to the first file system volume from the client;

determine an operation type indicated by the access request;

when the determined operation type is a directory operation:

execute an operation indicated by the access request in the second file system volume,

transmit an instruction of the directory operation to be executed in the first file system volume to the shared file storage apparatus, and

transmit a completion response of the directory operation to the client after transmitting the instruction of the directory operation to be executed in the first file system volume to the shared file storage apparatus; and

when the determined operation type is a file operation:

execute the operation indicated by the access request in the second file system volume,

cache an instruction of the file operation to be executed in the first file system volume in a cache memory of the file server apparatus,

transmit a completion response of the file operation to the client after caching the instruction of the file operation,

determine whether the file operation is permitted to be executed in the first file system volume based on a presence or absence of a parent directory indicated by a path of a file of the file operation in the first file system volume, and

transmit, when the file operation is permitted to be executed in the first file system volume, the cached instruction of the file operation to be executed in the first file system volume to the shared file storage device,

wherein, when the directory operation is prohibited and a target directory in the first file system volume is different from a corresponding target directory in the second file system volume, the computer is programmed to match the target directory in the second file system volume with the target directory in the first file system volume.

4. The file server apparatus according to claim 3 ,

wherein, the computer is programmed to execute synchronization processing for incorporating update data for the second file system volume in the first file system volume into the second file system volume when a predetermined condition is satisfied, after matching the target directory in the second file system volume with the target directory in the first file system volume.

5. The file server apparatus according to claim 1 ,

wherein, the computer is programmed to:

temporarily store information on file operations in a list;

sequentially select the file operations in the list;

determine whether each of the selected file operations is permitted to be executed in the first file system volume based on information on a respective file operation object of each of the selected file operations in the first file system volume; and

instruct the shared file storage apparatus to perform each of the file operations which are determined as being permitted.

6. The file server apparatus according to claim 5 ,

wherein the computer is programmed to move a respective object of each of the file operations determined as being prohibited to a specified directory.

7. A method of controlling a file server apparatus configured to share a first file system volume stored in a shared file storage apparatus with another file server apparatus, and mediate accesses from a client to the first file system volume, the method comprising:

receiving an access request to the first file system volume from the client;

executing an operation indicated by the access request in a second file system volume which includes cache data of the first file system volume; and

transmitting a completion response of the operation to the client,

wherein, when an operation type indicated by the access request is a directory operation, an instruction of the directory operation to be executed in the first file system volume is transmitted to the shared file storage apparatus prior to transmitting the completion response to the client, and

wherein, when the operation type indicated by the access request is a file operation, prior to transmitting the completion response to the client, an instruction of the file operation to be executed in the first file system volume is cached in a cache memory of the file server apparatus, and, after transmitting the completion response to the client, whether the file operation is permitted to be executed in the first file system volume is determined based on a presence or absence of a parent directory indicated by a path of a file of the file operation to be executed in the first file system volume, and

when the file operation is permitted to be executed in the first file system volume, the cached instruction of the file operation to be executed in the first file system volume is transmitted to the shared file storage apparatus.

8. The method according to claim 7 , further comprising:

making an inquiry to the shared file storage apparatus concerning a target directory of the directory operation to be executed in the first file system volume; and

determining permission/prohibition of the directory operation based on a response to the inquiry.

9. A method of controlling a file server apparatus configured to share a first file system volume stored in a shared file storage apparatus with another file server apparatus, and mediate accesses from a client to the first file system volume, the method comprising:

receiving an access request to the first file system volume from the client;

determining an operation type indicated by the access request;

when the determined operation type is a directory operation:

executing an operation indicated by the access request in the second file system volume,

transmitting an instruction of the directory operation to be executed in the first file system volume to the shared file storage apparatus, and

transmitting a completion response of the directory operation to the client after transmitting the instruction of the directory operation to be executed in the first file system volume to the shared file storage apparatus; and

when the determined operation type is a file operation:

executing the operation indicated by the access request in the second file system volume,

caching an instruction of the file operation to be executed in the first file system volume in a cache memory of the file server apparatus,

transmitting a completion response of the file operation to the client after caching the instruction of the file operation to be executed in the first file system volume,

determining whether the file operation is permitted to be executed in the first file system volume based on a presence or absence of a parent directory indicated by a path of a file of the file operation to be executed in the first file system volume, and

transmitting, when the file operation is permitted to be executed in the first file system volume, the cached instruction of the file operation to be executed in the first file system volume to the shared file storage device, and

matching, when the directory operation is prohibited and a target directory in the first file system volume is different from a corresponding target directory in the second file system volume, the target directory in the second file system volume with the target directory in the first file system volume.

10. The method according to claim 9 , further comprising:

executing synchronization processing for incorporating update data for the second file system volume in the first file system volume into the second file system volume when a predetermined condition is satisfied, after matching the target directory in the second file system volume with the target directory in the first file system volume.

11. The method according to claim 7 , further comprising:

temporarily storing information on file operations in a list;

selecting the file operations in the list;

sequentially determining whether of each of the selected file operations is permitted to be executed in the first file system volume based on information on a respective file operation object of each of the selected file operations in the first file system volume; and

instructing the shared file storage apparatus to perform each of the file operations determined as being permitted.

12. The method according to claim 11 , further comprising

moving a respective object of each of the file operations determined as being prohibited to a specified directory.

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 Jun 27, 2017
From: KAMEI, HITOSHI; TAKATA, MASANORI; TSUCHIYA, AKIYOSHI
To: HITACHI, LTD.
Reel/Frame 042821/0517 →
Continuity (1)
Related Publication 20180013827A1 · Jan 11, 2018