# US 10,503,560 B2 · Distributed processing control device

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

- Number: US 10,503,560 B2
- Document ID: US10503560B2
- Status: Granted
- Kind: B2
- Application number: 15/057,304
- Filed: 2016-03-01
- Published: 2016-09-22
- Granted: 2019-12-10
- Earliest claimed: 2015-03-16
- Assignees: NEC Corporation
- Applicants: NEC Corporation
- Inventors: Takamitsu Ishii
- Web page: https://patentgrep.com/patent/US10503560B2

## CPC

- G06F 9/5066: {Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs (mappping at compile time, see G06F8/451)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A distributed processing control device includes a process accepting unit that accepts processes, a relevance acquisition unit that acquires relevance between the processes accepted by the process accepting unit; and a distributed processing instruction unit that distributively instructs a plurality of processing nodes to execute the processes accepted by the process accepting unit, based on the relevance between the processes acquired by the relevance acquisition unit.

## Claims

### Claim 1

A distributed processing control device comprising:
a storage device in which, in a case of performing distributed processing using a MapReduce model in which a Map process for data processing and a Reduce process that uses a process result of the Map process are performed, process relevance information showing relevance between a Map process and another Map process is stored for each of a pair of Map processes, the relevance being a predetermined value and taking a higher value as the Map process and the other Map process have higher relevance to each other; and
a processor that executes instructions to:
accept a plurality of the Map processes;
acquire the relevance between each pair of Map processes included in the plurality of the Map processes accepted, with reference to the process relevance information stored in the storage device; and
distributively instruct a plurality of processing nodes to execute the accepted Map processes so that different processing nodes execute Map processes having high relevance, based on the acquired relevance between the pair of Map processes, wherein
the processor performs the distributed instruction based on the acquired relevance between the pair of Map processes so that the different processing nodes execute processes in which a value of the relevance becomes high among processes to be executed, by aggregating a pair of Map processes having lowest relevance among the processes to be executed or dividing a combination in which the relevance becomes highest when combined among the processes to be executed, based on a result of calculating a processing cost required for executing the Map processes and the number of processing nodes capable of executing the Map processes.

### Claim 2 (depends on 1)

The distributed processing control device according to claim 1, wherein
when the processor distributively instructs the processing nodes to execute the Map processes, in a case of instructing any of the processing nodes to execute a plurality of the Map processes, the processor instructs the processing node to execute a Map process in which the Map processes, selected based on the relevance, are aggregated.

### Claim 3 (depends on 1)

The distributed processing control device according to claim 1, wherein
if the number of processing nodes required for executing the accepted Map processes is larger than the number of processing nodes capable of executing the Map processes, the processor aggregates a plurality of the Map processes selected based on the relevance, and distributively instructs the processing nodes to execute the Map processes including the aggregated Map process.

### Claim 4 (depends on 3)

The distributed processing control device according to claim 3, wherein
the processor calculates relevance after aggregation which is relevance between the Map processes including the aggregated Map process, and based on the calculated relevance after aggregation, reaggregates a plurality of Map processes selected from the Map processes including the aggregated Map process, and distributively instructs the processing nodes to execute the Map processes including the reaggregated Map process.

### Claim 5 (depends on 1)

The distributed processing control device according to claim 1, wherein
if the number of processing nodes required for executing the accepted Map process is smaller than the number of processing nodes capable of executing the Map processes, the processor divides a part of the Map processes selected based on the relevance, and distributively instructs the processing nodes to execute the Map processes including the divided Map processes.

### Claim 6 (depends on 5)

The distributed processing control device according to claim 5, wherein
the processor calculates relevance after division which is relevance between the Map processes including the divided Map processes, and based on the calculated relevance after division, redivides a part of the Map processes selected from the Map processes including the divided Map processes, and distributively instructs the processing nodes to execute the Map processes including the redivided Map processes.

### Claim 7 (depends on 1)

The distributed processing control device according to claim 1, wherein
the processor acquires reliability information showing reliability of each of the processing nodes, and based on the relevance and the reliability information, distributively instructs the processing nodes to execute the accepted Map processes.

### Claim 8 (depends on 1)

The distributed processing control device according to claim 1, wherein
the processor accepts a job which is a series of Map processes involving a Map process, generating a pair of a key and a value, to thereby accept the Map process included in the accepted job,
the processor calculates relevance between the Map processes included in the accepted job per unit time, and
the processor distributively instructs a plurality of processing nodes to execute the Map processes based on the relevance between the Map processes.

### Claim 9

A distributed processing control method comprising:
storing, by a storage device, in a case of performing distributed processing using a MapReduce model in which a Map process for data processing and a Reduce process that uses a process result of the Map process are performed, process relevance information showing relevance between a Map process and another Map process for each of a pair of Map processes, the relevance being a predetermined value and taking a higher value as the Map process and the other Map process having higher relevance to each other;
accepting, by a processor of a computing device, a plurality of Map processes;
acquiring, by the processor, the relevance between each pair of Map processes included in the plurality of the Map processes accepted, with reference to the process relevance information stored in the storage device; and
based on the acquired relevance between the processes, distributively instructing, by the processor, a plurality of processing nodes to execute the accepted Map processes so that different processing nodes execute Map processes having high relevance, based on the acquired relevance between the pair of Map processes, wherein
the processor performs the distributed instruction based on the acquired relevance between the pair of Map processes so that the different processing nodes execute processes in which a value of the relevance becomes high among processes to be executed, by aggregating a pair of Map processes having lowest relevance among the processes to be executed or dividing a combination in which the relevance becomes highest when combined among the processes to be executed, based on a result of calculating a processing cost required for executing the Map processes and the number of processing nodes capable of executing the Map processes.

### Claim 10

A non-transitory computer-readable medium storing a program comprising instructions for causing a distributed processing control device to perform a method comprising:
storing, in a case of performing distributed processing using a MapReduce model in which a Map process for data processing and a Reduce process that uses a process result of the Map process are performed, process relevance information showing relevance between a Map process and another process for each of a pair of Map processes, the relevance being a predetermined value and taking a higher value as the Map process and the other Map process having higher relevance to each other;
accepting a plurality of Map processes;
acquiring relevance between each pair of Map processes included in the plurality of the Map processes accepted, with reference to the process relevance information stored in the storage device; and
distributively instruct a plurality of processing nodes to execute the accepted Map processes so that different processing nodes execute Map processes having high relevance, based on the acquired relevance between the pair of Map processes, wherein
the processor performs the distributed instruction based on the acquired relevance between the pair of Map processes so that the different processing nodes execute processes in which a value of the relevance becomes high among processes to be executed, by aggregating a pair of Map processes having lowest relevance among the processes to be executed or dividing a combination in which the relevance becomes highest when combined among the processes to be executed, based on a result of calculating a processing cost required for executing the Map processes and the number of processing nodes capable of executing the Map processes.
