Patent ID: 8463886

Claim:
An apparatus comprising: a processor; and a memory storing computer-readable instructions, execution of the instructions by the processor facilitates instructing a plurality of servers to execute a distributed processing of a job, execution of the instructions by the processor configuring the apparatus to include: a job-request receiving unit to receive a request of executing the job; a determining unit to determine a plurality of network segments each of the network segments including a plurality of servers to be involved in the distributed processing of the job, a network being divided into a plurality of network segments; a dividing unit to divide job data used for the servers included in the network segments determined by the determining unit into a plurality of sub-data based on a ratio of throughputs of the determined network segments when the job data can be divided into the sub-data for the distributed processing of the received job, and divide the job data into a plurality of sub-data based on a ratio that is closest to the ratio of the throughputs when the job data cannot be divided into the sub-data based on the ratio of the throughputs due to a divisional limitation, the job data being used for the distributed processing of the job, each of the throughputs being a sum of throughputs of all the servers included in each of the network segments; a data transmitting unit to transmit each of the sub-data to a data storage unit in a corresponding network segment from among the network segments determined by the determining unit; and a transmitting unit to transmit, to each of the servers, a job for each of the servers to execute the distributed processing the received job and information on a place where the data is stored in the data storage unit.