# US 2010/0169271 A1 · File sharing method, computer system, and job scheduler

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

- Number: US 2010/0169271 A1
- Document ID: US20100169271A1
- Status: Published application
- Kind: A1
- Application number: 12/388,174
- Filed: 2009-02-18
- Published: 2010-07-01
- Earliest claimed: 2008-12-26
- Assignees: Hitachi, Ltd.
- Inventors: Takashi Yasui; Masaaki Shimizu
- Web page: https://patentgrep.com/patent/US20100169271A1

## CPC

- G06F 16/1767: {Concurrency control, e.g. optimistic or pessimistic approaches}
- G06F 2221/2147: Locking files
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Provided is a computer system including a plurality of computing hosts, which constructs a shared file system dynamically so that job execution efficiency is improved. In the computer system which includes the plurality of computing hosts and executes a job requested, in a case where the job is executed by the plurality of computing hosts, each computing host which executes the job is configured to: share a file necessary for executing the job; access the shared file to execute the requested job; and cancel the sharing of the file after execution of the requested job is completed.

## Claims

### Claim 1

A file sharing method used for a computer system which includes a plurality of computers, and which executes a job requested,
the plurality of computers including a plurality of computing hosts which execute the job,
each of the plurality of computing hosts comprising:
a first interface coupled to another one of the plurality of computing hosts;
a first processor coupled to the first interface; and
a first memory coupled to the first processor, the file sharing method including the steps of, in a case where the job is executed by the plurality of computing hosts:
sharing, by the first processor of the each of the plurality of computing hosts which execute the job, a file necessary for executing the job;
executing, by the first processor of the each of the plurality of computing hosts which execute the job, the requested job through accessing the file; and
canceling, by the first processor of the each of the plurality of computing hosts which execute the requested job, the sharing of the file after the executing of the requested job is completed.

### Claim 2 (depends on 1)

The file sharing method according to claim 1, wherein:
the plurality of computers further include a job scheduler for receiving an execution request for the job;
the job scheduler comprises:
a second interface coupled to the plurality of computing hosts;
a second processor coupled to the second interface; and
a second memory coupled to the second processor; and
the file sharing method further includes the steps of:
receiving, by the second processor, the execution request for the job;
selecting, by the second processor, the plurality of computing hosts which execute the job based on the received execution request for the job;
generating, by the second processor, a duplication of the file necessary for executing the job; and
sharing, by the first processor of the each of the plurality of computing hosts which execute the job, the generated duplication of the file.

### Claim 3 (depends on 2)

The file sharing method according to claim 2, wherein:
the each of the plurality of computing hosts further includes a storage device for storing the file; and
the file sharing method further includes the steps of:
transferring, by the second processor, the duplication of the file to one of the plurality of computing hosts which execute the job; and
storing, by the first processor of the one of the plurality of computing hosts to which the duplication of the file is transferred, the duplication of the file in the storage device.

### Claim 4 (depends on 3)

The file sharing method according to claim 3, further including the steps of:
selecting, by the second processor, a master server which keeps information for identifying the one of the plurality of computing hosts which stores the file from among the plurality of computing hosts;
identifying, by the first processor of the each of the plurality of computing hosts which execute the job, the one of the plurality of computing hosts which stores the file through making an inquiry to the master server in a case where the file necessary for executing the job is accessed; and
obtaining, by the first processor of the each of the plurality of computing hosts which execute the job, the file necessary for executing the job from the identified one of the plurality of computing hosts.

### Claim 5 (depends on 4)

The file sharing method according to claim 4, further including the steps of:
transmitting, by the second processor, file sharing system configuration information that includes a list of the plurality of computing hosts which execute the job to the master server before the transferring of the duplication of the file; and
identifying, by the first processor of the master server, the one of the plurality of computing hosts which stores the file necessary for executing the job based on the file sharing system configuration information.

### Claim 6 (depends on 2)

The file sharing method according to claim 2, wherein:
the plurality of computers further include a plurality of I/O hosts each having a higher file access capability than the plurality of computing hosts;
each of the plurality of I/O hosts comprises:
a third interface capable of communication with the job scheduler and the plurality of computing hosts;
a third processor coupled to the third interface;
a third memory coupled to the third processor; and
a storage device for storing the file; and
the file sharing method further includes the steps of:
selecting, by the second processor, at least one of the plurality of I/O hosts which stores the file based on the received execution request for the job;
transferring, by the second processor, the generated duplication of the file to the selected at least one of the plurality of I/O hosts;
storing, by the third processor of the selected at least one of the plurality of I/O hosts, the duplication of the file in the storage device; and
obtaining, by the first processor of the each of the plurality of computing hosts which execute the job, the file necessary for executing the job from the selected at least one of the plurality of I/O hosts.

### Claim 7 (depends on 6)

The file sharing method according to claim 6, further including the steps of:
selecting, by the second processor, a master server which keeps information for identifying the at least one of the plurality of I/O hosts which stores the file from among the selected at least one of the plurality of I/O hosts;
identifying, by the first processor of the each of the plurality of computing hosts which execute the job, the at least one of the plurality of I/O hosts which stores the file through making an inquiry to the master server in a case where the file necessary for executing the job is accessed; and
obtaining, by the first processor of the each of the plurality of computing hosts which execute the job, the file necessary for executing the job from the identified at least one of the plurality of I/O hosts.

### Claim 8 (depends on 7)

The file sharing method according to claim 7, further including the steps of:
transmitting, by the second processor, file sharing system configuration information which includes a list of the at least one of the plurality of I/O hosts which stores the file to the master server before the transferring of the duplication of the file; and
identifying, by the third processor of the master server, the at least one of the plurality of I/O hosts which stores the file necessary for executing the job based on the file sharing system configuration information.

### Claim 9 (depends on 6)

The file sharing method according to claim 6, further including the step of determining, by the second processor, the number of the at least one of the plurality of I/O hosts to be selected based on a ratio between the number of the plurality of computing hosts and the number of the plurality of I/O hosts in the plurality of computers.

### Claim 10

A computer system which includes a plurality of computers, and which executes a job requested, wherein:
the plurality of computers include a plurality of computing hosts which execute the job;
each of the plurality of computing hosts comprises:
a first interface coupled to another one of the plurality of computing hosts;
a first processor coupled to the first interface; and
a first memory coupled to the first processor; and
the each of the plurality of computing hosts which execute the job is configured to, in a case where the job is executed by the plurality of computing hosts:
share a file necessary for executing the job;
execute the requested job through accessing the file; and
cancel the sharing of the file after the executing of the requested job is completed.

### Claim 11 (depends on 10)

The computer system according to claim 10, wherein:
the plurality of computers further comprise a job scheduler for receiving an execution request for the job;
the job scheduler comprises:
a second interface coupled to the plurality of computing hosts;
a second processor coupled to the second interface; and
a second memory coupled to the second processor;
the job scheduler is configured to:
receive the execution request for the job;
select the plurality of computing hosts which execute the job based on the received execution request for the job; and
generate a duplication of the file necessary for executing the job; and
the each of the plurality of computing hosts which execute the job is configured to share the generated duplication of the file.

### Claim 12 (depends on 11)

The computer system according to claim 11, wherein:
the each of the plurality of computing hosts further comprises a storage device for storing the file;
the job scheduler is configured to transfer the duplication of the file to one of the plurality of computing hosts which execute the job; and
the one of the plurality of computing hosts to which the duplication of the file is transferred is configured to store the duplication of the file in the storage device.

### Claim 13 (depends on 12)

The computer system according to claim 12, wherein:
the job scheduler is configured to select a master server which keeps information for identifying the one of the plurality of computing hosts which stores the file from among the plurality of computing hosts; and
the each of the plurality of computing hosts which execute the job is configured to, in a case where the file necessary for executing the job is accessed:
identify the one of the plurality of computing hosts which stores the file through making an inquiry to the master server; and
obtain the file necessary for executing the job from the identified one of the plurality of computing hosts.

### Claim 14 (depends on 11)

The computer system according to claim 11, wherein:
the plurality of computers further include a plurality of I/O hosts each having a higher file access capability than the plurality of computing hosts;
each of the plurality of I/O hosts comprises:
a third interface capable of communication with the job scheduler and the plurality of computing hosts;
a third processor coupled to the third interface;
a third memory coupled to the third processor; and
a storage device for storing the file;
the job scheduler is further configured to:
select, by the second processor, at least one of the plurality of I/O hosts which stores the file based on the received execution request for the job; and
transfer, by the second processor, the generated duplication of the file to the selected at least one of the plurality of I/O hosts;
the selected at least one of the plurality of I/O hosts is configured to store the duplication of the file in the storage device; and
the each of the plurality of computing hosts which execute the job is configured to obtain the file necessary for executing the job from the selected at least one of the plurality of I/O hosts.

### Claim 15 (depends on 14)

The computer system according to claim 14, wherein:
the job scheduler selects a master server which keeps information for identifying the at least one of the plurality of I/O hosts which stores the file from among the selected at least one of the plurality of I/O hosts; and
the each of the plurality of computing hosts which execute the job is further configured to, in a case where the file necessary for executing the job is accessed:
identify the at least one of the plurality of I/O hosts which stores the file through making an inquiry to the master server; and
obtain the file necessary for executing the job from the identified at least one of the plurality of I/O hosts.

### Claim 16

A job scheduler which receives a job to be executed in a computer system which includes a plurality of computers, and which executes the job requested,
the plurality of computers including computing hosts which execute the job,
the job scheduler comprising:
an interface coupled to the computing hosts;
a processor coupled to the interface; and
a memory coupled to the processor,
wherein the processor is configured to:
receive an execution request for the job;
select at least one of the computing hosts which execute the job based on the received execution request for the job;
duplicate a file necessary for executing the job;
instruct each of the selected plurality of the computing hosts to construct a file sharing system for sharing the duplicated file in a case where a plurality of the computing hosts are selected;
instruct the each of the selected plurality of the computing hosts to execute the received job; and
instruct the each of the selected plurality of the computing hosts to destruct the constructed file sharing system after the executing of the job is completed.
