KR101055548B1 - Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing - Google Patents

Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing Download PDF

Info

Publication number
KR101055548B1
KR101055548B1 KR1020090037151A KR20090037151A KR101055548B1 KR 101055548 B1 KR101055548 B1 KR 101055548B1 KR 1020090037151 A KR1020090037151 A KR 1020090037151A KR 20090037151 A KR20090037151 A KR 20090037151A KR 101055548 B1 KR101055548 B1 KR 101055548B1
Authority
KR
South Korea
Prior art keywords
resource
data
job
manager
available resources
Prior art date
Application number
KR1020090037151A
Other languages
Korean (ko)
Other versions
KR20100118357A (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 KR1020090037151A priority Critical patent/KR101055548B1/en
Publication of KR20100118357A publication Critical patent/KR20100118357A/en
Application granted granted Critical
Publication of KR101055548B1 publication Critical patent/KR101055548B1/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

분산 처리를 위한 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템을 제공한다. 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 작업 대상인 데이터 및, 상기 데이터에 해당하는 데이터 특성과 상기 데이터를 처리하기 위한 요구사항을 입력 받는 데이터 입력/분석부; 상기 데이터가 처리되도록 전반의 동작을 제어하는 작업처리 중계부; 적어도 하나의 자원과 통신을 통하여 상기 자원의 속성 정보를 수집 및 유지하고 상기 데이터 특성과 요구사항에 대응되는 가용 자원을 선별하는 자원 관리부; 및, 상기 자원과의 통신을 통하여 상기 선별된 가용 자원 중 상기 데이터를 처리할 자원을 선택하여 상기 선택된 자원에 상기 데이터를 분배하고 상기 분배된 데이터에 대한 처리 결과를 제공하는 스케줄링 관리부를 포함한다.

Figure R1020090037151

분산 처리 시스템, 동적 작업 스케줄링, 시멘틱 컴퓨팅, 자원 관리

A dynamic job scheduling system based on semantic computing for distributed processing is provided. A semantic computing-based dynamic job scheduling system includes a data input / analyzer that receives data, a data object corresponding to the data, and a requirement for processing the data; A job processing relay unit controlling the overall operation so that the data is processed; A resource manager configured to collect and maintain attribute information of the resource through communication with at least one resource and to select available resources corresponding to the data characteristics and requirements; And a scheduling management unit which selects a resource for processing the data from the selected available resources through communication with the resource, distributes the data to the selected resource, and provides a processing result for the distributed data.

Figure R1020090037151

Distributed Processing System, Dynamic Job Scheduling, Semantic Computing, Resource Management

Description

분산 처리를 위한 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템{SEMANTIC COMPUTING-BASED DYNAMIC JOB SCHEDULING SYSTEM FOR DISTRIBUTED PROCESSING}Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing {SEMANTIC COMPUTING-BASED DYNAMIC JOB SCHEDULING SYSTEM FOR DISTRIBUTED PROCESSING}

본 발명의 실시예들은 지리적으로 분산되어 있는 이기종의 자원에 작업을 분배하여 분산 처리하기 위한 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템에 관한 것이다.Embodiments of the present invention relate to a dynamic job scheduling system based on semantic computing for distributing and distributing jobs to heterogeneous resources geographically dispersed.

그리드 컴퓨팅(Grid computing)이나 분산 컴퓨팅(Distributed Computing) 환경에서 지리적으로 분산되어 있는 자원에 작업을 분배하는 방법으로는 "그리드에서 사용자의 QoS와 응용특성에 근거한 동적 자원 할당방법(국내 특허 등록 10-0621787)"이 있다. 상기한 종래의 기술은 그리드 컴퓨팅 환경에서 자원의 성능을 고려하여 단시간에 작업을 처리하기 위해 비선형모델을 선형 모델로 변환하여 목적함수를 도출한다. 그러나, 목적함수에 포함 된 인자로 자원의 계산 능력을 나타내는 CPU의 성능과 작업 부하량, 네트워크의 상태만을 표시하여 자원의 다양한 동적인 상태를 반영하여 효율적으로 스케줄링하기 어렵다. 또한, 새로운 종류의 자원을 정의하여 추가 및 갱신하거나 사용자의 요구사항과 처리 할 데이터의 특성에 따른 최적의 작업 스케줄링 기법을 적용하기에는 호환성과 확장성에 문제가 있다.In a grid computing or distributed computing environment, a method of distributing work to geographically dispersed resources is described as "a dynamic resource allocation method based on a user's QoS and application characteristics in a grid. 0621787) ". The above-described conventional technology derives an objective function by converting a nonlinear model into a linear model to process a task in a short time in consideration of the performance of resources in a grid computing environment. However, it is difficult to schedule efficiently by reflecting various dynamic states of resources by displaying only CPU performance, workload, and network state, which represent resource calculation capability as factors included in the objective function. In addition, there is a problem in compatibility and scalability in defining and adding a new kind of resource and updating or applying an optimal job scheduling method according to user requirements and characteristics of data to be processed.

기존의 지리적으로 분산되어 있는 자원에 작업을 분배하는 또 다른 방법으로는 "분산 처리 시스템의 작업 스케줄링 장치 및 방법(국내 공개 특허 특1998-079594)"이 있다. 상기한 종래의 기술은 임의의 주기에 따라 작업을 스케줄링하는 능력, 작업을 건너뛰는 능력, 원격으로 네트워크 내의 자원 상에서 발생하는 작업들을 스케줄링하는 방법을 제공한다. 그러나, 지리적으로 분산 된 컴퓨팅 환경에서 상기한 종래의 기술은 자원의 성능과 동적인 변화, 네트워크의 혼잡 등을 고려하지 않음으로써 자원 이용의 불균형을 초래하거나 네트워크의 혼잡을 초래할 수 있다.Another method of distributing jobs to existing geographically dispersed resources is "a job scheduling apparatus and method of a distributed processing system" (Korean Patent Laid-Open Publication No. 1998-079594). The prior art described above provides the ability to schedule a task at any period, the ability to skip a task, and a method of scheduling tasks occurring on resources in a network remotely. However, in the geographically distributed computing environment, the above-described conventional techniques may cause an imbalance in resource usage or congestion of the network by not considering the performance and dynamic change of resources, congestion of the network, and the like.

본 발명은 이기종의 자원으로 이루어진 컴퓨팅 환경에서 보다 용이한 자원관리가 가능하고 시스템 확장이 용이한 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템을 제공한다.The present invention provides a dynamic task scheduling system based on semantic computing that enables easier resource management and easy system expansion in a heterogeneous computing environment.

본 발명은 사용자의 예산과 데이터 특성에 따라 가장 적합한 자원을 이용하여 작업을 처리할 수 있는 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템을 제공한다.The present invention provides a dynamic task scheduling system based on semantic computing that can process a task using a resource most suitable according to a user's budget and data characteristics.

본 발명은 분산되어 있는 컴퓨팅 자원에 작업을 분배 및 할당하기 위한 효율적인 스케줄링 기법을 제공하는 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템을 제공한다.The present invention provides a dynamic task scheduling system based on semantic computing that provides an efficient scheduling technique for distributing and allocating tasks to distributed computing resources.

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 작업 대상인 데이터 및, 상기 데이터에 해당하는 데이터 특성과 상기 데이터를 처리하기 위한 요구사항을 입력 받는 데이터 입력/분석부; 상기 데이터가 처리되도록 전반의 동작을 제어하는 작업처리 중계부; 적어도 하나의 자원과 통신을 통하여 상기 자원의 속성 정보를 수집 및 유지하고 상기 데이터 특성과 요구사항에 대응되는 가용 자원을 선별하는 자원 관리부; 및, 상기 자원과의 통신을 통하여 상기 선별된 가용 자원 중 상기 데이터를 처리할 자원을 선택하여 상기 선택된 자원에 상기 데이터를 분배하고 상기 분배된 데이터에 대한 처리 결과를 제공하는 스케 줄링 관리부를 포함한다.A semantic computing-based dynamic job scheduling system according to an embodiment of the present invention includes a data input / analyzer that receives data for a task, data characteristics corresponding to the data, and requirements for processing the data; A job processing relay unit which controls the overall operation so that the data is processed; A resource manager configured to collect and maintain attribute information of the resource through communication with at least one resource and to select available resources corresponding to the data characteristics and requirements; And a scheduling manager configured to select a resource to process the data among the selected available resources through communication with the resource, distribute the data to the selected resource, and provide a processing result for the distributed data. .

본 발명의 일실시예에서 상기 데이터 입력/분석부는 상기 입력된 데이터 특성을 정수 형태로 변환한 후 상기 작업처리 중계부로 전달하는 데이터 분석기와, 상기 입력된 요구 사항을 정수 형태로 변환한 후 상기 작업처리 중계부로 전달하는 요구사항 분석기를 포함한다.In an embodiment of the present invention, the data input / analysis unit converts the input data characteristic into an integer form and then transfers the data analyzer to the work processing relay unit, and converts the input requirement into an integer form and then performs the operation. It includes a requirements analyzer that forwards to the processing relay.

본 발명의 일실시예에서 상기 작업처리 중계부는 상기 자원 관리부에 상기 가용 자원에 대한 자원 목록을 요청하는 가용자원 요청기와, 상기 자원 목록의 요청에 따라 상기 자원 관리부에서 제공하는 상기 가용 자원의 자원 목록을 수신하는 가용자원 수신기와, 상기 데이터 특성과 요구사항에 대하여 정의된 추론 규칙을 이용하여 상기 수신된 자원 목록의 가용 자원 중 상기 데이터 특성과 요구사항에 대응되는 자원을 선택하는 자원 선택기를 포함한다.In one embodiment of the present invention, the job processing relay unit is an available resource requester for requesting a resource list for the available resources from the resource manager, and a resource list of the available resources provided by the resource manager in response to a request of the resource list. And a resource selector for selecting a resource corresponding to the data characteristic and the requirement among the available resources of the received resource list by using an inference rule defined for the data characteristic and the requirement. .

본 발명의 일실시예에서 상기 자원 관리부는 상기 자원으로 속성 정보 요청 메시지를 전송하는 자원정보 요청기와, 상기 요청 메시지에 대하여 상기 자원에서 제공하는 상기 속성 정보를 수신하는 자원정보 수신기와, 상기 자원을 관리하기 위해 상기 수신된 속성 정보를 온톨로지 표준 언어를 이용하여 표현하는 자원 온톨로지 관리기와, 상기 온톨로지 표준 언어로 표현된 속성 정보를 상기 자원과 연관하여 저장하는 자원정보 저장소와, 상기 작업처리 중계부의 제어 하에 상기 데이터 특성과 요구사항에 대응되는 가용 자원을 선별하여 상기 가용 자원으로 구성되는 자원 목록을 상기 작업처리 중계부로 제공하는 자원정보 송신기를 포함한다.In an embodiment of the present invention, the resource manager may include a resource information requester for transmitting an attribute information request message to the resource, a resource information receiver for receiving the attribute information provided by the resource with respect to the request message, and the resource. A resource ontology manager for expressing the received attribute information using an ontology standard language for management, a resource information repository for storing the attribute information expressed in the ontology standard language in association with the resource, and control of the job processing relay unit And a resource information transmitter that selects available resources corresponding to the data characteristics and requirements and provides a resource list composed of the available resources to the work processing relay.

본 발명의 일실시예에서 상기 스케줄링 관리부는 상기 자원의 동적인 속성 정보를 수신하는 자원상태정보 수신기와, 상기 자원의 속성 정보에 대하여 정의된 추론 규칙을 이용하여 상기 수신된 동적인 속성 정보에 따라 상기 가용 자원의 순위를 결정하는 추론 엔진부와, 상기 가용 자원 중 상기 등급이 가장 높은 자원에 상기 데이터를 분배 및 할당하는 작업 분배기와, 상기 데이터를 할당받은 자원으로부터 상기 데이터에 대한 처리 결과를 수신하여 수신된 처리 결과를 취합하는 처리완료 데이터 취합기를 포함한다.In one embodiment of the present invention, the scheduling management unit according to the received dynamic attribute information using a resource state information receiver for receiving the dynamic attribute information of the resource and an inference rule defined for the attribute information of the resource. An inference engine unit for determining a rank of the available resources, a job divider for distributing and allocating the data to a resource having the highest rank among the available resources, and receiving a processing result of the data from the resource to which the data is allocated And a processed data collector for collecting the received processing results.

본 발명의 일실시예에 따르면, 사용자의 요구 사항과 데이터의 특성에 따라 선택하는 자원들을 지식 기반의 규칙으로 정의하게 되는데, 여기서 정의된 규칙들은 사용자나 시스템 전문가에 의해 새롭게 추가, 수정, 삭제가 용이한 장점이 있으며 사용자의 예산과 데이터 특성에 따라 가장 적합한 자원들을 선택함으로써 마감기한 내에 처리하여 사용자의 만족도(QoS)를 높일 수 있다.According to an embodiment of the present invention, resources selected according to a user's requirements and data characteristics are defined as rules based on knowledge, wherein the defined rules are newly added, modified, or deleted by a user or a system expert. There is an easy advantage, and by selecting the most suitable resources according to the user's budget and data characteristics, it can be processed within the deadline to increase the user satisfaction (QoS).

본 발명의 일실시예에 따르면, 사용자가 처리하려는 데이터를 자원의 정적인 속성으로 평가하고 다양한 동적인 변화에 따른 여러 가지 스케줄링 기법을 지식 기반의 규칙으로 정의하여 처리함으로써 작업 처리 도중 발생할 수 있는 오류나 작업 손실에 대한 신속한 대처가 가능하여 효율적인 작업 처리를 제공할 수 있다. 또한, 낮은 작업 손실과 높은 작업 처리율 및 짧은 응답 시간을 제공함으로써 사용자 작업을 처리함에 있어서 높은 효율성 및 안정성을 제공 할 수 있다.According to an embodiment of the present invention, an error that may occur during job processing may be evaluated by evaluating data to be processed by a user as a static property of a resource and defining and processing various scheduling techniques according to various dynamic changes as knowledge-based rules. Rapid response to loss of work can be provided to provide efficient job handling. In addition, by providing low work loss, high throughput, and short response time, high efficiency and stability in processing user tasks can be provided.

본 발명의 일실시예에 따르면, 이기종의 자원으로 이루어진 컴퓨팅 환경에서 W3C(World Wide Web Consortium)에서 제정한 온톨로지 표준 언어인 OWL(Web Ontology Language)을 이용하여 자원들을 기술 및 관리함으로써 새로운 자원의 추가 및 삭제, 갱신 등 자원관리가 더욱 용이하고 시스템의 확장성과 호환성을 높일 수 있다.According to an embodiment of the present invention, a new resource is added by describing and managing resources using OWL (Web Ontology Language), an ontology standard language established by the World Wide Web Consortium (W3C), in a computing environment composed of heterogeneous resources. And it is easier to manage resources such as deletion and update, and can improve the scalability and compatibility of the system.

이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited or limited by the embodiments. Like reference numerals in the drawings denote like elements.

도 1은 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템(100)의 구성을 설명하기 위한 블록도이다.1 is a block diagram illustrating a configuration of a dynamic job scheduling system 100 based on semantic computing according to an embodiment of the present invention.

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템(100)은 사용자(10)의 요구 사항과 데이터의 특성에 따라 지리적으로 분산되어 있는 자원부(30)에 작업을 분배 및 할당한다.The semantic computing-based dynamic job scheduling system 100 according to an embodiment of the present invention distributes and allocates a job to a resource unit 30 geographically dispersed according to the user's 10 requirements and data characteristics.

도 1을 참고하면, 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템(100)은 데이터 입력/분석부(110), 작업처리 중계부(120), 자원 관리부(130), 스케줄링 관리부(140)를 포함한다.Referring to FIG. 1, the semantic computing-based dynamic job scheduling system 100 according to an embodiment of the present invention includes a data input / analyzer 110, a job processing relay 120, a resource manager 130, and scheduling It includes a management unit 140.

데이터 입력/분석부(110)는 사용자(10)로부터 처리해야 할 데이터와 함께 상기 데이터의 특성과 요구사항을 입력 받고 작업처리 중계부(120)로 작업을 처리할 자원부(30)의 선택을 의뢰하는 역할을 수행한다.The data input / analysis unit 110 receives the characteristics and requirements of the data together with the data to be processed from the user 10 and requests the work processing relay unit 120 to select a resource unit 30 to process the work. It plays a role.

작업처리 중계부(120)는 처리할 자원부(30)를 선택하고 전체 작업 수행에 대한 감독 역할을 수행한다. 작업처리 중계부(120)는 데이터 입력/분석부(110)의 요청에 따라 자원 관리부(130)로 자원부(30)의 정보를 요청하고 자원 관리부(130)로부터 자원 정보 결과 메시지를 전달받아 자원부(30)를 선택한 후 스케줄링 관리부(140)로 작업 처리를 의뢰한다.The job processing relay unit 120 selects the resource unit 30 to be processed and performs a supervisory role for performing the entire work. The job processing relay unit 120 requests the information of the resource unit 30 to the resource manager 130 according to the request of the data input / analysis unit 110 and receives the resource information result message from the resource manager 130. After selecting 30), the scheduling management unit 140 requests a job to be processed.

자원 관리부(130)는 이기종 자원을 수집하여 유지하는 역할을 수행한다. 자원 관리부(130)는 자원부(30)로 자원 정보 수집 요청 메시지를 전송하고 자원부(30)로부터 상기 자원 정보 수집 요청 메시지에 대한 자원 정보 응답 메시지를 수신하여 수신된 자원 정보 응답 메시지를 통해 자원부(30)의 정보를 저장 및 갱신, 유지한다. 자원 관리부(130)는 작업처리 중계부(120)로부터 자원 정보 요청이 수신되면 유지하고 있는 자원부(30)의 정보를 나타내는 자원 정보 결과 메시지를 작업처리 중계부(120)로 전송한다.The resource manager 130 collects and maintains heterogeneous resources. The resource manager 130 transmits the resource information collection request message to the resource unit 30, receives the resource information response message for the resource information collection request message from the resource unit 30, and receives the resource unit 30 through the received resource information response message. Save, update, and maintain information in The resource manager 130 transmits a resource information result message indicating the information of the resource unit 30 that is maintained when the resource information request is received from the job processing relay unit 120 to the job processing relay unit 120.

스케줄링 관리부(140)는 작업처리 중계부(120)로부터 작업 처리 의뢰가 수신되면 자원부(30)에게 작업을 분배 및 할당하는 역할을 수행한다. 스케줄링 관리부(140)는 추론을 통해 작업을 자원부(30)로 분배 및 할당한 후 작업을 처리하는 자원부(30)로부터 작업에 대한 처리 결과를 전송 받아 결과를 취합하여 사용자(10)에게 처리 결과를 제공한다.The scheduling manager 140 distributes and allocates a job to the resource unit 30 when a job processing request is received from the job processing relay 120. The scheduling manager 140 distributes and allocates a job to the resource unit 30 through inference, receives a result of the job from the resource unit 30 that processes the job, collects the result, and collects the result to the user 10. to provide.

도 2를 참조하여 데이터 입력/분석부(110)의 내부 구성과 동작을 상세하게 설명한다.Referring to Figure 2 will be described in detail the internal configuration and operation of the data input / analysis unit 110.

도 2에 도시한 바와 같이, 데이터 입력/분석부(110)는 사용자(10)로부터 처리하려는 데이터를 입력받는 사용자 데이터 수신기(210)와, 상기 입력된 데이터의 특성을 추출하는 데이터 분석기(230)와, 상기 입력된 데이터에서 자원 사용 예산과 마감기한 정보를 추출하는 요구사항 분석기(250)를 포함한다.As shown in FIG. 2, the data input / analyzer 110 receives a user data receiver 210 that receives data to be processed from the user 10, and a data analyzer 230 that extracts characteristics of the input data. And a requirement analyzer 250 for extracting resource usage budget and deadline information from the input data.

사용자 데이터 수신기(210)는 사용자(10)가 처리하려는 데이터를 입력받는다. 여기서, 데이터란 이미지, 문자, 계산 등등 컴퓨팅 자원을 이용하여 처리되어야 할 작업을 총칭한다. 사용자(10)는 처리하고자 하는 데이터를 송신하기에 앞서 데이터의 종류와 크기 등의 데이터 특성, 예산, 마감기한 등의 요구사항을 입력하여 전송한다. 일기예보나 유전자 분석과 같이 자연과학과 공학분야에서의 데이터는 대규모이기 때문에 한번에 전송되어 입력되지 못한다. 이러한 경우 사용자 데이터 수신기(210)는 사용자(10)로부터 데이터를 입력 받은 후 데이터가 자원부(30)에 할당될 때까지 작업 큐(queue)에 저장하고 있다가 자원이 선정되면 작업 큐에 저장된 데이터를 스케줄링 관리부(140)로 전송한다.The user data receiver 210 receives data to be processed by the user 10. Here, data is a generic term for work to be processed using computing resources such as images, text, calculation, and the like. Prior to transmitting the data to be processed, the user 10 inputs and transmits data characteristics such as the type and size of data, a budget, a deadline, and the like. Data from natural sciences and engineering fields, such as weather forecasts and genetic analysis, are so large that they cannot be transmitted at one time. In this case, the user data receiver 210 receives data from the user 10 and stores the data in the work queue until the data is allocated to the resource unit 30. Transmission to the scheduling manager 140.

데이터 분석기(230)는 사용자가 처리하려는 데이터의 특성을 입력 받아 분석한다. 여기서, 데이터의 특성이란 사용자의 데이터가 많은 저장 공간을 요구하는 대용량의 데이터인지, 빠른 계산을 필요로 하는 계산 데이터인지 등에 대한 정보를 포함할 수 있다. 데이터 분석기(230)는 상기 분석된 데이터의 특성을 정수 형태로 변환하고 정수 형태로 변환된 데이터의 특성을 작업처리 중계부(120)로 전송한다.The data analyzer 230 receives and analyzes characteristics of data to be processed by the user. Here, the characteristics of the data may include information on whether the user's data is a large amount of data requiring a large storage space or calculated data requiring fast calculation. The data analyzer 230 converts the analyzed characteristic of the data into an integer form and transmits the characteristic of the converted data to the work processing relay 120.

요구사항 분석기(250)는 사용자의 요구사항을 입력 받아 분석한다. 여기서, 사용자의 요구사항이란 사용자가 자원을 이용하여 지출할 수 있는 예산과, 처리하려는 데이터가 언제까지 끝나야 하는지에 대한 마감기한을 포함할 수 있다. 요구사항 분석기(250)는 사용자의 요구사항을 정수 형태로 변환하고 정수 형태로 변환된 요구사항을 작업처리 중계부(120)로 전송한다.The requirement analyzer 250 receives and analyzes a user's requirement. Here, the user's requirements may include a budget that the user can spend using resources and a deadline for when the data to be processed should end. The requirement analyzer 250 converts the user's requirements into an integer form and transmits the converted requirements to the job processing relay unit 120.

도 3을 참조하여 작업처리 중계부(120)의 내부 구성과 동작을 상세하게 설명한다.An internal configuration and operation of the job processing relay 120 will be described in detail with reference to FIG. 3.

도 3에 도시한 바와 같이, 작업처리 중계부(120)는 데이터 입력/분석부(110)로부터 자원선택 의뢰를 수신하여 자원 관리부(130)에 현재 사용되지 않는 가용 자원을 요청하는 가용자원 요청기(310)와, 자원 관리부(130)로부터 가용 자원의 정보 결과 메시지를 받는 가용자원 수신기(330)와, 가용한 자원 목록을 바탕으로 데이터의 특성과 사용자의 요구사항에 적합한 자원을 지식 기반의 추론을 거쳐 선택하는 자원 선택기(350)와, 전반적인 작업 수행에 대한 감독 역할을 수행하는 작업 관리기(370)를 포함 할 수 있다.As shown in FIG. 3, the job processing relay unit 120 receives a resource selection request from the data input / analysis unit 110 to request available resources not currently used by the resource management unit 130. Knowledge-based inference of the resources suitable for the characteristics of the data and the requirements of the user based on the available resource receiver 330, the available resource receiver 330 receiving the information result message of the available resources from the resource manager 130, and the available resource list. It may include a resource selector 350 to select through, and a task manager 370 to perform a supervisory role for performing the overall task.

가용자원 요청기(310)는 자원 관리부(130)에 현재 이용 가능한 자원 목록을 요청한다. 여기서, 가용 자원이란 지리적으로 분산되어 있는 자원부(30) 중 CPU, RAM의 이용률이 일정 비율이상 사용되지 않고 있는 유휴 컴퓨팅 자원을 의미한다.The available resource requester 310 requests a list of currently available resources from the resource manager 130. Here, the available resources mean idle computing resources in which the utilization rate of CPU and RAM is not used for a predetermined ratio among the resource units 30 geographically dispersed.

가용자원 수신기(330)는 네트워크를 통하여 자원 관리부(130)로부터 현재 이용 가능한 자원 목록을 수신하고 수신된 가용 자원 목록을 자원 선택기(350)로 전송한다. 가용자원 수신기(330)는 작업 처리를 실패하거나 자원의 갑작스러운 전원 종료 및 네트워크 회선의 단절 등 가용한 상태가 아닐 경우를 대비하여 작업이 처리완료 될 때까지 자원 관리부(130)로부터 가용한 자원 목록을 수신하여 유지한다.The available resource receiver 330 receives a list of currently available resources from the resource manager 130 through the network and transmits the received available resource list to the resource selector 350. Available resource receiver 330 is a list of resources available from the resource management unit 130 until the job is completed in case the job is not available, such as failure of the job processing or sudden power shutdown of the resource and disconnection of the network line Receive and keep it.

자원 선택기(350)는 가용 자원 목록과 데이터 특성, 사용자의 요구사항을 입력 받는다. 여기서, 자원 선택기(350)가 사용자의 요구사항 중 자원을 사용 할 때 지출 할 수 있는 예산(budget)이 넘지 않는 범위 안에서 자원을 선택하는 방법을 여러 가지 규칙으로 정의하여 부합되는 자원을 선택한다. 예를 들어, 데이터의 크기가 대용량이고 충분한 마감기한까지의 시간이 있다면 보조 기억장치는 크고, 빠르지 않더라도 저렴한 자원을 선택하게 된다. 본 발명의 일실시예에서 자원을 선택하는 방법을 표 1과 같은 형태로 규칙을 정의할 수 있으며 시스템 관리자나 사용자에 의해 추가로 규칙을 정의하거나 수정 및 갱신이 용이하게 적용할 수 있다.The resource selector 350 receives a list of available resources, data characteristics, and user requirements. In this case, the resource selector 350 selects a resource to be matched by defining a method of selecting a resource within a range not exceeding a budget that can be spent when using the resource among user requirements using various rules. For example, if the size of the data is large and there is enough time to complete the deadline, the auxiliary storage will choose a cheaper resource if it is large and not fast. In an embodiment of the present invention, a rule may be defined in the form of selecting a resource as shown in Table 1, and a rule may be additionally defined or modified and updated by a system administrator or a user.

RuleRule DescriptionDescription 1One DesktopComputer(?x) ^ CPUSpeed(?x, ?y) ^ [?y >= 3000.0] ^ organization(?x, ?z) ^ [?z = usrOrg] → 동일기관고속컴퓨터(?x)DesktopComputer (? X) ^ CPUSpeed (? X,? Y) ^ [? Y> = 3000.0] ^ organization (? X,? Z) ^ [? Z = usrOrg] → Same agency high speed computer (? X) 빠른 처리 속도와 동일한 기관에 속한 자원을 원한다.You want resources belonging to the same institution with faster processing speed. 22 Server(?x) ^ Bandwidth (?x, ?y) ^ [?y >= 100.0] ^ StorageSize (?x, ?z) ^ [?z > 5000.0] → 대용량고속서버(?x)Server (? X) ^ Bandwidth (? X,? Y) ^ [? Y> = 100.0] ^ StorageSize (? X,? Z) ^ [? Z> 5000.0] → Large High Speed Server (? X) 고속 네트워크 환경에서 대용량의 데이터 처리가 가능한 자원을 원한다.In a high-speed network environment, a resource capable of processing a large amount of data is desired. 33 Server(?x) ^ CPUSpeed(?x, ?y) ^ [?y >= 3400.0] ^ Cost(?x, ?z) ^ [?z > 15] ^ StorageSize (?x, ?k) ^ [?k < 10] → 작은데이터계산위주서버(?x)Server (? X) ^ CPUSpeed (? X,? Y) ^ [? Y> = 3400.0] ^ Cost (? X,? Z) ^ [? Z> 15] ^ StorageSize (? X,? K) ^ [? k <10] → Small data calculation server (? x) 자원이 비싸더라도 연산에 필요한 데이터 크기는 작고 처리 속도가 빠른 작은 자원을 원한다.Even if resources are expensive, we want small resources with small data size and fast processing. 44 Notebook(?x) ^ location(?x, ?y) ^ [?y = usrLoc] ^ Cost(?x, ?z) ^ [?z < 5] → 저가노트북(?x)Notebook (? X) ^ location (? X,? Y) ^ [? Y = usrLoc] ^ Cost (? X,? Z) ^ [? Z <5] → Low cost notebook (? X) 처리해야 할 속도와 크기는 상관없고, 사용자와 동일한 지역에 있는 가격이 저렴한 자원을 원한다.Regardless of the speed and size that needs to be handled, you want a low-cost resource in the same area as the user. 55 Cluster(?x) ^ numCPU(?x, ?y) ^ [?y >= 5] ^ CPUSpeed(?x, ?z) ^ [z > 3000.0] ^ OSType(?x, ?k) ^ [?k = WinFamily] ^ StorageSize (?x, ?h) ^ [?h >= 1000.0] ^ Bandwidth (?x, ?s) ^ [?s >= 100.0] → 고성능대용량고속클러스터(?x)Cluster (? X) ^ numCPU (? X,? Y) ^ [? Y> = 5] ^ CPUSpeed (? X,? Z) ^ [z> 3000.0] ^ OSType (? X,? K) ^ [? K = WinFamily] ^ StorageSize (? X,? H) ^ [? H> = 1000.0] ^ Bandwidth (? X,? S) ^ [? S> = 100.0] → High Performance High Speed Cluster (? X) 가용 CPU의 개수가 5개 이상이고, OS가 윈도우 계열이며 고속 네트워크 환경의 대용량의 처리가 가능한 자원을 원한다.I want more than 5 available CPUs, my OS is Windows, and I want a resource that can handle a large amount of data in a high-speed network environment.

자원 선택기(350)는 상기 정의된 규칙을 통해 선택된 자원 목록을 스케줄링 관리부(140)로 전송한다.The resource selector 350 transmits the resource list selected through the defined rule to the scheduling manager 140.

작업 관리기(370)는 사용자의 데이터가 처리되기 위하여 시스템이 시작되어 처리가 완료될 때까지 전체 작업 수행에 대한 감독을 수행한다. 이때, 사용자의 데이터를 처리하는 도중 자원 선택기(350)에서 선택한 자원이 갑작스러운 전원 종료나 네트워크의 단절 등에 의하여 정상적으로 작업을 처리 할 수 없는 경우 작업 관리기(370)는 이를 감지하고 자원 재 선택을 자원 선택기(350)에 명령한다. 또한, 작업 관리기(370)는 작업 처리를 실패할 경우 이에 따른 작업 재전송 및 재처리를 명령할 수 있다.The task manager 370 supervises the execution of the entire task until the system is started and the processing is completed in order for the user's data to be processed. At this time, if the resource selected by the resource selector 350 cannot process a job normally due to sudden power shutdown or network disconnection while processing the user's data, the job manager 370 detects this and selects a resource reselection. Command the selector 350. In addition, when the job manager fails, the job manager 370 may instruct a job retransmission and reprocessing accordingly.

도 4를 참조하여 자원 관리부(130)의 내부 구성과 동작을 상세하게 설명한다.An internal configuration and operation of the resource manager 130 will be described in detail with reference to FIG. 4.

도 4에 도시한 바와 같이, 자원 관리부(130)는 자원의 속성 정보를 요청하는 자원정보 요청기(410)와, 자원의 정적인 속성을 입력 받는 자원정보 수신기(430)와, 작업처리 중계부(120)의 요청에 따라 가용 자원 목록에 대하여 응답하는 자원정보 송신기(450)와, 자원의 정보와 관계를 관리하기 위해 OWL로 표현된 자원 온톨로지 관리기(470)와, 자원에 대한 속성 정보 값을 저장하는 자원정보 저장소(490)를 포함한다.As shown in FIG. 4, the resource manager 130 includes a resource information requester 410 for requesting attribute information of a resource, a resource information receiver 430 for receiving a static attribute of a resource, and a job processing relay unit. The resource information transmitter 450 responsive to the available resource list according to the request of 120, the resource ontology manager 470 represented by OWL in order to manage the information and the relationship of the resource, and the attribute information value for the resource. Resource information storage 490 to store.

자원정보 요청기(410)는 자원 속성 값에 대하여 주기적으로 자원부(30)에 요청한다. 여기서, 자원의 속성 값이란 자원의 OS 종류, CPU의 최대 클럭 속도, 보조 기억장치의 크기 등을 포함 할 수 있는 정적인 속성과; CPU 사용률, 주기억 장치 사용률, 보조 기억 장치 가용 공간 등 자원의 현재 상태에 따라 변화 할 수 있는 동적인 속성을 의미한다. 표 2는 자원의 정적인 속성을 나타낸 것이며, 표 3은 동적인 속성을 나타낸 것이다.The resource information requester 410 periodically requests the resource unit 30 for a resource attribute value. Here, the attribute value of the resource is a static attribute that may include the OS type of the resource, the maximum clock speed of the CPU, the size of the auxiliary storage, and the like; It is a dynamic attribute that can change according to the current state of resources such as CPU utilization, main memory usage, and auxiliary memory available space. Table 2 shows the static attributes of resources, and Table 3 shows the dynamic attributes.

Property
Name
Property
Name
DescriptionDescription Value TypeValue type Minimum ValueMinimum Value UnitUnit
IDID 자원 식별자Resource identifier IntegerInteger 00 ------ OSTypeOSType OS의 종류Type of OS StringString ------ ------ CPUArchTypeCPUArchType CPU의 구조CPU Structure StringString ------ ------ organizationorganization 자원이 소속 된 기관Organization to which the resource belongs StringString ------ ------ CPUSpeedCPUSpeed CPU 최대 클럭 속도CPU maximum clock speed FloatFloat 700700 MegahertzMegahertz CPUNumberCPUNumber CPU 개수CPU count IntegerInteger 1One   CacheSizeCachesize cache 메모리의 크기size of cache memory FloatFloat 256256 Kilo BytesKilo bytes RAMSizeRAMSize 주 기억 장치의 크기Size of main memory FloatFloat 3232 Mega BytesMega bytes StorageSizeStoragesize 보조기억장치의 크기Size of auxiliary memory FloatFloat 1010 Giga BytesGiga bytes BandwidthBandwidth 네트워크의 대역폭Network bandwidth FloatFloat ------ Mega BPSMega BPS CostCost 자원의 사용 금액Resource usage amount IntegerInteger ------ ------

Property
Name
Property
Name
DescriptionDescription Value TypeValue type Value RangeValue range
CPUStatusCPUStatus CPU 사용여부CPU usage BooleanBoolean true or falsetrue or false CPUUtilizationCPUUtilization CPU 사용률CPU utilization FloatFloat 0~1000-100 RAMUtilizationRAMUtilization 주기억 장치 사용률Main memory utilization FloatFloat 0~1000-100 RAMAvailableSizeRAMAvailableSize 주기억 장치 가용 공간Main memory available space FloatFloat 0~Available memory size0 ~ Available memory size StorUtilizationStorutilization 보조 기억 장치 사용률Auxiliary storage utilization FloatFloat 0~1000-100 StorAvalableSizeStorAvalableSize 보조 기억 장치 가용 공간Auxiliary memory available space FloatFloat 0~Available storage size0 ~ Available storage size NetStatusNetStatus 네트워크의 상태Status of the network FloatFloat RTTRTT JobCompletion
Time
JobCompletion
Time
Buffer에 쌓여있는 Job이 처리완료 되는 예상시간Estimated time to complete the job stored in the buffer FloatFloat 0~Estimated Time0 ~ Estimated Time
RankRank Resource의 순위Rank of Resource IntegerInteger 1~101 to 10

본 발명의 일실시예에서 자원 관리부(130)는 자원의 정적인 속성과 동적인 속성에 포함되어 있는 필드를 시스템 관리자에 의해 추가 및 삭제, 수정하여 자원정보를 저장 및 유지할 수 있다. 또한, 자원 관리부(130)는 일정시간이나 지정한 횟수가 지난 후에도 응답이 없는 자원에 대해서는 자동으로 해당 자원 정보를 자원정보 저장소(490)에서 삭제할 수 있다.In one embodiment of the present invention, the resource manager 130 may store and maintain resource information by adding, deleting, and modifying fields included in static and dynamic attributes of a resource by a system administrator. In addition, the resource manager 130 may automatically delete the corresponding resource information from the resource information storage 490 for a resource that does not respond even after a predetermined time or a specified number of times.

자원정보 수신기(430)는 자원부(30)로부터 자원의 정적인 속성에 대한 정보 값을 입력 받는다. 여기서, 자원의 정적인 속성은 자원정보 요청기(410)에 의한 주기적인 요청 메시지에 대한 응답일 수도 있고 자원부(30)가 자신의 정보가 변경되었음을 감지하여 이벤트를 발생시켜 자동으로 송신될 수도 있다. 그리고, 자원정보 수신기(430)는 수신된 자원 정보를 자원정보 저장소(490)에 저장한다.The resource information receiver 430 receives an information value about a static attribute of a resource from the resource unit 30. Here, the static attribute of the resource may be a response to a periodic request message by the resource information requester 410 or may be automatically transmitted by generating an event by detecting that the resource unit 30 has changed its information. . The resource information receiver 430 stores the received resource information in the resource information storage 490.

자원정보 송신기(450)는 작업처리 중계부(120)의 가용자원 요청기(310)로부터 가용 자원 요청 메시지를 수신하면 현재 이용 가능한 자원을 자원정보 저장소(490)에서 검색하여 조건에 부합되는 자원을 선별해서 자원 목록 정보를 생성한 후 작업처리 중계부(120)의 가용자원 수신기(330)로 전송한다.When the resource information transmitter 450 receives the available resource request message from the available resource requester 310 of the job processing relay 120, the resource information transmitter 450 searches for the currently available resources in the resource information storage 490 to search for resources that meet the conditions. After selecting and generating the resource list information, it is transmitted to the available resource receiver 330 of the job processing relay unit 120.

자원 온톨로지 관리기(470)는 자원의 종류에 따라 자원을 구분하게 되는데 W3C에서 제정한 온톨로지 표준 언어인 OWL을 이용하여 자원을 구분할 수 있다.The resource ontology manager 470 classifies resources according to types of resources. The resource ontology manager 470 may classify resources using OWL, an ontology standard language established by the W3C.

도 5는 자원을 클래스 형태로 도시한 것으로, 도시한 바와 같이 최상위 클래스는 Resource이며, 자원의 종류에 따라 계산 위주의 데이터를 처리하기 위한 ComputingResource와, 대용량의 데이터를 처리하기 위한 DataResource로 구분할 수 있다. 그리고, 새로운 종류의 자원이 추가될 경우 새로운 타입의 자원을 ResourceType#N 클래스로 정의해서 온톨로지에 포함시켜 시스템 확장이 용이하고 유연한 구조를 가질 수 있다.FIG. 5 illustrates resources in the form of a class. As illustrated, a top-level class is Resource, and may be classified into a ComputingResource for processing calculation-oriented data and a DataResource for processing a large amount of data according to the type of resource. . And, when a new kind of resource is added, a new type of resource can be defined as a ResourceType # N class and included in the ontology so that the system can be easily extended and have a flexible structure.

자원정보 저장소(490)는 자원에 대한 속성 정보 값을 도 5와 같이 구축된 자원 온톨로지 형태 중 하나로 표 2와 표 3에 도시된 자원의 정적 속성과 동적인 속성으로 저장한다.The resource information store 490 stores attribute information values of resources as static attributes and dynamic attributes of the resources shown in Tables 2 and 3 in one of resource ontology forms as shown in FIG. 5.

도 6을 참조하여 스케줄링 관리부(140)의 내부 구성과 동작을 상세하게 설명한다.An internal configuration and operation of the scheduling manager 140 will be described in detail with reference to FIG. 6.

도 6에 도시한 바와 같이, 스케줄링 관리부(140)는 자원부(30)로부터 자원의 상태 값을 받는 자원상태정보 수신기(610)와, 수신된 자원의 상태 값을 토대로 자원부(30)를 선별하는 추론 엔진부(630)와, 작업 처리 중계부(120)의 자원 선택기(350)로부터 선택된 자원을 작업을 처리하기 위한 자원으로 구성하고 추론 엔진부(630)에서 선별된 자원에게 작업을 할당 및 분배하는 작업 분배기(650)와, 자원부(30)로부터 완료된 작업을 취합하여 파일로 만드는 처리완료 데이터 취합기(670)를 포함한다. 여기서, 추론 엔진부(630)는 시스템 관리자나 전문가에 의해 규칙을 추가 및 삭제, 수정할 수 있는 규칙 관리기(631)와, 정의된 규칙 수행에 필요한 조건을 만족하는 사실을 탐색하고 새로운 사실을 도출하는 규칙 해석기(633)와, 정제된 자원들 중에서 질의를 처리하는 질의 처리기(635)를 포함한다.As shown in FIG. 6, the scheduling manager 140 infers the resource state information receiver 610 which receives the state value of the resource from the resource unit 30, and selects the resource unit 30 based on the received state value of the resource. The engine unit 630 and the resource selected from the resource selector 350 of the job processing relay unit 120 are configured as resources for processing a job, and the inference engine unit 630 allocates and distributes the job to selected resources. A job divider 650 and a processed data collector 670 which collect the completed jobs from the resource unit 30 and make them into a file. Here, the inference engine unit 630 is a rule manager 631 that can add, delete, modify the rule by a system administrator or an expert, and searches for the fact that satisfies the conditions necessary for the execution of the defined rule and derives new facts. A rule resolver 633 and a query processor 635 to process the query among the refined resources.

자원상태정보 수신기(610)는 자원부(30)로부터 자원의 동적인 상태 정보 값을 입력 받는다. 여기서, 자원의 동적인 상태 정보 값이란 표 3에 도시되어 있는 동적인 자원 상태로서 CPU의 사용 여부, CPU 사용률, 주기억 장치 사용률, 보조 기억 장치 사용률, 네트워크의 상태 등을 포함할 수 있다. 자원상태정보 수신기(610)는 수신된 자원상태정보를 데이터 세트 형태로 추론 엔진부(630)로 전송한다.The resource state information receiver 610 receives a dynamic state information value of a resource from the resource unit 30. Here, the dynamic state information value of the resource is a dynamic resource state shown in Table 3, and may include CPU usage, CPU usage, main memory usage, auxiliary storage usage, network status, and the like. The resource state information receiver 610 transmits the received resource state information to the inference engine unit 630 in the form of a data set.

추론 엔진부(630)의 규칙 관리기(631)는 수행되어야 할 규칙을 시스템 관리자나 전문가에 의해서 추가로 정의하거나 수정 및 삭제할 수 있다. 여기서, 규칙은 표 2와 표 3에 도시되어 있는 자원의 정적인 속성과 동적인 속성을 조합하여 도 5에 도시되어 있는 자원 클래스 중 하나로 개체(individual)를 만들 수 있다. 이 때, 시스템 관리자나 전문가가 자원의 동적인 상태와 네트워크 상황과 같은 주변 환경에 따라 규칙을 새로 추가하거나 삭제 또는 수행되어야 할 우선 순위를 변경하여 적용시킬 수 있다. 본 발명의 일실시예에 따른 동적 작업 스케줄링을 위한 규칙은 표 4와 같다.The rule manager 631 of the inference engine unit 630 may further define, modify, and delete a rule to be performed by a system administrator or an expert. Here, the rule may combine the static and dynamic attributes of the resources shown in Tables 2 and 3 to create an individual with one of the resource classes shown in FIG. 5. At this point, system administrators or experts can add new rules, delete them, or change priorities to be applied according to the environment, such as the dynamic state of resources and network conditions. Rules for dynamic job scheduling according to an embodiment of the present invention are shown in Table 4.

RuleRule Domain ruleDomain rule 1One Resource(?x) ∧ StorAvalableSize(?x, ?y) ∧ [?y > jobSize] → AvailableResource(?x)Resource (? X) ∧ StorAvalableSize (? X,? Y) ∧ [? Y> jobSize] → AvailableResource (? X) 남아있는 디스크 공간이 처리 할 job의 크기보다 크면 가용 자원으로 정의한다.If the remaining disk space is larger than the job size to process, it is defined as available resource. 22 Resource(?x) ∧ CPUSpeed(?x, ?y) ∧ [?y > 3.0]  ∧ CacheSize(?x, ?z) ∧ (?z > 4096) ∧ CPUUtilizationr(?x, ?k) ∧ [?k < 30]  → HighSpeedLowWorkloadResource(?x)Resource (? X) ∧ CPUSpeed (? X,? Y) ∧ [? Y> 3.0] ∧ CacheSize (? X,? Z) ∧ (? Z> 4096) ∧ CPUUtilizationr (? X,? K) ∧ [? K <30] → HighSpeedLowWorkloadResource (? X) CPU의 최대 클럭 속도가 3.0GHz 이상이고, cache의 크기가 4096 kilobytes 이상이고, CPU 사용률이 30% 미만이면 낮은부하의고속처리CPU자원으로 정의한다.If the maximum clock speed of the CPU is 3.0GHz or more, the cache size is 4096 kilobytes or more, and the CPU utilization is less than 30%, it is defined as the low-speed high-speed processing CPU resource. 33 Resource(?x) ∧ CPUUtilization(?x, ?y) ∧ [?y > 90]  ∧ StorUtilization(?x, ?z) ∧ [?z > 90] ∧ RAMUtilization(?x, ?k) ∧ [?k > 90] ∧ NetStatus(?x, ?n) ∧ [?n > threshold]
 → hasRank(?x, 1)
Resource (? X) ∧ CPUUtilization (? X,? Y) ∧ [? Y> 90] ∧ StorUtilization (? X,? Z) ∧ [? Z> 90] ∧ RAMUtilization (? X,? K) ∧ [? K > 90] ∧ NetStatus (? X,? N) ∧ [? N> threshold]
HasRank (? X, 1)
CPU 사용률, 디스크 사용률, 메모리 사용률이 모두 90%를 초과하고 네트워크가 혼잡상태이면 자원의 Rank는 1이다.If CPU usage, disk usage, and memory usage all exceed 90% and the network is congested, the rank of the resource is one. 44 Resource(?x) ∧ CPUUtilization(?x, ?y) ∧ [?y > 40] ∧ [?y < 50] ∧ StorUtilization(?x, ?z) ∧ [?z > 40] ∧ [?z < 50] ∧RAMUtilization(?x, ?k) ∧ [?k > 40] ∧ [?k < 50] ∧ NetStatus(?x, ?n) ∧ [?n < threshold]
 → hasRank(?x, 5)
Resource (? X) ∧ CPUUtilization (? X,? Y) ∧ [? Y> 40] ∧ [? Y <50] ∧ StorUtilization (? X,? Z) ∧ [? Z> 40] ∧ [? Z <50 ] ∧RAMUtilization (? X,? K) ∧ [? K> 40] ∧ [? K <50] ∧ NetStatus (? X,? N) ∧ [? N <threshold]
HasRank (? X, 5)
CPU 사용률, 디스크 사용률, 메모리 사용률이 40~50% 이고, 네트워크가 정상 상태이면 자원의 Rank는 5이다.If CPU usage, disk usage, and memory usage are 40-50%, and the network is in a normal state, the resource rank is 5. 55 Resource(?x) ∧ CPUUtilization(?x, ?y) ∧ [?y < 10] ∧ StorUtilization(?x, ?z) ∧ [?z < 10] ∧ RAMUtilization(?x, ?k) ∧ [?k < 10] ∧ NetStatus(?x, ?n) ∧ [?n < threshold]
 → hasRank(?x, 10)
Resource (? X) ∧ CPUUtilization (? X,? Y) ∧ [? Y <10] ∧ StorUtilization (? X,? Z) ∧ [? Z <10] ∧ RAMUtilization (? X,? K) ∧ [? K <10] ∧ NetStatus (? X,? N) ∧ [? N <threshold]
HasRank (? X, 10)
CPU 사용률, 디스크 사용률, 메모리 사용률이 모두 10% 미만이고 네트워크가 정상 상태이면 자원의 Rank는 10이다.If CPU utilization, disk utilization, and memory utilization are all less than 10% and the network is in a normal state, the rank of resources is 10. 66 Resource(?x) ∧ NetStatus(?x, ?y) ∧ [?y < threshold] ∧ bandwidth(?x, ?z) ∧ [?z >= 100]  → HighSpeedNetworkResource(?x)Resource (? X) ∧ NetStatus (? X,? Y) ∧ [? Y <threshold] ∧ bandwidth (? X,? Z) ∧ [? Z> = 100] → HighSpeedNetworkResource (? X) 네트워크 환경이 100Mbps 이상을 지원하고, 임계값 보다 작은 RTT를 가지면 고속네트워크자원으로 정의한다.If the network environment supports more than 100Mbps and has an RTT smaller than the threshold, it is defined as a high-speed network resource.

추론 엔진부(630)의 규칙 해석기(633)는 표 4에 도시되어 있는 규칙 수행에 필요한 조건을 만족하는 사실을 탐색하고 새로운 사실을 도출하는 역할을 수행한다.The rule interpreter 633 of the inference engine unit 630 searches for a fact that satisfies the conditions necessary to perform the rule shown in Table 4 and derives a new fact.

추론 엔진부(630)의 질의 처리기(635)는 규칙 해석기(633)에 의해 도출된 새로운 사실을 바탕으로 작업 처리의 효율성을 극대화하기 위하여 질의를 수행해서 현재의 작업을 분배할 자원을 선별한다. 그리고, 질의 처리기(635)는 선별된 자원에 대한 인덱스 정보를 작업 분배기(650)로 전송하는 역할을 수행한다.The query processor 635 of the inference engine unit 630 selects resources to distribute the current work by executing a query based on the new facts derived by the rule interpreter 633 to maximize the efficiency of the work processing. The query processor 635 transmits index information about the selected resource to the job distributor 650.

작업 분배기(650)는 작업처리 중계부(120)의 자원 선택기(350)로부터 선별된 자원과 질의 처리기(635)에 의해 선별된 자원을 입력받는다. 여기서, 자원 선택기(350)로부터 선별된 자원은 사용자의 작업 처리 의뢰 메시지를 수신한 순간에 전송 받으며 작업 처리를 위한 분산 자원으로 구성한다. 만약, 작업처리 중계부(120)의 작업 관리기(370)의 명령에 의해 재 선택된 자원 목록을 수신하면 필요에 따라 수신된 자원으로 재구성 할 수 있다. 이 때, 추론 엔진부(630)를 통하여 질의 처리기(635)에서 최종적으로 선별된 자원부(30)에게 작업을 분배 및 할당한다.The job distributor 650 receives the resources selected from the resource selector 350 of the job processing relay 120 and the resources selected by the query processor 635. Here, the resources selected from the resource selector 350 are transmitted at the moment of receiving the user's job processing request message and are configured as distributed resources for job processing. If the resource list re-selected by the command of the job manager 370 of the job processing relay 120 may be reconfigured to the received resource as necessary. At this time, the job is distributed and allocated to the resource unit 30 finally selected by the query processor 635 through the inference engine unit 630.

처리완료 데이터 취합기(670)는 자원부(30)로부터 처리가 완료된 데이터를 취합하여 파일로 만들어서 사용자에게 반환하는 역할을 수행한다.The processed data collector 670 collects the processed data from the resource unit 30, creates a file, and returns the processed data to the user.

도 7을 참조하여 자원부(30)의 내부 구성과 동작을 상세하게 설명한다.An internal configuration and operation of the resource unit 30 will be described in detail with reference to FIG. 7.

도 7에 도시한 바와 같이, 자원부(30)는 스케줄링 된 작업을 입력 받아 처리하는 응용 처리기(710)와, 자원의 정적/동적인 상태를 측정하는 자원상태 측정기(730)와, 측정된 자원의 상태 정보 값을 전송하는 자원상태 전송기(750)를 포함한다.As shown in FIG. 7, the resource unit 30 includes an application processor 710 for receiving and processing a scheduled task, a resource state measurer 730 for measuring a static / dynamic state of a resource, and a measured resource. Resource status transmitter 750 for transmitting the status information value.

응용 처리기(710)는 스케줄링 관리부(140)의 작업 분배기(650)로부터 분배 및 할당된 사용자의 작업을 입력 받아 처리하는 역할을 수행하고 처리 완료된 작업을 처리완료 데이터 취합기(670)로 전송한다. The application processor 710 serves to receive and process a user's work distributed and allocated from the job distributor 650 of the scheduling manager 140, and transmits the processed job to the processed data collector 670.

자원상태 측정기(730)는 자원 관리부(130)의 자원정보 요청기(410)에 의해 요청된 자원 정보 요청 메시지를 수신하면 표 2와 표 3에 도시된 바와 같이 자원의 정적/동적인 속성을 측정한다.When the resource state measurer 730 receives the resource information request message requested by the resource information requester 410 of the resource manager 130, the resource state measurer 730 measures static / dynamic attributes of the resource as shown in Tables 2 and 3. do.

자원상태 전송기(750)는 측정된 자원의 정적/동적인 속성 정보 값을 자원 관리부(130)의 자원정보 수신기(430)와 스케줄링 관리부(140)의 자원상태정보 수신기(610)로 전송한다.The resource state transmitter 750 transmits the measured static / dynamic attribute information value of the resource to the resource information receiver 430 of the resource manager 130 and the resource state information receiver 610 of the scheduling manager 140.

상기한 구성에 의한 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 이기종의 자원으로 이루어진 컴퓨팅 환경에서 사용자의 작업을 처리하기 위하여 지리적으로 분산되어 있는 자원들의 정보와 관계를 온톨로지로 구축하고, 다양한 규칙으로 정의된 스케줄링을 통한 데이터 분배 및 할당에 의하여 사용자의 요구사항과 데이터 특성에 적합한 자원을 선택 할 수 있다.Semantic computing-based dynamic job scheduling system according to an embodiment of the present invention by the above configuration is to ontology information and relationships of geographically dispersed resources to process the user's work in a computing environment consisting of heterogeneous resources By establishing and distributing and allocating data through scheduling defined by various rules, it is possible to select resources suitable for user requirements and data characteristics.

도 8은 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 방법의 과정을 설명하기 위한 도면이다.8 is a diagram illustrating a process of a dynamic job scheduling method based on semantic computing according to an embodiment of the present invention.

도 8을 참조하여 본 발명의 일실시예에 있어 스케줄링 할 자원을 선별하는 과정을 상세하게 설명하면 다음과 같다. 여기서, 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 방법은 도 1에 도시한 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템, 특히 도 6에 도시한 스케줄링 관리부(140)에 의해 실행될 수 있다.Referring to FIG. 8, a process of selecting a resource to be scheduled according to an embodiment of the present invention will be described in detail as follows. Here, the semantic computing-based dynamic job scheduling method according to an embodiment of the present invention may be executed by the semantic computing-based dynamic job scheduling system shown in FIG. 1, in particular, the scheduling manager 140 shown in FIG. 6.

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 데이터 입력/분석부(110)의 데이터 분석기(230)로부터 분석된 데이터의 특성인 데이터 크기를 입력 받는다(S801). 그리고, 자원 온톨로지 OWL 파일을 적재하고(S802) 추론이 가능한 형태로 데이터의 정적 속성과 동적 속성을 바탕으로 자원 개체를 생성한다(S803).The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention receives a data size which is a characteristic of data analyzed from the data analyzer 230 of the data input / analyzer 110 (S801). The resource ontology OWL file is loaded (S802) and a resource object is generated based on the static and dynamic attributes of the data in a form that can be inferred (S803).

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 자원을 선별하기 위하여 표 4에 정의된 규칙을 적용하는데, 여기에서는 입력 받은 데이터의 크기가 자원의 동적인 속성 중 보조 기억 장치 가용 공간 보다 작은지 판단하고(S804) 상기 단계(S804)의 조건을 만족하는 자원들을 가용 자원 목록으로 추가한다(S805).The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention applies a rule defined in Table 4 to select a resource, where the size of the input data is available to the auxiliary storage device among the dynamic attributes of the resource. It is determined whether it is smaller than the space (S804), and resources that satisfy the condition of the step (S804) are added to the available resource list (S805).

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 자원의 동적인 속성을 바탕으로 작업 완료 예상시간, CPU 이용률, 주 기억 장치 이용률, 보조 기억 장치의 이용률을 차례로 계산한다(S806~S809). 상기한 과정(S806~S809)에서 계산된 자원의 동적인 속성을 이용하여 표 4에 정의 된 추론 규칙을 적용하여 가용 자원 목록에 해당하는 자원의 등급을 결정한 후(S810), 자원의 등급을 바탕으로 높은 순으로 가용 자원 목록을 정렬한다(S811).The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention calculates a task completion estimated time, CPU utilization, main memory utilization, and auxiliary storage utilization in order based on dynamic attributes of resources (S806 ~). S809). After determining the grade of the resource corresponding to the list of available resources by applying the inference rule defined in Table 4 using the dynamic attributes of the resources calculated in the above-mentioned process (S806 ~ S809) (S810), based on the grade of the resource In order to sort the available resources in ascending order (S811).

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 상기 단계(S811)에서 정렬된 가용 자원 목록에서 같은 등급의 자원이 존재할 경우 작업 완료 예상시간이 작은 자원에 우선 순위를 두고(S812), 같은 등급의 자원 중 작업 완료 예상시간이 같은 자원이 존재할 경우 네트워크의 상태가 좋은 자원에 우선 순위를 둔다(S813).The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention prioritizes resources having a small estimated time to complete a task when there are resources of the same grade in the list of available resources arranged in step S811 (S812). If a resource having the same estimated time to complete work among resources of the same class exists, priority is given to a resource having a good network state (S813).

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 가용 자원 목록 중 순위가 가장 높은 자원을 최종적으로 선별하여 최종 선별 된 자원 정보 인덱스를 스케줄링 관리부(140)의 작업 분배기(650)로 전송한다(S814).The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention finally selects the highest-ranked resource from the available resource list and sends the final selected resource information index to the job distributor 650 of the scheduling manager 140. It transmits (S814).

본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템은 상기한 과정에 의한 스케줄링 방법 이외에도 시스템 관리자나 전문가에 의해 표 4에 도시한 바와 같이 추가로 규칙을 정의하거나 수정 및 갱신, 우선 순위를 변경하여 적용함으로써 동적인 자원의 상태 변화에 따라 다양한 규칙을 적용할 수 있다.The semantic computing-based dynamic job scheduling system according to an embodiment of the present invention may further define, modify, update, and prioritize rules as shown in Table 4 by a system administrator or an expert in addition to the scheduling method according to the above process. By changing and applying, various rules can be applied according to the change of dynamic resource state.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by specific embodiments such as specific components and the like. For those skilled in the art to which the present invention pertains, various modifications and variations are possible.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and all of the equivalents or equivalents of the claims as well as the claims to be described later will belong to the scope of the present invention. .

도 1은 본 발명의 일실시예에 따른 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템의 구성을 도시한 도면이다.1 is a diagram illustrating a configuration of a dynamic job scheduling system based on semantic computing according to an embodiment of the present invention.

도 2는 도 1에 도시한 데이터 입력/분석부(110)의 일례를 도시한 도면이다.FIG. 2 is a diagram illustrating an example of the data input / analysis unit 110 shown in FIG. 1.

도 3은 도 1에 도시한 작업처리 중계부(120)의 일례를 도시한 도면이다.FIG. 3 is a diagram showing an example of the job processing relay 120 shown in FIG. 1.

도 4는 도 1에 도시한 자원 관리부(130)의 일례를 도시한 도면이다.4 is a diagram illustrating an example of the resource manager 130 illustrated in FIG. 1.

도 5는 추론에 필요한 개체를 생성하기 위한 자원 온톨로지 모형의 일례를 도시한 도면이다.FIG. 5 is a diagram illustrating an example of a resource ontology model for generating an entity required for inference.

도 6은 도 1에 도시한 스케줄링 관리부(140)의 일례를 도시한 도면이다.FIG. 6 is a diagram illustrating an example of the scheduling manager 140 illustrated in FIG. 1.

도 7은 도 1에 도시한 자원부(30)의 일례를 도시한 도면이다.FIG. 7 is a diagram illustrating an example of the resource unit 30 shown in FIG. 1.

도 8은 정의된 규칙을 바탕으로 자원의 속성 정보를 이용한 동적 스케줄링 과정의 일례를 설명하기 위한 도면이다. 8 is a diagram for explaining an example of a dynamic scheduling process using attribute information of a resource based on a defined rule.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

110: 데이터 입력/분석부110: data entry / analysis section

120: 작업처리 중계부120: work processing relay

130: 자원 관리부130: resource management unit

140: 스케줄링 관리부140: scheduling management unit

Claims (5)

작업 대상인 데이터 및, 상기 데이터에 해당하는 데이터 특성과 상기 데이터를 처리하기 위한 요구사항을 입력 받는 데이터 입력/분석부;A data input / analysis unit configured to receive data to be worked on, data characteristics corresponding to the data, and requirements for processing the data; 상기 데이터가 처리되도록 전반의 동작을 제어하는 작업처리 중계부;A job processing relay unit which controls the overall operation so that the data is processed; 적어도 하나의 자원과 통신을 통하여 상기 자원의 속성 정보를 수집 및 유지하고 상기 데이터 특성과 요구사항에 대응되는 가용 자원을 선별하는 자원 관리부; 및,A resource manager configured to collect and maintain attribute information of the resource through communication with at least one resource and to select available resources corresponding to the data characteristics and requirements; And, 상기 자원과의 통신을 통하여 상기 선별된 가용 자원 중 상기 데이터를 처리할 자원을 선택하여 상기 선택된 자원에 상기 데이터를 분배하고 상기 분배된 데이터에 대한 처리 결과를 제공하는 스케줄링 관리부A scheduling manager that selects a resource to process the data from the selected available resources through communication with the resource, distributes the data to the selected resource, and provides a processing result for the distributed data. 를 포함하고,Including, 상기 데이터 특성은 데이터의 종류, 데이터의 크기 중 적어도 하나를 포함하고,The data characteristic includes at least one of a type of data and a size of data; 상기 요구 사항은 상기 데이터를 처리하는데 사용할 예산 금액, 상기 데이터를 처리해야 하는 마감 기한 중 적어도 하나를 포함하고,The requirement includes at least one of a budget amount to be used to process the data, a deadline to process the data, 상기 데이터 입력/분석부는,The data input / analysis unit, 상기 입력된 데이터 특성을 정수 형태로 변환한 후 상기 작업처리 중계부로 전달하는 데이터 분석기와,A data analyzer for converting the input data characteristic into an integer form and transferring the data characteristic to the work processing relay; 상기 입력된 요구 사항을 정수 형태로 변환한 후 상기 작업처리 중계부로 전달하는 요구사항 분석기Requirement analyzer converting the input requirements into integer form and forwarding them to the work processing relay 를 포함하는 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템.Semantic computing-based dynamic job scheduling system comprising a. 삭제delete 제1항에 있어서,The method of claim 1, 상기 작업처리 중계부는,The work processing relay unit, 상기 자원 관리부에 상기 가용 자원에 대한 자원 목록을 요청하는 가용자원 요청기와,An available resource requester for requesting a resource list of the available resources to the resource manager; 상기 자원 목록의 요청에 따라 상기 자원 관리부에서 제공하는 상기 가용 자원의 자원 목록을 수신하는 가용자원 수신기와,An available resource receiver for receiving a resource list of the available resources provided by the resource manager according to the request of the resource list; 상기 데이터 특성과 요구사항에 대하여 정의된 추론 규칙을 이용하여 상기 수신된 자원 목록의 가용 자원 중 상기 데이터 특성과 요구사항에 대응되는 자원을 선택하는 자원 선택기를 포함하는, 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템.And a resource selector for selecting a resource corresponding to the data characteristic and the requirement among the available resources of the received resource list by using the inference rule defined for the data characteristic and the requirement. system. 제1항에 있어서,The method of claim 1, 상기 자원 관리부는,The resource management unit, 상기 자원으로 속성 정보 요청 메시지를 전송하는 자원정보 요청기와,A resource information requester for transmitting an attribute information request message to the resource; 상기 요청 메시지에 대하여 상기 자원에서 제공하는 상기 속성 정보를 수신 하는 자원정보 수신기와,A resource information receiver for receiving the attribute information provided from the resource with respect to the request message; 상기 자원을 관리하기 위해 상기 수신된 속성 정보를 온톨로지 표준 언어를 이용하여 표현하는 자원 온톨로지 관리기와,A resource ontology manager for expressing the received attribute information using an ontology standard language to manage the resource; 상기 온톨로지 표준 언어로 표현된 속성 정보를 상기 자원과 연관하여 저장하는 자원정보 저장소와,A resource information repository for storing attribute information expressed in the ontology standard language in association with the resource; 상기 작업처리 중계부의 제어 하에 상기 데이터 특성과 요구사항에 대응되는 가용 자원을 선별하여 상기 가용 자원으로 구성되는 자원 목록을 상기 작업처리 중계부로 제공하는 자원정보 송신기A resource information transmitter which selects available resources corresponding to the data characteristics and requirements under the control of the job processing relay unit and provides a resource list composed of the available resources to the job processing relay unit. 를 포함하는, 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템.Including, semantic computing-based dynamic job scheduling system. 제1항에 있어서,The method of claim 1, 상기 스케줄링 관리부는,The scheduling manager, 상기 자원의 동적인 속성 정보를 수신하는 자원상태정보 수신기와,A resource state information receiver for receiving dynamic attribute information of the resource; 상기 자원의 속성 정보에 대하여 정의된 추론 규칙을 이용하여 상기 수신된 동적인 속성 정보에 따라 상기 가용 자원의 순위를 결정하는 추론 엔진부와,An inference engine unit for determining the rank of the available resources according to the received dynamic attribute information using an inference rule defined for the attribute information of the resource; 상기 가용 자원 중 상기 순위가 가장 높은 자원에 상기 데이터를 분배 및 할당하는 작업 분배기와,A job distributor for distributing and allocating the data to the highest ranking resource among the available resources; 상기 데이터를 할당받은 자원으로부터 상기 데이터에 대한 처리 결과를 수신하여 수신된 처리 결과를 취합하는 처리완료 데이터 취합기를 포함하고,And a processed data collector for receiving the processing result of the data from the resource to which the data is allocated and collecting the received processing result. 상기 동적인 속성 정보는,The dynamic attribute information, 상기 자원의 CPU 사용 여부, CPU 사용률, 주기억 장치 사용률, 보조 기억 장치 사용률, 네트워크 상태 중 적어도 하나를 포함하는, 시멘틱 컴퓨팅 기반의 동적 작업 스케줄링 시스템.And at least one of CPU usage, CPU usage, main memory usage, auxiliary storage usage, and network status of the resource.
KR1020090037151A 2009-04-28 2009-04-28 Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing KR101055548B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090037151A KR101055548B1 (en) 2009-04-28 2009-04-28 Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090037151A KR101055548B1 (en) 2009-04-28 2009-04-28 Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing

Publications (2)

Publication Number Publication Date
KR20100118357A KR20100118357A (en) 2010-11-05
KR101055548B1 true KR101055548B1 (en) 2011-08-08

Family

ID=43404675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090037151A KR101055548B1 (en) 2009-04-28 2009-04-28 Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing

Country Status (1)

Country Link
KR (1) KR101055548B1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101145144B1 (en) * 2010-11-23 2012-05-14 한국과학기술정보연구원 Method and system for scheduling virtual machine
KR101468983B1 (en) * 2012-07-31 2014-12-03 한국과학기술정보연구원 Apparatus for dynamically configuring a computing environment, and method thereof, and storage medium for storing a program dynamically configuring a computing environment
KR101421601B1 (en) * 2013-01-30 2014-07-22 아주대학교산학협력단 Real time scheduling method of cyber physical system
KR101476789B1 (en) * 2013-05-06 2014-12-26 (주)넥셀 Apparatus and methdo for processing
KR102092921B1 (en) * 2013-06-28 2020-03-24 삼성전자주식회사 Simulation apparatus and Distributed simulation system
CN107423307B (en) * 2016-05-24 2020-11-17 创新先进技术有限公司 Internet information resource allocation method and device
KR102602378B1 (en) * 2019-02-18 2023-11-16 라인플러스 주식회사 Method, system, and non-transitory computer readable record medium for requesting resources through messenger
KR102381185B1 (en) * 2020-11-27 2022-03-31 주식회사 알티스트 Method to set up a core for low-latency services in Kubernetes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100806523B1 (en) * 2007-12-12 2008-02-21 한국정보통신대학교 산학협력단 Semantic information based grid management system and method for grid computing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100806523B1 (en) * 2007-12-12 2008-02-21 한국정보통신대학교 산학협력단 Semantic information based grid management system and method for grid computing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
논문1:한국시뮬레이션학회
논문2:한국시뮬레이션학회

Also Published As

Publication number Publication date
KR20100118357A (en) 2010-11-05

Similar Documents

Publication Publication Date Title
KR101055548B1 (en) Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing
WO2021179462A1 (en) Improved quantum ant colony algorithm-based spark platform task scheduling method
CN108182105B (en) Local dynamic migration method and control system based on Docker container technology
JP3658420B2 (en) Distributed processing system
JP4428483B2 (en) Information processing apparatus, control method, program, and recording medium
KR102273413B1 (en) Dynamic scheduling of network updates
CN100484119C (en) Method, system and device for creating service instance in computational grid
US20120331152A1 (en) Dynamic resource allocation method, system, and program
CN104915407A (en) Resource scheduling method under Hadoop-based multi-job environment
US11687373B2 (en) Flexible computing
CN109257399B (en) Cloud platform application program management method, management platform and storage medium
US20080148272A1 (en) Job allocation program, method and apparatus
Oh et al. Network cost-aware geo-distributed data analytics system
CN107291544A (en) Method and device, the distributed task scheduling execution system of task scheduling
JP4839585B2 (en) Resource information collection and distribution method and system
US20140258382A1 (en) Application congestion control
US11347550B1 (en) Autoscaling and throttling in an elastic cloud service
US20230037783A1 (en) Resource scheduling method and related apparatus
JP2004046372A (en) Distributed system, resource allocation method, program, and recording medium with which resource allocation program is recorded
CN116582407A (en) Containerized micro-service arrangement system and method based on deep reinforcement learning
JP5045576B2 (en) Multiprocessor system and program execution method
Stamatakis et al. SLA-driven workload management for cloud databases
CN114090201A (en) Resource scheduling method, device, equipment and storage medium
Nethaji et al. Differential Grey Wolf Load‐Balanced Stochastic Bellman Deep Reinforced Resource Allocation in Fog Environment
US11687269B2 (en) Determining data copy resources

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140612

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150626

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee