KR20140092599A - System and method for distributed processing, and apparatus applied to the same - Google Patents

System and method for distributed processing, and apparatus applied to the same Download PDF

Info

Publication number
KR20140092599A
KR20140092599A KR1020130004834A KR20130004834A KR20140092599A KR 20140092599 A KR20140092599 A KR 20140092599A KR 1020130004834 A KR1020130004834 A KR 1020130004834A KR 20130004834 A KR20130004834 A KR 20130004834A KR 20140092599 A KR20140092599 A KR 20140092599A
Authority
KR
South Korea
Prior art keywords
processing
distributed processing
slave devices
divided
slave
Prior art date
Application number
KR1020130004834A
Other languages
Korean (ko)
Other versions
KR102183274B1 (en
Inventor
문승훈
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020130004834A priority Critical patent/KR102183274B1/en
Publication of KR20140092599A publication Critical patent/KR20140092599A/en
Application granted granted Critical
Publication of KR102183274B1 publication Critical patent/KR102183274B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

The present invention discloses a distributed processing system, a method thereof, and a device applied thereto. The efficient distributed processing for a target process can be performed by selecting a distributed processing slave device capable of distributed processing the target process among multiple slave devices, dividing the target process into at least two divided processes based on the state information of the distributed process slave device, and allocating the at least two divided processes to each of the distributed processing slave device for processing.

Description

분산 처리 시스템 및 그 방법, 그리고 이에 적용되는 장치{SYSTEM AND METHOD FOR DISTRIBUTED PROCESSING, AND APPARATUS APPLIED TO THE SAME}[0001] SYSTEM AND METHOD FOR DISTRIBUTED PROCESSING [0002] AND APPARATUS APPLIED TO THE SAME [0003]

본 발명은 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하고, 선별된 분산처리슬레이브장치의 상태정보에 적합하도록 상기 처리대상프로세스를 분할프로세스로 분할하여 처리하기 위한 방법에 관한 것이다.The present invention relates to a method for selecting a distributed processing slave device capable of distributing a processing target process among a plurality of slave devices and dividing the processing target process into divided processes so as to be suitable for the status information of the selected distributed processing slave devices .

분산 처리 기술은 여러 개의 물리적으로 분산된 저장장소와 장치들을 네트워크로 상호 연결하고 서로 통신하면서 작업을 처리하는 방식이다.Distributed processing technology is a way of processing work by interconnecting and communicating with several physically distributed storage locations and devices over a network.

즉, 분산 처리 기술은 이더넷 등의 다양한 네트워크를 이용하여 다수의 워크스테이션 또는 컴퓨터를 연결하여 프로세스를 할당함으로써, 공동의 작업을 수행할 수 있다.That is, the distributed processing technology can perform a common task by allocating processes by connecting a plurality of workstations or computers using various networks such as Ethernet.

이러한 분산 처리 기술은 마스터로 동작하는 장치에서 처리대상프로세스를 다수의 장치(이하, "슬레이브장치"라 함)들에게 분할하여 처리하는 방식으로 이루어짐에 따라, 처리대상프로세스를 다수의 슬레이브장치에 적합한 형태로 분할하는 것이 무엇보다 중요하다 할 것이다.This distributed processing technique is a method of dividing a process target process into a plurality of devices (hereinafter referred to as "slave devices ") in an apparatus that operates as a master, It would be more important to divide into forms.

그러나, 각 슬레이브장치에서는 상기 처리대상프로세스의 공동 작업만을 수행하는 것이 아니라 개별 프로세스를 동시에 수행하게 되며, 이러한 각 슬레이브장치의 현재 상태를 반영하지 못하는 경우, 각 슬레이브장치에서의 프로세스 처리에 따른 부하 증가 등으로 인해 효율적인 분산 처리를 수행할 수 없게 된다는 문제점이 있다.However, each slave device does not only perform the cooperative work of the process target process but performs the individual processes at the same time. When the current state of each slave device can not be reflected, the load increase It is impossible to perform an efficient distributed processing.

본 발명은 상기한 사정을 감안하여 창출된 것으로서, 본 발명에서 도달하고자 하는 목적은 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하고, 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 분할프로세스로 분할하며, 상기 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 함으로써, 처리대상프로세스에 대해 효율적인 분산 처리를 수행하는데 있다.SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a distributed slave device capable of distributing processable process among a plurality of slave devices, And distributing the divided process to each of the distributed processing slave devices and performing the processing so as to perform efficient distributed processing on the process target process.

상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 마스터장치는, 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별부; 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리부; 및 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 할당처리부를 포함하는 것을 특징으로 한다.In order to achieve the above object, a master device according to a first aspect of the present invention includes: a device sorting unit for sorting distributed process slave devices capable of distributing processable process among a plurality of slave devices; A division processing unit that divides the process target process into at least two divided processes based on status information of the distributed processing slave device; And an allocation processor for allocating and processing the at least two divided processes to each of the distributed processing slave devices.

보다 구체적으로, 상기 마스터장치는, 상기 분산처리슬레이브장치로부터 상기 적어도 두개의 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합하여 상기 처리대상프로세스의 처리 결과로서 산출하는 통합처리부를 더 포함하는 것을 특징으로 한다.More specifically, the master device further includes an integration processing unit for receiving the processing results of the at least two divided processes from the distributed processing slave device, and integrating the received processing results and calculating them as processing results of the processing target process .

보다 구체적으로, 상기 분산처리슬레이브장치는, 상기 다수의 슬레이브장치 각각의 상기 상태정보를 기초로 선별되며, 상기 장치선별부는, 상기 다수의 슬레이브장치 각각의 상기 상태정보를 확인하여, 상기 처리대상프로세스의 분산 처리에 적합한 상기 상태정보를 갖는 슬레이브장치를 상기 분산처리슬레이브장치로 선별하는 것을 특징으로 한다.More specifically, the distributed processing slave device is selected on the basis of the status information of each of the plurality of slave devices, and the device selection unit checks the status information of each of the plurality of slave devices, The slave device having the state information suitable for the distributed processing of the distributed processing slave device.

보다 구체적으로, 상기 상태정보는, 상기 다수의 슬레이브장치 각각이 처리 가능한 프로세스 특성 및 프로세스 처리용량 중 적어도 하나를 포함하는 것을 특징으로 한다.More specifically, the status information includes at least one of a process characteristic and a process processing capacity that each of the plurality of slave devices can process.

보다 구체적으로, 상기 분할처리부는, 상기 분산처리슬레이브장치 각각이 갖는 상기 프로세스 특성에 대응하도록 상기 처리대상프로세스를 상기 적어도 두개의 분할프로세스로 분할하고, 상기 할당처리부는, 상기 적어도 두개의 분할프로세스 각각을 대응되는 프로세스 특성을 갖는 분산처리슬레이브장치에 할당하여 처리하도록 하는 것을 특징으로 한다.More specifically, the division processing unit divides the process target process into the at least two divided processes so as to correspond to the process characteristics of each of the distributed processing slave devices, To a distributed processing slave device having a corresponding process characteristic.

보다 구체적으로, 상기 할당처리부는, 상기 적어도 두개의 분할프로세스 중 특정 분할프로세스에 대응하는 프로세스 특성을 갖는 분산처리슬레이브장치가 적어도 두개인 경우, 상기 적어도 두개의 분산처리슬레이브장치 각각이 갖는 상기 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할하며, 상기 할당처리부는, 상기 프로세스 처리용량을 기초로 분할된 상기 특정 분할프로세스를 상기 적어도 두개의 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 것을 특징으로 한다.More specifically, in the case where there are at least two distributed processing slave devices each having a process characteristic corresponding to a specific divided process among the at least two divided processes, the allocation processing portion may perform the process processing of each of the at least two distributed processing slave devices Characterized in that the allocation processing section allocates the specific partitioning process divided on the basis of the process processing capacity to each of the at least two distributed processing slave devices and performs processing .

보다 구체적으로, 상기 분할처리부는, 상기 프로세스 특성이 특정 웹사이트로부터 이미지를 수집하는 이미지 수집 프로세스 특성, 상기 이미지에 포함된 객체를 인식하는 객체 인식 프로세스 특성, 및 상기 객체와 관련된 텍스트를 처리하는 텍스트 처리 프로세스 특성 중 적어도 하나를 포함하는 경우, 상기 분할프로세스가 이미지 수집 프로세스, 객체 인식 프로세스, 및 텍스트 처리 프로세스 중 적어도 하나가 되도록 상기 처리대상프로세스를 분할하는 것을 특징으로 한다.More specifically, the partitioning processing unit may be configured to perform processing such that the process characteristic collects an image from a specific website, an object acquisition process characteristic that recognizes an object included in the image, and a text that processes text related to the object And a process characteristic, the process is divided so that the segmentation process is at least one of an image collection process, an object recognition process, and a text processing process.

보다 구체적으로, 상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 있는지 여부를 판단하는 판단부를 더 포함하며, 상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 없는 것으로 판단되는 경우, 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 상기 분산처리슬레이브장치 중 하나에서 수행되도록 하는 것을 특징으로 한다.The master device may further include a determination unit that determines whether the master device can perform the partitioning of the process target process and the allocation process for the at least two divided processes, And when it is determined that the allocation process for the at least two divided processes can not be performed, division of the process target process and allocation process for the at least two divided processes are performed in one of the distributed processing slave devices .

상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 분산 처리 방법은, 마스터장치가 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별단계; 상기 마스터장치가 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리단계; 상기 마스터장치가 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하는 할당처리단계; 및 상기 분산처리슬레이브장치 각각이 상기 마스터장치로부터 할당된 분할프로세스를 처리하고, 분할프로세스 처리 결과를 상기 마스터장치에 전송하는 프로세스처리단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, a distributed processing method according to a second aspect of the present invention includes: a device selection step of selecting a distributed processing slave device in which a master device is capable of distributing processing target processes among a plurality of slave devices; A division processing step of the master device dividing the processing target process into at least two divided processes based on status information of the distributed processing slave device; An allocation processing step in which the master device allocates the at least two divided processes to each of the distributed processing slave devices; And a process processing step in which each of the distributed processing slave devices processes the partitioning process allotted by the master device and transmits the partitioning process result to the master device.

상기 목적을 달성하기 위한 본 발명의 제 3 관점에 따른 마스터장치의 동작 방법은 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별단계; 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리단계; 및 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 할당처리단계를 포함하는 것을 특징으로 한다.According to a third aspect of the present invention, there is provided a method of operating a master device, comprising the steps of: selecting a distributed processing slave device capable of performing distributed processing of a process target process among a plurality of slave devices; A division processing step of dividing the processing target process into at least two divided processes based on status information of the distributed processing slave device; And an allocation processing step of allocating and processing the at least two divided processes to each of the distributed processing slave devices.

보다 구체적으로, 상기 분산처리슬레이브장치는, 상기 다수의 슬레이브장치 각각의 상기 상태정보를 기초로 선별되며, 상기 장치선별단계는, 상기 다수의 슬레이브장치 각각의 상기 상태정보를 확인하여, 상기 처리대상프로세스의 분산 처리에 적합한 상기 상태정보를 갖는 슬레이브장치를 상기 분산처리슬레이브장치로 선별하는 것을 특징으로 한다.More specifically, the distributed processing slave device is selected on the basis of the status information of each of the plurality of slave devices, and the device selecting step includes: checking the status information of each of the plurality of slave devices, The slave device having the status information suitable for the distributed process of the process is selected by the distributed processing slave device.

보다 구체적으로, 상기 상태정보는, 상기 다수의 슬레이브장치 각각이 처리 가능한 프로세스 특성 및 프로세스 처리용량 중 적어도 하나를 포함하는 것을 특징으로 한다.More specifically, the status information includes at least one of a process characteristic and a process processing capacity that each of the plurality of slave devices can process.

보다 구체적으로, 상기 분할처리단계는, 상기 분산처리슬레이브장치 각각이 갖는 상기 프로세스 특성에 대응하도록 상기 처리대상프로세스를 상기 적어도 두개의 분할프로세스로 분할하고, 상기 할당처리단계는, 상기 적어도 두개의 분할프로세스 각각을 대응되는 프로세스 특성을 갖는 분산처리슬레이브장치에 할당하여 처리하도록 하는 것을 특징으로 한다.More specifically, the dividing processing step divides the process target process into the at least two divided processes so as to correspond to the process characteristic of each of the distributed processing slave devices, and the allocating process step includes: Processes are assigned to the distributed processing slave devices having the corresponding process characteristics and processed.

보다 구체적으로, 상기 할당처리단계는, 상기 적어도 두개의 분할프로세스 중 특정 분할프로세스에 대응하는 프로세스 특성을 갖는 분산처리슬레이브장치가 적어도 두개인 경우, 상기 적어도 두개의 분산처리슬레이브장치 각각이 갖는 상기 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할하며, 상기 할당처리단계는, 상기 프로세스 처리용량을 기초로 분할된 상기 특정 분할프로세스를 상기 적어도 두개의 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 것을 특징으로 한다.More specifically, in the case where the number of distributed processing slave devices having process characteristics corresponding to a specific divided process among the at least two divided processes is at least two, Characterized in that said specific partitioning process is divided on the basis of the processing capacity and said allocation processing step is such that said specific partitioning process divided on the basis of said process processing capacity is assigned to each of said at least two distributed processing slave devices .

보다 구체적으로, 상기 분할처리단계는, 상기 프로세스 특성이 특정 웹사이트로부터 이미지를 수집하는 이미지 수집 프로세스 특성, 상기 이미지에 포함된 객체를 인식하는 객체 인식 프로세스 특성, 및 상기 객체와 관련된 텍스트를 처리하는 텍스트 처리 프로세스 특성 중 적어도 하나를 포함하는 경우, 상기 분할프로세스가 이미지 수집 프로세스, 객체 인식 프로세스, 및 텍스트 처리 프로세스 중 적어도 하나가 되도록 상기 처리대상프로세스를 분할하는 것을 특징으로 한다.More specifically, the segmentation processing step may comprise: an image collection process characteristic in which the process characteristic collects an image from a particular web site; an object recognition process characteristic that recognizes an object contained in the image; And a text processing process characteristic, the dividing process divides the process target process into at least one of an image collection process, an object recognition process, and a text processing process.

보다 구체적으로, 상기 방법은, 상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 있는지 여부를 판단하는 판단단계; 및 상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 없는 것으로 판단되는 경우, 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 상기 분산처리슬레이브장치 중 하나에서 수행되도록 하는 처리단계를 더 포함하는 것을 특징으로 한다.More specifically, the method includes: a determination step of determining whether the master device can perform the partitioning of the process target process and the allocation process for the at least two partition processes; And when the master device determines that the process target process can not be divided and the allocation process for the at least two divided processes can not be performed, the process for allocating the process target process and the process for allocating the at least two process segments To be performed in one of the distributed processing slave devices.

보다 구체적으로, 상기 방법은, 상기 분산처리슬레이브장치로부터 상기 적어도 두개의 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합하여 상기 처리대상프로세스의 처리 결과로서 산출하는 통합처리단계를 더 포함하는 것을 특징으로 한다.More specifically, the method further includes an integration processing step of receiving the processing results of the at least two divided processes from the distributed processing slave device, and integrating the received processing results and calculating them as processing results of the processing target process .

상기 목적을 달성하기 위한 본 발명의 제 4 관점에 따른 분산 처리 시스템은 처리대상프로세스의 분산 처리를 수행하는 분산처리슬레이브장치; 및 다수의 슬레이브장치 중 상기 처리대상프로세스의 분산 처리가 가능한 상기 분산처리슬레이브장치를 선별하고, 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하며, 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 마스터장치를 포함하는 것을 특징으로 한다.According to a fourth aspect of the present invention, there is provided a distributed processing system comprising: a distributed processing slave device for performing distributed processing of a process target; And the distributed processing slave apparatus capable of distributing the processing target process out of the plurality of slave apparatuses, dividing the processing target process into at least two divided processes based on status information of the distributed processing slave apparatus, And a master device for allocating and processing at least two divided processes to each of the distributed processing slave devices.

이에, 본 발명의 분산 처리 시스템 및 그 방법, 그리고 이에 적용되는 장치에 의하면, 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하고, 선별된 분산처리슬레이브장치의 상태정보에 적합하도록 상기 처리대상프로세스를 분할프로세스로 분할하여 처리함으로써, 각 슬레이브장치의 현재 상태에 적합한 프로세스 할당이 이루어짐에 따라 처리대상프로세스에 대해 효율적인 분산 처리를 수행할 수 있다.Thus, according to the distributed processing system and method of the present invention, and the apparatus applied thereto, it is possible to select a distributed processing slave device capable of distributing processable process among a plurality of slave devices, It is possible to perform efficient distribution processing on the processing target process as the process allocation suitable for the current state of each slave apparatus is performed.

도 1은 본 발명의 일 실시예에 따른 분산 처리 시스템의 개략적인 구성도.
도 2는 본 발명의 일 실시예에 따른 마스터장치의 구성도.
도 3은 본 발명의 일 실시예에 따른 분산 처리 시스템에서의 동작 흐름을 설명하기 위한 개략적인 순서도.
도 4는 본 발명의 일 실시예에 따른 마스터장치의 동작을 설명하기 위한 개략적인 순서도.
1 is a schematic configuration diagram of a distributed processing system according to an embodiment of the present invention;
2 is a configuration diagram of a master device according to an embodiment of the present invention;
3 is a schematic flowchart for explaining an operational flow in a distributed processing system according to an embodiment of the present invention;
FIG. 4 is a schematic flowchart for explaining an operation of a master device according to an embodiment of the present invention; FIG.

이하, 첨부된 도면을 참조하여 본 발명의 일 실시예에 대하여 설명한다.Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 분산 처리 시스템을 도시한 도면이다. 1 is a diagram showing a distributed processing system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 분산 처리 시스템은, 처리대상프로세스를 분할프로세스로 분할하여 다수의 슬레이브장치(200)를 통해 분산 처리하는 마스터장치(100) 및 마스터장치(100)로부터 할당된 분할프로세스를 처리하고, 해당 처리 결과를 마스터장치(100)에 전달하는 복수의 슬레이브장치(200)를 포함하는 구성을 갖는다.1, a distributed processing system according to an embodiment of the present invention includes a master device 100 for dividing a process to be processed into divided processes and distributing the processes through a plurality of slave devices 200, And a plurality of slave devices 200 for processing the divided processes allocated from the master device 100 and transmitting the processing results to the master device 100. [

마스터장치(100)는 처리대상프로세스를 다수의 슬레이브장치(200)에 대응하도록 분할프로세스로 분할하고, 분할프로세스를 각 슬레이브장치(200)에 할당하여 분산 처리가 수행되도록 하는 사용자 디바이스를 지칭하는 것으로서, 예를 들어, 개인용컴퓨터(PC), 노트북, 테블릿 PC, 및 PDA, 스마트폰 등이 해당될 수 있으며, 이에 제한되는 것이 아닌, 자체 하드웨어 규격을 통해 프로세스의 처리 가능하며, 슬레이브장치(200)와의 데이터 송수신이 가능한 장치는 모두 포함될 수 있다.The master device 100 refers to a user device that divides a process to be processed into a plurality of slave devices 200 in a partitioning process and allocates the partitioning process to each of the slave devices 200 to perform distributed processing For example, a personal computer (PC), a notebook computer, a tablet PC, a PDA, a smart phone, and the like, ) Capable of transmitting and receiving data can be all included.

한편, 마스터장치(100)는 전술한 구성과 상이한 서버의 형태를 가질 수 있다.On the other hand, the master device 100 may have the form of a server different from the above-described configuration.

이 경우, 마스터장치(100)는 특정 사용자장치(도시안됨)로부터 상기 처리대상프로세스에 대한 분산 처리 요청이 수신되면, 마찬가지로 처리대상프로세스를 다수의 슬레이브장치(200)에 대응하도록 분할프로세스로 분할하고, 분할프로세스를 각 슬레이브장치(200)에 할당하여 분산 처리가 수행되도록 하며, 각 슬레이브장치(200)로부터 분산 처리 수행 결과를 수신되는 경우, 이를 취합하여 상기 처리대상프로세스의 처리 결과로서 상기 특정 사용자장치에 제공하도록 동작할 수 있다.In this case, when the master device 100 receives a distributed processing request for the process target process from a specific user device (not shown), the master device 100 similarly divides the process target process into a plurality of slave devices 200 , And a dividing process is assigned to each slave device 200 to perform distributed processing. When a result of performing the distributed process is received from each slave device 200, To the device.

슬레이브장치(200)는 마스터장치(100)로부터 할당된 분할프로세서를 처리하고, 그 처리 결과를 마스터장치(100)에 전달하기 위한 사용자 디바이스를 지칭하는 것으로서, 마스터장치(100)와 마찬가지로 개인용컴퓨터(PC), 노트북, 테블릿 PC, 및 PDA, 스마트폰 등이 해당될 수 있으며, 이에 제한되는 것이 아닌, 자체 하드웨어 규격을 통해 프로세스의 처리 가능하며, 마스터장치(100)와의 데이터 송수신이 가능한 장치는 모두 포함될 수 있다.The slave device 200 refers to a user device for processing a partitioned processor allocated from the master device 100 and transferring the processing result to the master device 100, A PC, a notebook PC, a tablet PC, a PDA, a smart phone, and the like, and is capable of processing a process through its own hardware standard and is capable of transmitting and receiving data with the master device 100 Can all be included.

여기서, 처리대상프로세스는 사용자 조작에 의해 마스터장치(100)에 탑재된 하드웨어와 이러한 하드웨어를 구동하는 소프트웨어에 의해 처리되는 프로세스를 지칭하는 것으로서, 예를 들어, 사용자 조작에 따라 마스터장치(100)가 특정 웹사이트에 접속하여 등재된 이미지를 수집하고, 수집된 이미지로부터 객체를 인식하거나, 텍스트를 인식하기 위한 일련의 프로세스가 해당될 수 있다.Here, the process target refers to the hardware mounted on the master device 100 by the user's operation and the process processed by the software that drives the hardware. For example, when the master device 100 A series of processes for accessing a specific website and collecting registered images, recognizing objects from the collected images, or recognizing text may be applicable.

한편, 본 발명의 일 실시예에 따르면, 하나의 처리대상프로세스를 다수의 분할프로세스로 분할하고, 분할된 분할프로세스를 각 슬레이브장치(200)에 할당하여 공동 처리하기 위한 분산 처리 기술을 적용하고 있다.On the other hand, according to the embodiment of the present invention, a distributed processing technique for dividing one processing target process into a plurality of divided processes and assigning the divided processes to each slave device 200 for joint processing is applied .

이러한, 분산 처리 기술에 적용되는 각 슬레이브장치(200)에서는 상이한 하드웨어 규격으로 인해 처리가 불가능한 프로세스 특성이 존재할 수 있으며, 아울러,현재 처리중인 프로세스로 인해 처리 가능한 프로세스 처리용량 등의 상이한 현재상태를 가질 수 있다.In each slave device 200 applied to the distributed processing technology, process characteristics that can not be processed due to different hardware standards may exist, and a different current state such as a process processing capacity that can be processed due to the current process being processed .

이로 인해, 분산 처리를 수행하는 각 슬레이브장치(200)의 현재상태를 고려하지 않은 상태에서 처리대상프로세스를 각 슬레이브장치(200)에 대응하는 분할데이터로 분할하여 할당하는 경우, 특정 슬레이브장치(200)에서 할당된 분할프로세스를 처리하지 못하거나, 처리용량 초과로 인해 정상적인 프로세스의 처리가 불가능한 문제점이 발생할 수 있다.Accordingly, when the process target process is divided and divided into pieces of partition data corresponding to each slave device 200 without considering the current state of each slave device 200 performing the distributed processing, ) May not be able to handle the allocated partitioning process, or the normal process can not be processed due to exceeding the processing capacity.

이에, 본 발명의 일 실시예에서는, 분산 처리를 수행하는 분산처리그룹을 결정하고, 이러한 분산처리그룹에 속한 각 슬레이브장치(200)의 현재 상태를 확인하여 처리대상프로세스를 각 슬레이브장치(200)에 대응하는 분할프로세스로 분할하여 처리하기 위한 방안을 제안하고자 하며, 이하에서는 이를 구체적으로 설명하기로 한다.Accordingly, in one embodiment of the present invention, the distributed processing group for performing the distributed processing is determined, and the current state of each slave device 200 belonging to the distributed processing group is confirmed, And a dividing process corresponding to the dividing process corresponding to the dividing process. Hereinafter, the dividing process will be described in detail.

마스터장치(100)는 분산 처리를 위한 분산처리슬레이브장치를 선별하기 위한 기능을 수행한다.The master device 100 performs a function for selecting a distributed processing slave device for distributed processing.

보다 구체적으로, 마스터장치(100)는 기 등록된 다수의 슬레이브장치(200) 각각에 대한 상태정보를 확인하고, 분산 처리가 가능한 상태정보를 갖는 슬레이브장치(200)만을 처리대상프로세의 분산 처리를 수행하는 분산처리슬레이브장치(210)로서 선별하게 된다.More specifically, the master device 100 confirms the status information of each of the slave devices 200 that have been registered in advance, and only the slave device 200 having the status information capable of distributed processing is subjected to the distributed processing As the distributed processing slave device 210 that performs the processing.

여기서, 상태정보는, 각 슬레이브장치(200)에서 현재 처리 가능한 프로세스 처리용량(규정된 시간에 처리할 수 있는 총 동작 수)뿐만 아니라, 각 슬레이브장치(200)에서 처리 가능한 프로세스 특성을 포함할 수 있다.Here, the status information may include not only the process processing capacity currently available in each slave device 200 (the total number of operations that can be processed at a prescribed time) but also the process characteristics that can be processed in each slave device 200 have.

또한, 마스터장치(100)는 처리대상프로세스를 분할프로세스로 분할하는 기능을 수행한다.In addition, the master device 100 performs a function of dividing the processing target process into divided processes.

보다 구체적으로, 마스터장치(100)는 분산처리슬레이브장치(210)가 선별되면, 분산처리슬레이브장치(210) 각각의 상태정보로부터 확인되는 각 분산처리슬레이브장치(210)의 프로세스 특성 및 프로세스 처리용량을 기초로 처리대상프로세스를 각 분산처리슬레이브장치(210)에 대응하는 분할프로세스로 분할하게 된다.More specifically, when the distributed processing slave device 210 is selected, the master device 100 acquires the process characteristics of each distributed processing slave device 210 identified from the status information of each of the distributed processing slave devices 210, The processing target process is divided into a division process corresponding to each distributed processing slave device 210. [

그리고, 마스터장치(100)는 분할프로세스를 분산처리슬레이브장치(210)에 할당하는 기능을 수행한다.Then, the master device 100 performs a function of allocating the partitioning process to the distributed processing slave device 210. [

보다 구체적으로, 마스터장치(100)는 분할프로세스의 분할이 완료되면, 각 분할프로세스를 각 분산처리슬레이브장치(210)에 할당(제공)함으로써, 각 분산처리슬레이브장치(210)를 통해 상기 처리대상프로세스에 대한 분산처리가 수행되도록 한다.More specifically, when the division of the division process is completed, the master device 100 allocates (provides) each divided process to each of the distributed processing slave devices 210, So that distributed processing for the process is performed.

아울러, 마스터장치(100)는 분할프로세스의 처리 결과를 통합하는 기능을 수행한다.In addition, the master device 100 performs a function of integrating the processing result of the dividing process.

보다 구체적으로, 마스터장치(100)는, 각 분산처리슬레이브장치(210)로부터 할당된 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합함으로써, 이를 상기 처리대상프로세스의 처리 결과로서 산출하게 된다.More specifically, the master device 100 receives the processing results of the divided processes allocated from the respective distributed processing slave devices 210, integrates the received processing results, and calculates them as processing results of the processing target process do.

이하에서는, 도 2를 참조하여 본 발명의 일 실시예에 따른 마스터장치(100)의 구성을 보다 구체적으로 설명하도록 한다.Hereinafter, the configuration of the master device 100 according to an embodiment of the present invention will be described in more detail with reference to FIG.

즉, 본 발명의 일 실시예에 따른 마스터장치(100)는 분산처리슬레이브장치(210)를 선별하는 장치선별부(110), 처리대상프로세스를 분할프로세스로 분할하기 위한 분할처리부(120), 분할프로세스를 분산처리슬레이브장치(210)에 할당하기 위한 할당처리부(130) 및 각 분산처리슬레이브장치(210)로부터 수신되는 분할프로세스 처리 결과를 통합하기 위한 통합처리부(140)를 포함하는 구성을 갖는다.That is, the master device 100 according to one embodiment of the present invention includes a device selector 110 for selecting the distributed processing slave device 210, a division processor 120 for dividing the process to be processed into a division process, An allocation processing unit 130 for allocating the processes to the distributed processing slave devices 210 and an integrated processing unit 140 for consolidating the divided process processing results received from the respective distributed processing slave devices 210. [

또한, 마스터장치(100)는 전술한 구성이 이외에 마스터장치(100)에서의 분산 처리 가능 여부를 판단하기 위한 판단부(150)를 더 포함하는 구성을 가질 수 있다.In addition, the master device 100 may further include a determination unit 150 for determining whether the master device 100 can perform distributed processing in addition to the above-described configuration.

여기서, 전술한 장치선별부(110), 분할처리부(120), 할당처리부(130), 통합처리부(140) 및 판단부(150)를 포함하는 마스터장치(100)의 각 구성은 프로세서에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다.Here, each configuration of the master device 100 including the device selector 110, the division processor 120, the assignment processor 130, the integration processor 140, and the determination unit 150 described above is executed by a processor Or may be implemented by a combination of the above.

장치선별부(110)는 분산 처리를 위한 분산처리슬레이브장치(210)를 선별하는 기능을 수행한다.The device selection unit 110 performs a function of selecting a distributed processing slave device 210 for distributed processing.

보다 구체적으로, 장치선별부(110)는 기 등록된 다수의 슬레이브장치(200) 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치(210)를 선별하게 된다.More specifically, the apparatus selection unit 110 selects a distributed processing slave apparatus 210 capable of performing processing of a process target process among a plurality of previously registered slave apparatuses 200.

이때, 장치선별부(110)는 기 등록된 다수의 슬레이브장치(200) 각각에 대한 상태정보를 확인하고, 분산 처리가 가능한 상태정보를 갖는 슬레이브장치(200)들을 분산처리슬레이브장치(210)로 선별하게 된다.At this time, the device selection unit 110 checks the status information of each of the plurality of slave devices 200 registered in advance, and transmits the slave devices 200 having status information capable of distributed processing to the distributed processing slave device 210 Will be screened.

이를 위해, 장치선별부(110)는 다수의 슬레이브장치(200)를 사전에 등록하고, 일정주기마다 또는 분산 처리가 요구되는 시점에 다수의 슬레이브장치(200)로부터 상태정보를 수집하게 된다. To this end, the device sorting unit 110 registers a plurality of slave devices 200 in advance, and collects status information from a plurality of slave devices 200 at regular intervals or at a time when distributed processing is required.

이와 관련하여, 장치선별부(110)는 다수의 슬레이브장치(200) 중 현재 처리 가능한 프로세스 처리용량이 임계치 이상인 슬레이브장치(200)만을 분산처리슬레이브장치(210)로 선별할 수 있다.In this regard, the device sorting unit 110 can select only the slave devices 200 having the processable capacity that can be processed among the plurality of slave devices 200 at or above the threshold value, by the distributed processing slave device 210.

예를 들어, 장치선별부(110)는 각 슬레이브장치(200)의 개별 프로세스 처리에 따라 현재 점유중인 프로세스 처리용량을 제외한 가용한 프로세스 처리용량을 확인하고, 확인된 프로세스 처리용량이 임계치 이상인 슬레이브장치(200)만을 처리대상프로세스의 분산 처리를 위한 분산처리슬레이브장치(210)로 선별하게 된다.For example, the device selection unit 110 identifies an available process processing capacity excluding the currently occupied process processing capacity in accordance with the individual process processing of each slave device 200, Only the distributed processing slave device 210 for distributed processing of the process target process is selected.

분할처리부(120)는 처리대상프로세스를 분할프로세스로 분할하는 기능을 수행한다.The division processing unit 120 performs a function of dividing a process to be processed into a division process.

보다 구체적으로, 분할처리부(120)는 분산처리슬레이브장치(210) 각각의 상태정보를 기초로 처리대상프로세스를 각 분산처리슬레이브장치(210)에 대응하는 분할프로세스로 분할하게 된다.More specifically, the division processing unit 120 divides the process target process into the divided processes corresponding to the respective distributed processing slave devices 210, based on the status information of each of the distributed processing slave devices 210. [

이때, 분할처리부(120)는 상태정보로부터 확인되는 각 분산처리슬레이브장치(210)의 프로세스 특성 및 프로세스 처리용량을 기초로 처리대상프로세스를 각 분산처리슬레이브장치(210)에 대응하는 분할프로세스로 분할하게 된다.At this time, the division processing unit 120 divides the process target process into a division process corresponding to each distributed processing slave device 210 based on the process characteristic and the process processing capacity of each distributed processing slave device 210 identified from the status information .

여기서, 분산처리슬레이브장치(210)는, 각각의 하드웨어 규격에 따라 처리 가능한 프로세스 특성을 갖게 된다.Here, the distributed processing slave device 210 has process characteristics that can be processed according to respective hardware standards.

이와 관련하여, 분할처리부(120)는 상기 상태정보를 기초로 각 분산처리슬레이브장치(210)에서 처리 가능한 프로세스 특성을 확인하고, 처리대상프로세스를 각 분산처리슬레이브장치(210)의 프로세스 특성에 대응하는 분할프로세스로 분할하게 된다.In this regard, the division processing unit 120 identifies process characteristics that can be processed by each of the distributed processing slave devices 210 based on the state information, and stores the process target in correspondence with the process characteristics of each distributed processing slave device 210 As shown in FIG.

예를 들어, 처리대상프로세스는 특정 웹사이트에 접속하여 등재된 이미지를 수집하고, 수집된 이미지로부터 객체를 인식함과 아울러 객체와 관련한 텍스트를 처리하기 위한 일련의 프로세스에 해당되고, 분산처리슬레이브장치 A, B, C가 선별된 상태에서, 프로세스 특성 확인 결과, 분산처리슬레이브장치 A의 경우, 웹 접속을 위한 이더넷과 관련한 하드웨어가 특화됨에 따라 웹 접속 관련한 프로세스 특성을 가지며, 분산처리슬레이브장치 B의 경우, 그래픽 처리 프로세서(GPU) 및 메모리에 해당하는 하드웨어가 특화되어 그래픽 처리와 관련한 프로세스 특성을 갖고, 그리고 분산처리슬레이브장치 C의 경우, CPU 컴퓨팅 파워와 관련한 하드웨어가 특화되어, 단순 텍스트 처리와 관련한 프로세스 특성을 가질 수 있다.For example, the process target corresponds to a series of processes for accessing a specific web site to collect registered images, recognize objects from the collected images, and process text related to the objects, and the distributed processing slave device As a result of checking the process characteristics in the state in which A, B, and C are selected, in the case of the distributed processing slave device A, the hardware related to the Ethernet for web connection is specialized, The hardware corresponding to the graphics processing unit (GPU) and the memory is specialized so as to have process characteristics related to the graphics processing, and in the case of the distributed processing slave unit C, the hardware relating to the CPU computing power is specialized, Process characteristics.

이에, 전술한 처리대상프로세스는 ①특정 웹사이트에 접속하여 등재된 이미지를 수집하기 위한 분할프로세스(분산처리슬레이브장치 A에 대응), ②수집된 이미지로부터 객체를 인식하기 위한 분할프로세스(분산처리슬레이브장치 B에 대응), 및 ③객체와 관련한 텍스트를 처리하기 위한 분할프로세스(분산처리슬레이브장치 C에 대응)로 분할될 수 있다.(1) a divided process (corresponding to the distributed processing slave device A) for collecting an image registered by accessing a specific web site, (2) a divided process for recognizing an object from the collected image (Corresponding to apparatus B), and (3) a dividing process for processing text associated with the object (corresponding to distributed processing slave device C).

한편, 분산처리슬레이브장치(210) 각각의 프로세스 특성 확인 결과, 적어도 두개의 분산처리슬레이브장치(210)가 동일한 프로세스 특성을 가질 수 있으며, 이로 인해 프로세스 특성을 기초한 처리대상프로세스의 분할 결과, 특정 분할프로세스의 처리가 가능한 프로세스 특성을 갖는 다수의 분산처리슬레이브장치(210)가 존재할 수 있다.On the other hand, as a result of checking the process characteristics of each of the distributed processing slave devices 210, at least two distributed processing slave devices 210 may have the same process characteristic, and as a result, There may be a plurality of distributed processing slave devices 210 having process characteristics capable of processing the process.

이 경우, 분할처리부(120)는 특정 분할프로세스에 대응하는 다수의 분산처리슬레이브장치(210) 각각에서의 처리 가능한 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할함으로써, 상기 다수의 분산처리슬레이브장치(210) 각각에 상기 특정 분할프로세스에서 분할된 프로세스가 할당될 수 있도록 한다.In this case, the partitioning processing unit 120 divides the specific partitioning process on the basis of processable processing capacity of each of the plurality of distributed processing slave devices 210 corresponding to the specific partitioning process, So that the divided processes can be allocated to each of the plurality of processors 210.

예를 들어, 처리대상프로세스는 특정 웹사이트에 접속하여 등재된 이미지를 수집하고, 수집된 이미지로부터 객체를 인식함과 아울러 객체와 관련한 텍스트를 처리하기 위한 일련의 프로세스에 해당되고, 분산처리슬레이브장치 A, B, C, D가 선별된 상태에서, 분산처리슬레이브장치 A와 분산처리슬레이브장치 B의 경우 웹 접속 관련한 프로세스 특성을 가지며, 분산처리슬레이브장치 C의 경우, 그래픽 처리와 관련한 프로세스 특성을 갖고, 그리고 분산처리슬레이브장치 D의 경우, 단순 텍스트 처리와 관련한 프로세스 특성을 가질 수 있다.For example, the process target corresponds to a series of processes for accessing a specific web site to collect registered images, recognize objects from the collected images, and process text related to the objects, and the distributed processing slave device In the case of the distributed processing slave device A and the distributed processing slave device B in the state in which A, B, C, and D are sorted, process characteristics related to the web connection are provided. In the case of the distributed processing slave device C, And in the case of the distributed processing slave device D, process characteristics related to simple text processing.

이에, 전술한 처리대상프로세스는 ① 특정 웹사이트에 접속하여 등재된 이미지를 수집하기 위한 분할프로세스(분산처리슬레이브장치 A 및 분산처리슬레이브장치 B에 대응), ②수집된 이미지로부터 객체를 인식하기 위한 분할프로세스(분산처리슬레이브장치 C에 대응), 및 ③객체와 관련한 텍스트를 처리하기 위한 분할프로세스(분산처리슬레이브장치 D에 대응)로 분할될 수 있다.Accordingly, the above-described process target processes include (1) a dividing process (corresponding to the distributed processing slave device A and the distributed processing slave device B) for collecting images registered by accessing a specific web site, (2) (Corresponding to the distributed processing slave device C), and (3) a dividing process for processing text related to the object (corresponding to the distributed processing slave device D).

여기서, 분할프로세스 ①의 경우, 분산처리슬레이브장치 A와 분산처리슬레이브장치 B 모두에 대응되므로, 분할프로세스 ①은 분산처리슬레이브장치 A에서 가용한 프로세스 처리용량과 분산처리슬레이브장치 B에서 가용한 프로세스 처리용량을 기초로 세부프로세스인 분할프로세스 ①-1(분산처리슬레이브장치 A에 대응), 분할프로세스 ①-2(분산처리슬레이브장치 B에 대응)로 추가 분할되게 된다.Here, in the case of the partitioning process 1, since both of the distributed processing slave device A and the distributed processing slave device B are supported, the partitioning process 1 is a process processing capacity available in the distributed processing slave device A and a process processing process available in the distributed processing slave device B (Corresponding to the distributed processing slave device A) and the divided process 1 - 2 (corresponding to the distributed processing slave device B), which are detailed processes based on the capacity.

할당처리부(130)는 분할프로세스를 분산처리슬레이브장치(210)에 할당하는 기능을 수행한다.The allocation processing unit 130 performs a function of allocating a partitioning process to the distributed processing slave device 210. [

보다 구체적으로, 할당처리부(130)는 분할프로세스로의 분할이 완료되면, 각 분할프로세스를 각 분산처리슬레이브장치(210)에 할당(제공)함으로써, 각 분산처리슬레이브장치(210)를 통해 상기 처리대상프로세스에 대한 분산처리가 수행되도록 한다.More specifically, the allocation processing unit 130 allocates (provides) each divided process to each of the distributed processing slave devices 210 when the division into the divided processes is completed, So that distributed processing for the target process is performed.

통합처리부(140)는 분할프로세스의 처리 결과를 통합하는 기능을 수행한다.The integration processing unit 140 performs a function of integrating the processing results of the division process.

보다 구체적으로, 통합처리부(140)는, 각 분산처리슬레이브장치(210)로부터 할당된 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합함으로써, 상기 처리대상프로세스의 처리 결과로서 산출하게 된다.More specifically, the integration processing unit 140 receives the processing results of the divided processes allocated from the respective distributed processing slave devices 210, and integrates the received processing results, thereby calculating the processing result of the processing target process .

판단부(150)는 마스터장치(100)에서의 분산 처리 가능 여부를 판단하는 기능을 수행한다.The determination unit 150 performs a function of determining whether the master device 100 can perform distributed processing.

보다 구체적으로, 판단부(150)는, 장치선별부(110)를 통해 분산처리슬레이브장치(210)가 선별된 이후, 마스터장치(100)의 프로세스 처리용량을 기초로 상기 마스터장치에서 상기 처리대상프로세스의 분산 처리가 가능한지 여부를 판단하게 된다.More specifically, after the distributed processing slave device 210 is selected through the device selection unit 110, the determination unit 150 determines whether or not the processing target It is determined whether or not the distributed processing of the process is possible.

이때, 판단부(150)는 마스터장치(100)의 프로세스 처리용량이 임계치를 초과하여 상기 처리대상프로세스의 분산 처리가 가능한 것으로 판단되는 경우, 분할처리부(120)에서 상기 처리대상프로세스를 분할프로세스로 분할하도록 하고, 할당처리부(130)가 분할된 분할프로세스를 분산처리슬레이브장치(210)에 할당하도록 한다.At this time, if it is determined that the process capacity of the master device 100 exceeds the threshold value and the distributed process of the process target process is possible, the determination unit 150 determines that the process target process is a divided process So that the allocation processing unit 130 allocates the divided processes to the distributed processing slave device 210. [

반면, 판단부(150)는 마스터장치(100)의 프로세스 처리용량이 임계치 미만으로 상기 처리대상프로세스의 분산 처리가 불가능한 것으로 판단되는 경우에는 상기 처리대상프로세스의 분산 처리가 가능한 상기 프로세스 처리용량을 갖는 분산처리슬레이브장치(210)를 확인하고, 상기 확인된 분산처리슬레이브장치(210)로 하여금 처리대상프로세스의 분할 및 분할프로세스의 할당 처리를 수행하도록 한다.On the other hand, when it is determined that the process capacity of the master device 100 is less than the threshold value and the distributed process of the process target process is impossible, the determination unit 150 determines that the process process capacity of the process target process Confirms the distributed processing slave device 210, and causes the identified distributed processing slave device 210 to perform the process of partitioning the process target process and the process of allocating the partition process.

여기서, 분산 처리와 관련한 분할처리부(120) 및 할당처리부(130)의 동작 제어 그리고 분산처리슬레이브장치(210)로 하여금 처리대상프로세스의 분할 및 분할프로세스의 할당 처리를 수행하도록 하는 동작의 경우, 상기 판단부(150)에서 수행하거나, 별도의 제어부(도시안됨)에 의해 수행될 수 있다.Here, in the case of an operation for controlling the operation of the partitioning processing unit 120 and the allocation processing unit 130 related to the distributed processing and the processing for allocating the partitioning target process and the allocation processing of the partitioning process to the distributed processing slave device 210, May be performed by the determination unit 150 or may be performed by a separate control unit (not shown).

이상에서 살펴본 바와 같이, 본 발명의 일 실시예에 따른 분산 처리 시스템에 따르면, 다수의 슬레이브장치(200) 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치(210)를 선별하고, 선별된 분산처리슬레이브장치(210)의 상태정보를 기초로 상기 처리대상프로세스를 분할프로세스로 분할하여 각 분산처리슬레이브장치(210)에 할당하여 처리하도록 함으로써, 각 슬레이브장치(200)의 현재 상태에 적합한 프로세스 할당이 이루어짐에 따라 처리대상프로세스에 대해 효율적인 분산 처리를 수행할 수 있다.As described above, according to the distributed processing system according to an embodiment of the present invention, the distributed processing slave devices 210 capable of distributing the process target process out of the plurality of slave devices 200 are selected, The processing target process is divided into divided processes on the basis of the status information of the processing slave device 210 and assigned to the respective distributed processing slave devices 210 so as to perform process allocation corresponding to the current state of each slave device 200 An efficient distributed processing can be performed on the processing target process.

이하에서는 도 3 및 도 4를 참조하여, 본 발명의 일 실시예에 따른 분산 처리 방법을 설명하도록 한다. 여기서, 설명의 편의를 위해 전술한 도 1 및 도 2에 도시된 구성은 해당 참조번호를 언급하여 설명하겠다. Hereinafter, a distributed processing method according to an embodiment of the present invention will be described with reference to FIG. 3 and FIG. Here, for convenience of explanation, the configurations shown in FIGS. 1 and 2 will be described with reference to corresponding reference numerals.

우선, 도 3을 참조하여 본 발명의 일 실시예에 따른 분산 처리 시스템에서의 동작 흐름을 설명하도록 한다.First, the operation flow in the distributed processing system according to one embodiment of the present invention will be described with reference to FIG.

먼저, 마스터장치(100)가 기 등록된 다수의 슬레이브장치(200) 각각에 대한 상태정보를 확인하고, 분산 처리가 가능한 상태정보를 갖는 슬레이브장치(200)만을 처리대상프로세의 분산 처리를 수행하는 분산처리슬레이브장치(210)로서 선별하게 된다(S110-S120).First, the master device 100 checks the status information of each of the plurality of slave devices 200 that have been registered in advance, and performs only the slave device 200 having the status information capable of distributed processing, (S110 - S120).

그리고 나서, 마스터장치(100)는 분산처리슬레이브장치(210)가 선별되면, 분산처리슬레이브장치(210) 각각의 상태정보로부터 확인되는 각 분산처리슬레이브장치(210)의 프로세스 특성 및 프로세스 처리용량 중 적어도 어느 하나를 기초로 처리대상프로세스를 각 분산처리슬레이브장치(210)에 대응하는 분할프로세스로 분할하게 된다(S130).Then, when the distributed processing slave device 210 is selected, the master device 100 selects one of the process characteristics of the distributed processing slave devices 210 identified from the status information of each of the distributed processing slave devices 210, The process target process is divided into a division process corresponding to each distributed processing slave device 210 based on at least one of them (S130).

그런 다음, 마스터장치(100)는 분할프로세스의 분할이 완료되면, 각 분할프로세스를 각 분산처리슬레이브장치(210)에 할당(제공)함으로써, 각 분산처리슬레이브장치(210)를 통해 상기 처리대상프로세스에 대한 분산처리가 수행되도록 한다(S140-S150).Then, when the partitioning process is completed, the master device 100 allocates (provides) each divided process to each of the distributed processing slave devices 210, (S140 - S150).

이후, 마스터장치(100)는, 각 분산처리슬레이브장치(210)로부터 할당된 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합함으로써, 이를 상기 처리대상프로세스의 처리 결과로서 산출하게 된다(S160-S170).Thereafter, the master device 100 receives the processing results of the divided processes allocated from the respective distributed processing slave devices 210, integrates the received processing results, and calculates them as processing results of the processing target process ( S160-S170).

이하에서는 도 4를 참조하여 본 발명의 일 실시예에 따른 마스터장치(100)의 동작을 구체적으로 설명하도록 한다.Hereinafter, the operation of the master device 100 according to an embodiment of the present invention will be described in detail with reference to FIG.

먼저, 장치선별부(110)가 기 등록된 다수의 슬레이브장치(200) 각각에 대한 상태정보를 확인하고, 분산 처리가 가능한 상태정보를 갖는 슬레이브장치(200)들을 분산처리슬레이브장치(210)로서 선별하게 된다(S210-S230).First, the device selector 110 checks the status information of each of the plurality of slave devices 200 registered in advance, and slave devices 200 having status information capable of distributed processing, as the distributed processing slave device 210 (S210 - S230).

이때, 장치선별부(110)는 다수의 슬레이브장치(200) 중 현재 처리 가능한 프로세스 처리용량이 임계치 이상인 슬레이브장치(200)만을 분산처리슬레이브장치(210)로 선별할 수 있다.At this time, the device sorting unit 110 can select only the slave devices 200 having a processable capacity that can be processed among the plurality of slave devices 200 at the threshold value or more, by the distributed processing slave device 210.

여기서, 제어부(150)는, 장치선별부(110)를 통해 분산처리슬레이브장치(210)가 선별된 이후, 마스터장치(100)의 프로세스 처리용량을 기초로 상기 마스터장치에서 상기 처리대상프로세스의 분산 처리가 가능한지 여부를 판단하게 된다(S240).Here, after the distributed processing slave device 210 is selected through the device selection unit 110, the control unit 150 determines the distribution of the process target process in the master device 100 based on the process process capacity of the master device 100 It is determined whether or not processing is possible (S240).

이때, 판단부(150)는 마스터장치(100)의 프로세스 처리용량이 임계치 미만으로 상기 처리대상프로세스의 분산 처리가 불가능한 것으로 판단되는 경우에는 상기 처리대상프로세스의 분산 처리가 가능한 상기 프로세스 처리용량을 갖는 분산처리슬레이브장치(210)를 확인하고, 상기 확인된 분산처리슬레이브장치(210)로 하여금 처리대상프로세스의 분할 및 분할프로세스의 할당 처리를 수행하도록 한다(S310).At this time, if it is determined that the process capacity of the master device 100 is less than the threshold value and the distributed process of the process target process is impossible, the determination unit 150 determines that the process process capacity of the process target process The distributed processing slave device 210 is checked, and the identified distributed processing slave device 210 is caused to perform the partitioning process and the allocation process of the partitioning process (S310).

그런 다음, 분할처리부(120)가 분산처리슬레이브장치(210)의 상태정보를 기초로 각 분산처리슬레이브장치(210)에서 처리 가능한 프로세스 특성을 확인하고, 처리대상프로세스를 각 분산처리슬레이브장치(210)의 프로세스 특성에 대응하는 분할프로세스로 분할하게 된다(S260).Then, the division processing unit 120 confirms the process characteristics that can be processed by the distributed processing slave devices 210 based on the state information of the distributed processing slave devices 210, and transmits the process target to each of the distributed processing slave devices 210 (S260). ≪ / RTI >

이때, 분산처리슬레이브장치(210)에서 동일한 프로세스 특성을 가짐에 따라 특정 분할프로세스의 처리가 가능한 다수의 분산처리슬레이브장치(210)가 존재하는 경우, 분할처리부(120)는 특정 분할프로세스에 대응하는 다수의 분산처리슬레이브장치(210) 각각에서 처리 가능한 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할함으로써, 상기 다수의 분산처리슬레이브장치(210) 각각에 상기 특정 분할프로세스에서 분할된 프로세스가 할당될 수 있도록 한다(S270-S280).At this time, when there are a plurality of distributed processing slave devices 210 capable of processing a specific divided process as having the same process characteristic in the distributed processing slave device 210, By dividing the specific partitioning process on the basis of the process processing capacity that can be processed by each of the plurality of distributed processing slave devices 210, the divided processes in the specific partitioning process are allocated to each of the plurality of distributed processing slave devices 210 (S270 - S280).

다음으로, 할당처리부(130)는 분할프로세스로의 분할이 완료되면, 각 분할프로세스를 분산처리슬레이브장치(210) 각각에 할당(제공)함으로써, 각 분산처리슬레이브장치(210)를 통해 상기 처리대상프로세스에 대한 분산처리가 수행되도록 한다(S290).Next, when the division into the division process is completed, the allocation processing unit 130 allocates (provides) each divided process to each of the distributed processing slave devices 210, So that the distributed processing for the process is performed (S290).

이후, 통합처리부(140)는 각 분산처리슬레이브장치(210)로부터 할당된 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합함으로써, 상기 처리대상프로세스의 처리 결과로서 산출하게 된다(S300).Thereafter, the integration processing unit 140 receives the processing results of the divided processes allocated from the respective distributed processing slave devices 210, and integrates the received processing results to calculate the processing result of the processing target process (S300) .

이상에서 살펴본 바와 같이, 본 발명의 일 실시예에 따른 분산 처리 방법에 따르면, 다수의 슬레이브장치(200) 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치(210)를 선별하고, 선별된 분산처리슬레이브장치(210)의 상태정보를 기초로 상기 처리대상프로세스를 분할프로세스로 분할하여 각 분산처리슬레이브장치(210)에 할당하여 처리하도록 함으로써, 각 슬레이브장치(200)의 현재 상태에 적합한 프로세스 할당이 이루어짐에 따라 처리대상프로세스에 대해 효율적인 분산 처리를 수행할 수 있다.As described above, according to the distributed processing method according to the embodiment of the present invention, the distributed processing slave devices 210 capable of distributing the processing target process out of the plurality of slave devices 200 are selected, The processing target process is divided into divided processes on the basis of the status information of the processing slave device 210 and assigned to the respective distributed processing slave devices 210 so as to perform process allocation corresponding to the current state of each slave device 200 An efficient distributed processing can be performed on the processing target process.

한편, 여기에 제시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Meanwhile, the steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, or may be embodied in a computer readable medium, in the form of a program instruction, which may be carried out through various computer means. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

지금까지 본 발명을 바람직한 실시 예를 참조하여 상세히 설명하였지만, 본 발명이 상기한 실시 예에 한정되는 것은 아니며, 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 또는 수정이 가능한 범위까지 본 발명의 기술적 사상이 미친다 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

본 발명의 분산 처리 시스템 및 그 방법, 그리고 이에 적용되는 장치에 따르면, 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하고, 선별된 분산처리슬레이브장치의 상태정보에 적합하도록 상기 처리대상프로세스를 분할프로세스로 분할하여 처리한다는 점에서, 기존 기술의 한계를 뛰어 넘음에 따라 관련 기술에 대한 이용만이 아닌 적용되는 장치의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.According to the distributed processing system and method of the present invention and the apparatus applied thereto, it is possible to select a distributed processing slave device capable of performing distributed processing of a process target process among a plurality of slave devices, and is suitable for the status information of the selected distributed processing slave device The present invention is not limited to the use of the related art, but merely has a possibility of marketing or operating the device, and is practically and practically possible. This is an invention that is industrially usable because it is possible.

100: 마스터장치
110: 장치선별부 120: 분할처리부
130: 할당처리부 140: 통합처리부
150: 제어부
200: 슬레이브장치
210: 분산처리슬레이브장치
100: Master device
110: device selector 120:
130: Assignment processor 140:
150:
200: Slave device
210: distributed processing slave device

Claims (18)

다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별부;
상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리부; 및
상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 할당처리부를 포함하는 것을 특징으로 하는 마스터장치.
A device sorting unit for sorting distributed process slave devices capable of distributing processable process among a plurality of slave devices;
A division processing unit that divides the process target process into at least two divided processes based on status information of the distributed processing slave device; And
And an allocation processing unit that allocates and processes the at least two divided processes to each of the distributed processing slave devices.
제 1 항에 있어서,
상기 마스터장치는,
상기 분산처리슬레이브장치로부터 상기 적어도 두개의 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합하여 상기 처리대상프로세스의 처리 결과로서 산출하는 통합처리부를 더 포함하는 것을 특징으로 하는 마스터장치.
The method according to claim 1,
The master device comprises:
Further comprising an integration processor for receiving the processing results of the at least two divided processes from the distributed processing slave device and integrating the received processing results and calculating the processing results as a processing result of the processing target process.
제 1 항에 있어서,
상기 분산처리슬레이브장치는,
상기 다수의 슬레이브장치 각각의 상기 상태정보를 기초로 선별되며,
상기 장치선별부는,
상기 다수의 슬레이브장치 각각의 상기 상태정보를 확인하여, 상기 처리대상프로세스의 분산 처리에 적합한 상기 상태정보를 갖는 슬레이브장치를 상기 분산처리슬레이브장치로 선별하는 것을 특징으로 하는 마스터장치.
The method according to claim 1,
The distributed processing slave device includes:
Wherein the plurality of slave devices are selected based on the status information of the plurality of slave devices,
The device selection unit,
And slave devices having the status information suitable for the distributed processing of the process target process are selected by the distributed process slave device by checking the status information of each of the plurality of slave devices.
제 3 항에 있어서,
상기 상태정보는,
상기 다수의 슬레이브장치 각각이 처리 가능한 프로세스 특성 및 프로세스 처리용량 중 적어도 하나를 포함하는 것을 특징으로 하는 마스터장치.
The method of claim 3,
The status information may include:
Wherein each of the plurality of slave devices includes at least one of a process characteristic that can be processed and a process process capacity.
제 4 항에 있어서,
상기 분할처리부는,
상기 분산처리슬레이브장치 각각이 갖는 상기 프로세스 특성에 대응하도록 상기 처리대상프로세스를 상기 적어도 두개의 분할프로세스로 분할하고,
상기 할당처리부는,
상기 적어도 두개의 분할프로세스 각각을 대응되는 프로세스 특성을 갖는 분산처리슬레이브장치에 할당하여 처리하도록 하는 것을 특징으로 하는 마스터장치.
5. The method of claim 4,
The division processing unit,
Dividing the processing target process into the at least two divided processes so as to correspond to the process characteristic of each of the distributed processing slave devices,
The allocation processing unit,
And allocates and processes each of the at least two divided processes to a distributed processing slave device having a corresponding process characteristic.
제 5 항에 있어서,
상기 할당처리부는,
상기 적어도 두개의 분할프로세스 중 특정 분할프로세스에 대응하는 프로세스 특성을 갖는 분산처리슬레이브장치가 적어도 두개인 경우, 상기 적어도 두개의 분산처리슬레이브장치 각각이 갖는 상기 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할하며,
상기 할당처리부는,
상기 프로세스 처리용량을 기초로 분할된 상기 특정 분할프로세스를 상기 적어도 두개의 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 것을 특징으로 하는 마스터장치.
6. The method of claim 5,
The allocation processing unit,
Wherein when there are at least two distributed processing slave devices having process characteristics corresponding to a specific divided process among the at least two divided processes, the specific divided process is performed based on the process processing capacity possessed by each of the at least two distributed processing slave devices Split,
The allocation processing unit,
And allocates and processes the specific divided process divided on the basis of the process processing capacity to each of the at least two distributed processing slave devices.
제 5 항에 있어서,
상기 분할처리부는,
상기 프로세스 특성이 특정 웹사이트로부터 이미지를 수집하는 이미지 수집 프로세스 특성, 상기 이미지에 포함된 객체를 인식하는 객체 인식 프로세스 특성, 및 상기 객체와 관련된 텍스트를 처리하는 텍스트 처리 프로세스 특성 중 적어도 하나를 포함하는 경우, 상기 분할프로세스가 이미지 수집 프로세스, 객체 인식 프로세스, 및 텍스트 처리 프로세스 중 적어도 하나가 되도록 상기 처리대상프로세스를 분할하는 것을 특징으로 하는 마스터장치.
6. The method of claim 5,
The division processing unit,
Wherein the process characteristic comprises at least one of an image acquisition process characteristic for collecting an image from a particular web site, an object recognition process characteristic for recognizing an object included in the image, and a text processing process characteristic for processing text associated with the object Wherein the dividing process divides the process target process into at least one of an image collection process, an object recognition process, and a text processing process.
제 1 항에 있어서,
상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 있는지 여부를 판단하는 판단부를 더 포함하며,
상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 없는 것으로 판단되는 경우, 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 상기 분산처리슬레이브장치 중 하나에서 수행되도록 하는 것을 특징으로 하는 마스터장치.
The method according to claim 1,
Further comprising a determination unit that determines whether the master device can perform the partitioning of the process target process and the allocation process for the at least two divided processes,
Wherein when the master device determines that the process target process can not be divided and that the process for allocating the at least two divided processes can not be performed, the process for dividing the process target process and the process for allocating the at least two divided processes To be performed in one of the distributed processing slave devices.
마스터장치가 다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별단계;
상기 마스터장치가 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리단계;
상기 마스터장치가 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하는 할당처리단계; 및
상기 분산처리슬레이브장치 각각이 상기 마스터장치로부터 할당된 분할프로세스를 처리하고, 분할프로세스 처리 결과를 상기 마스터장치에 전송하는 프로세스처리단계를 포함하는 것을 특징으로 하는 분산 처리 방법.
A device selecting step of selecting a distributed processing slave device in which the master device is capable of distributing the processing target process among a plurality of slave devices;
A division processing step of the master device dividing the processing target process into at least two divided processes based on status information of the distributed processing slave device;
An allocation processing step in which the master device allocates the at least two divided processes to each of the distributed processing slave devices; And
And each of the distributed processing slave devices processes a partitioning process allocated from the master device, and transfers the partitioning process result to the master device.
다수의 슬레이브장치 중 처리대상프로세스의 분산 처리가 가능한 분산처리슬레이브장치를 선별하는 장치선별단계;
상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하는 분할처리단계; 및
상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 할당처리단계를 포함하는 것을 특징으로 하는 마스터장치의 동작 방법.
A device selecting step of selecting a distributed processing slave device capable of performing distributed processing of a process target process among a plurality of slave devices;
A division processing step of dividing the processing target process into at least two divided processes based on status information of the distributed processing slave device; And
And allocating and processing the at least two divided processes to each of the distributed processing slave devices.
제 10 항에 있어서,
상기 분산처리슬레이브장치는,
상기 다수의 슬레이브장치 각각의 상기 상태정보를 기초로 선별되며,
상기 장치선별단계는,
상기 다수의 슬레이브장치 각각의 상기 상태정보를 확인하여, 상기 처리대상프로세스의 분산 처리에 적합한 상기 상태정보를 갖는 슬레이브장치를 상기 분산처리슬레이브장치로 선별하는 것을 특징으로 하는 마스터장치의 동작 방법.
11. The method of claim 10,
The distributed processing slave device includes:
Wherein the plurality of slave devices are selected based on the status information of the plurality of slave devices,
In the device selection step,
Wherein said slave device checks said status information of each of said plurality of slave devices and selects slave devices having said status information suitable for distributed processing of said process target with said distributed processing slave device.
제 11 항에 있어서,
상기 상태정보는,
상기 다수의 슬레이브장치 각각이 처리 가능한 프로세스 특성 및 프로세스 처리용량 중 적어도 하나를 포함하는 것을 특징으로 하는 마스터장치의 동작 방법.
12. The method of claim 11,
The status information may include:
Wherein each of the plurality of slave devices includes at least one of a process characteristic that can be processed and a process process capacity.
제 12 항에 있어서,
상기 분할처리단계는,
상기 분산처리슬레이브장치 각각이 갖는 상기 프로세스 특성에 대응하도록 상기 처리대상프로세스를 상기 적어도 두개의 분할프로세스로 분할하고,
상기 할당처리단계는,
상기 적어도 두개의 분할프로세스 각각을 대응되는 프로세스 특성을 갖는 분산처리슬레이브장치에 할당하여 처리하도록 하는 것을 특징으로 하는 마스터장치.
13. The method of claim 12,
Wherein the dividing step comprises:
Dividing the processing target process into the at least two divided processes so as to correspond to the process characteristic of each of the distributed processing slave devices,
Wherein the allocation processing step comprises:
And allocates and processes each of the at least two divided processes to a distributed processing slave device having a corresponding process characteristic.
제 13 항에 있어서,
상기 할당처리단계는,
상기 적어도 두개의 분할프로세스 중 특정 분할프로세스에 대응하는 프로세스 특성을 갖는 분산처리슬레이브장치가 적어도 두개인 경우, 상기 적어도 두개의 분산처리슬레이브장치 각각이 갖는 상기 프로세스 처리용량을 기초로 상기 특정 분할프로세스를 분할하며,
상기 할당처리단계는,
상기 프로세스 처리용량을 기초로 분할된 상기 특정 분할프로세스를 상기 적어도 두개의 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 것을 특징으로 하는 마스터장치의 동작 방법.
14. The method of claim 13,
Wherein the allocation processing step comprises:
Wherein when there are at least two distributed processing slave devices having process characteristics corresponding to a specific divided process among the at least two divided processes, the specific divided process is performed based on the process processing capacity possessed by each of the at least two distributed processing slave devices Split,
Wherein the allocation processing step comprises:
And allocates and processes the specific divided process based on the process processing capacity to each of the at least two distributed processing slave devices.
제 13 항에 있어서,
상기 분할처리단계는,
상기 프로세스 특성이 특정 웹사이트로부터 이미지를 수집하는 이미지 수집 프로세스 특성, 상기 이미지에 포함된 객체를 인식하는 객체 인식 프로세스 특성, 및 상기 객체와 관련된 텍스트를 처리하는 텍스트 처리 프로세스 특성 중 적어도 하나를 포함하는 경우, 상기 분할프로세스가 이미지 수집 프로세스, 객체 인식 프로세스, 및 텍스트 처리 프로세스 중 적어도 하나가 되도록 상기 처리대상프로세스를 분할하는 것을 특징으로 하는 마스터장치의 동작 방법.
14. The method of claim 13,
Wherein the dividing step comprises:
Wherein the process characteristic comprises at least one of an image acquisition process characteristic for collecting an image from a particular web site, an object recognition process characteristic for recognizing an object included in the image, and a text processing process characteristic for processing text associated with the object Wherein the dividing process divides the process target process into at least one of an image collection process, an object recognition process, and a text processing process.
제 10 항에 있어서,
상기 방법은,
상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 있는지 여부를 판단하는 판단단계; 및
상기 마스터장치가 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 수행할 수 없는 것으로 판단되는 경우, 상기 처리대상프로세스의 분할 및 상기 적어도 두개의 분할프로세스에 대한 할당 처리를 상기 분산처리슬레이브장치 중 하나에서 수행되도록 하는 처리단계를 더 포함하는 것을 특징으로 하는 마스터장치의 동작 방법.
11. The method of claim 10,
The method comprises:
A determination step of determining whether the master device can perform the partitioning of the process target process and the allocation process for the at least two divided processes; And
Wherein when the master device determines that the process target process can not be divided and that the process for allocating the at least two divided processes can not be performed, the process for dividing the process target process and the process for allocating the at least two divided processes To be performed in one of the distributed processing slave devices.
제 10 항에 있어서,
상기 방법은,
상기 분산처리슬레이브장치로부터 상기 적어도 두개의 분할프로세스의 처리 결과를 수신하고, 수신된 처리 결과를 통합하여 상기 처리대상프로세스의 처리 결과로서 산출하는 통합처리단계를 더 포함하는 것을 특징으로 하는 마스터장치의 동작 방법.
11. The method of claim 10,
The method comprises:
Further comprising an integration processing step of receiving the processing results of the at least two divided processes from the distributed processing slave device and integrating the received processing results and calculating them as the processing result of the processing target process How it works.
처리대상프로세스의 분산 처리를 수행하는 분산처리슬레이브장치; 및
다수의 슬레이브장치 중 상기 처리대상프로세스의 분산 처리가 가능한 상기 분산처리슬레이브장치를 선별하고, 상기 분산처리슬레이브장치의 상태정보를 기초로 상기 처리대상프로세스를 적어도 두개의 분할프로세스로 분할하며, 상기 적어도 두개의 분할프로세스를 상기 분산처리슬레이브장치 각각에 할당하여 처리하도록 하는 마스터장치를 포함하는 것을 특징으로 하는 분산 처리 시스템.




A distributed processing slave device for performing distributed processing of a process target process; And
The distributed processing slave device capable of distributing the processing target process among a plurality of slave devices is selected and the processing target process is divided into at least two divided processes based on the status information of the distributed processing slave device, And a master device for allocating and processing the two divided processes to each of the distributed processing slave devices.




KR1020130004834A 2013-01-16 2013-01-16 System and method for distributed processing, and apparatus applied to the same KR102183274B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130004834A KR102183274B1 (en) 2013-01-16 2013-01-16 System and method for distributed processing, and apparatus applied to the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130004834A KR102183274B1 (en) 2013-01-16 2013-01-16 System and method for distributed processing, and apparatus applied to the same

Publications (2)

Publication Number Publication Date
KR20140092599A true KR20140092599A (en) 2014-07-24
KR102183274B1 KR102183274B1 (en) 2020-11-26

Family

ID=51739203

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130004834A KR102183274B1 (en) 2013-01-16 2013-01-16 System and method for distributed processing, and apparatus applied to the same

Country Status (1)

Country Link
KR (1) KR102183274B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200010645A (en) * 2018-06-27 2020-01-31 (주)이지서티 Method and apparatus for pre-processing big data

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040069059A (en) * 2003-01-28 2004-08-04 삼성전자주식회사 Distributed processing system using virtual machine, and method thereof
JP2005018266A (en) * 2003-06-24 2005-01-20 Toyota Keeramu:Kk Parallel distributed processing system, nc data creation method, and nc data creation program
KR20070056311A (en) * 2005-11-29 2007-06-04 삼성전자주식회사 Method for distributed processing of data in mobile communication terminal and distributed system
KR20090080753A (en) * 2008-01-22 2009-07-27 삼성전자주식회사 Method and apparatus for migrating task in multi-processor system
KR20120112454A (en) * 2009-11-24 2012-10-11 어드밴스드 마이크로 디바이시즈, 인코포레이티드 Distributed multi-core memory initialization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040069059A (en) * 2003-01-28 2004-08-04 삼성전자주식회사 Distributed processing system using virtual machine, and method thereof
JP2005018266A (en) * 2003-06-24 2005-01-20 Toyota Keeramu:Kk Parallel distributed processing system, nc data creation method, and nc data creation program
KR20070056311A (en) * 2005-11-29 2007-06-04 삼성전자주식회사 Method for distributed processing of data in mobile communication terminal and distributed system
KR20090080753A (en) * 2008-01-22 2009-07-27 삼성전자주식회사 Method and apparatus for migrating task in multi-processor system
KR20120112454A (en) * 2009-11-24 2012-10-11 어드밴스드 마이크로 디바이시즈, 인코포레이티드 Distributed multi-core memory initialization

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200010645A (en) * 2018-06-27 2020-01-31 (주)이지서티 Method and apparatus for pre-processing big data

Also Published As

Publication number Publication date
KR102183274B1 (en) 2020-11-26

Similar Documents

Publication Publication Date Title
TWI547817B (en) Method, system and apparatus of planning resources for cluster computing architecture
JP5664098B2 (en) Composite event distribution apparatus, composite event distribution method, and composite event distribution program
US9921861B2 (en) Virtual machine management method and information processing apparatus
CN109684071B (en) Distribution of arbitrary workload among super-converged nodes
CN107864211B (en) Cluster resource dispatching method and system
CN103797462A (en) Method, system, and device for creating virtual machine
KR101471749B1 (en) Virtual machine allcoation of cloud service for fuzzy logic driven virtual machine resource evaluation apparatus and method
US9807152B2 (en) Distributed processing device and distributed processing system as well as distributed processing method
CN112465146B (en) Quantum and classical hybrid cloud platform and task execution method
CN103810016A (en) Method and device for realizing virtual machine migration and cluster system
JP6001690B2 (en) Master device, slave device and computing method thereof for cluster computing system
CN107967164B (en) Method and system for live migration of virtual machine
US9612867B2 (en) Apparatus and method for data partition and allocation in heterogeneous multi-processor environment
CN103164253A (en) Virtual machine deployment system and virtual machine deployment method
JP6519111B2 (en) Data processing control method, data processing control program and data processing control device
JP7006607B2 (en) Distributed processing system, distributed processing method, and recording medium
CN112148468A (en) Resource scheduling method and device, electronic equipment and storage medium
CN104580194A (en) Virtual resource management method and device oriented to video applications
JP2013114626A (en) Arrangement device, arrangement program, and arrangement method
CN114048006A (en) Virtual machine dynamic migration method and device and storage medium
US20230155958A1 (en) Method for optimal resource selection based on available gpu resource analysis in large-scale container platform
JP2011141703A (en) System, method and program for arranging resource
JP5043166B2 (en) Computer system, data search method, and database management computer
KR20140092599A (en) System and method for distributed processing, and apparatus applied to the same
JPWO2016084327A1 (en) Resource prediction apparatus, resource prediction method, resource prediction program, and distributed processing system

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2019101002784; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20190820

Effective date: 20200811

GRNO Decision to grant (after opposition)