KR101350755B1 - Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same - Google Patents

Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same Download PDF

Info

Publication number
KR101350755B1
KR101350755B1 KR1020110003967A KR20110003967A KR101350755B1 KR 101350755 B1 KR101350755 B1 KR 101350755B1 KR 1020110003967 A KR1020110003967 A KR 1020110003967A KR 20110003967 A KR20110003967 A KR 20110003967A KR 101350755 B1 KR101350755 B1 KR 101350755B1
Authority
KR
South Korea
Prior art keywords
task
tasks
cost
workflow
service
Prior art date
Application number
KR1020110003967A
Other languages
Korean (ko)
Other versions
KR20120082598A (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 KR1020110003967A priority Critical patent/KR101350755B1/en
Publication of KR20120082598A publication Critical patent/KR20120082598A/en
Application granted granted Critical
Publication of KR101350755B1 publication Critical patent/KR101350755B1/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
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter

Abstract

클라우드 컴퓨팅 환경에 적합하게 총 처리시간이 감소하고 평균 가용성이 향되도록, 태스크풀과 스케줄러와 실행기를 포함하며, 태스크풀은 동적인 클라우드 서비스를 위해 다중 워크플로우를 관리하며, 사용자로부터 QoS 요구사항을 가진 워크플로우가 제출되면 모든 태스크들의 예상 실행시간과 비용 등의 특성을 계산하여 태스크들을 큐시트에 저장하고, 스케줄러는 다중 워크플로우 스케줄링 전략에 따라 큐시트에 있는 태스크들을 계산하고, 실행기는 큐시트에 있는 태스크들을 실행하기 위해 최적의 자원 또는 서비스를 선택하고, 임의로 선택한 태스크의 서비스가 성공적으로 완료되면 태스크풀에 태스크 완료 상태를 피드백하고, 태스크풀은 실행기로부터 태스크 완료 상태가 피드백되면 해당되는 태스크를 제거하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법을 제공한다.Includes task pools, schedulers, and executors to reduce total processing time and improve average availability for cloud computing environments. Task pools manage multiple workflows for dynamic cloud services and manage QoS requirements from users. When a workflow is submitted, it calculates the expected execution time and cost of all tasks and stores the tasks in a queuesheet, the scheduler calculates the tasks in the queuesheet according to a multi-workflow scheduling strategy, and the executor executes the tasks in the queuesheet. Select the optimal resource or service to run the task, feed back the task completion status to the task pool when the service of the randomly selected task completes successfully, and remove the task when the task completion status is fed back from the executor. Everything from cloud computing It provides a cost-based method for scheduling the workflow.

Description

클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템 {Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same}Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same}

본 발명은 클라우드 컴퓨티에서 다중 워크플로우를 위한 비용기반 스케줄링방법에 관한 것으로서, 보다 상세하게는 예상 실행시간을 이용한 처리율을 가지고 비용값으로 우선순위를 결정하므로 클라우드 컴퓨팅 환경에 적합한 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템에 관한 것이다.The present invention relates to a cost-based scheduling method for multiple workflows in cloud computing, and more particularly, multi-working in cloud computing environment suitable for cloud computing environment because priority is determined by a cost value with throughput using estimated execution time. A cost based scheduling method for a flow and a system thereof.

일반적으로 클라우드 컴퓨팅(cloud computing) 구조는 사용자와 클라우드(cloud) 구조로 구성되며, 클라우드 구조는 데이터 센터(Data Center)를 보유하여 이루어진다.In general, a cloud computing structure is composed of a user and a cloud structure, and the cloud structure is formed by having a data center.

클라우드 구조에서 클라우드는 웹 서버의 웹브라우저를 통해 단일 액세서 포인트가 존재하고, 데이터 센터는 사용자를 위한 어플리케이션을 서비스하기 위해 서비스 공급자에 의해 사용되는 서비스 자원들로 구성된다.In the cloud architecture, the cloud has a single access point through the web browser of the web server, and the data center consists of the service resources used by the service provider to service the application for the user.

그리고 클라우드 컴퓨팅 구조에서 사용자에 의해 요청되는 서비스는 웹브라우저를 통해 전송되고, 그 요청 서비스는 데이터 센터에 도착하여 처리되며, 실행되는 어플리케이션은 서비스 또는 자원을 사용한 만큼 사용자가 서비스 공급자에게 비용을 지불하도록 구성된다.In the cloud computing architecture, the service requested by the user is transmitted through a web browser, and the requested service arrives at the data center and is processed. It is composed.

클라우드 컴퓨팅은 광범위한 확장성을 지니며, 사용자에 서로 다른 서비스 수준을 지원하는 추상적인 엔티티로 구성되고, 가상화 기법을 이용하여 동적으로 실행되고, 여러 사용자에게 동시에 서비스를 제공하는 등의 특징을 갖고 있다.Cloud computing is extensively scalable and consists of abstract entities that support different levels of service to users, runs dynamically using virtualization techniques, and provides services to multiple users at the same time. .

클라우드 컴퓨팅에서 워크플로우 스케줄링을 위해서는 첫째, 클라우드는 다중 사용자들에게 같은 서비스를 제공하여야 하므로 다양한 QoS(Quality of Service) 파라미터를 가지고 다중 워크플로우 스케줄링을 할 수 있어야 하고, 둘째, 클라우드 플랫폼에 동시에 많은 워크플로우 인스턴스가 존재할 가능성이 항상 있으므로 스케줄러는 다중 워크플로우 스케줄링을 할 수 있어야 하며, 셋째, 사용자들은 그들이 원할 때마다 자원 또는 서비스들을 액세스할 수 있어야 하므로 클라우드 서비스는 새로운 워크플로우가 임의의 시간에 시작할 준비를 갖추고 있어야 하는 등의 새로운 특징을 고려하여야 한다.For workflow scheduling in cloud computing, first, the cloud must provide the same service to multiple users, so it is necessary to be able to schedule multiple workflows with various quality of service (QoS) parameters. Since there is always the possibility of a flow instance, the scheduler must be able to schedule multiple workflows, and thirdly, users must have access to resources or services whenever they want, so the cloud service is ready to start a new workflow at any time. Consideration should be given to new features such as

클라우드 컴퓨팅에서 어떻게 자원을 효율적으로 할당하여 최대 이익을 얻는가는 클라우드 컴퓨팅 서비스 공급자의 궁극적인 목표이며, 클라우드 컴퓨팅은 많은 사용자의 여러 어플리케이션을 동시에 한정된 적절하게 할당받아야 할 필요성이 있다.How to efficiently allocate resources in cloud computing to get the maximum benefit is the ultimate goal of cloud computing service providers, and cloud computing needs to be limited and appropriately assigned multiple applications of many users at the same time.

그러나, 사용자 또는 사용하는 어플리케이션이 많아질수록 클라우드 서비스는 안정성 및 성능을 저하시킨다. 예를 들면, 2008년 2월 15일 아마존의 서버 및 스토리지 컴퓨팅 서비스인 S3 서비스가 약 2시간 가량 중단되면서, 수천개의 기업과 개발자들, 30여만명의 사용자들이 피해를 입었다. 최근 클라우드 컴퓨팅이 보편화되어 그 사용자 및 사용 용도가 광범위해지면서 그 피해는 엄청난 사회문제를 야기할 우려가 높아지고 있다.However, as more users or applications are used, cloud services degrade stability and performance. For example, on February 15, 2008, Amazon's server and storage computing service, S3, was shut down for about two hours, killing thousands of businesses, developers, and more than 300,000 users. As cloud computing has become more common in recent years, its users and uses have become more widespread, there is a growing concern that the damage will cause enormous social problems.

이러한 클라우드 컴퓨팅의 특징인 다중 사용자의 어플리케이션을 일련의 과정으로 정형화하고 공유하기 위해 워크플로우 기법이 적용되고 있다. 워크플로우(Workflow)는 단일 태스크가 아닌 여러개의 프로세스들로 상호 의존성을 갖고 복잡하게 구성된 태스크이거나 반복적으로 수행되는 태스크들을 하나의 흐름으로 기술하는 기법이다.Workflow techniques are being applied to formalize and share the multi-user applications that characterize cloud computing in a series of processes. Workflow is a technique that describes a complex task with interdependencies as multiple processes instead of a single task or a task that is repeatedly performed as a flow.

상기와 같은 워크플로우에서 기술된 태스크들을 클라우드 서비스에서 효율적으로 실행하기 위해서는 워크플로우의 태스크를 가상화된 자원에 적절히 할당하는 스케줄링 기법이 필수적이며, 업무량이 많은 기업이나 연구기관의 서비스를 실행할 경우 실행시간이 길기 때문에 스케줄링 기법에 따라 실행 비용의 차이가 커진다. 즉, 클라우드 컴퓨팅 환경에서 워크플로우 스케줄링 기법은 시스템의 효율성을 위해 중요한 요소가 되며, 효율적인 워크플로우 스케줄링 전략은 사용자 뿐만 아니라 서비스 제공자에게 비용을 절감할 수 있는 요소이다.In order to efficiently execute the tasks described in the above workflow in the cloud service, a scheduling technique for properly allocating the tasks of the workflow to virtualized resources is essential. Because of this length, the difference in execution cost depends on the scheduling technique. In other words, in the cloud computing environment, the workflow scheduling technique becomes an important factor for system efficiency, and an efficient workflow scheduling strategy can save costs not only for users but also for service providers.

워크플로우 스케줄링 알고리즘은 그리드 컴퓨팅과 클러스터 환경에서 제안되었으며, 정적 알고리즘과 동적 알고리즘으로 분류된다. 정적 알고리즘은 태스크 실행시간 또는 계산 비용 같은 파라미터를 추정하는 방식이고, 동적 알고리즘은 각 태스크가 실행할 준비가 되었을 때만 스케줄링 결정을 하는 방식이며, 대부분 동적 알고리즘이 정적 알고리즘에 비하여 성능이 우수하다.Workflow scheduling algorithms have been proposed in grid computing and cluster environments, and classified into static and dynamic algorithms. Static algorithms estimate parameters such as task execution time or computational cost. Dynamic algorithms make scheduling decisions only when each task is ready to run. Most dynamic algorithms perform better than static algorithms.

그런데 클라우드는 광범위한 확장성과 사용자 요구사항에 동적으로 설정되고, 클라우드에서 동시에 많은 사용자들이 워크플로우 어플리케이션들을 사용할 수 있기 때문에 종래 제안된 알고리즘들은 클라우드 컴퓨팅 환경에 적합하지 않다.However, since the cloud is dynamically set up for a wide range of scalability and user requirements, and many users can simultaneously use workflow applications in the cloud, the proposed algorithms are not suitable for the cloud computing environment.

기존의 많은 워크플로우 스케줄링 알고리즘은 단일 워크플로우에 대한 스케줄링을 제안하고 있으며, 이들 스케줄링 알고리즘들은 클라우드 컴퓨팅의 특징인 다중 워크플로우를 고려하지 않으며, 실행시간과 비용 같은 단일 QoS 파라미터에 중점을 두고 있다.Many existing workflow scheduling algorithms suggest scheduling for a single workflow, and these scheduling algorithms do not take into account multiple workflows that are characteristic of cloud computing, and focus on a single QoS parameter such as runtime and cost.

예를 들면, 워크플로우 스케줄링을 위해 기존에 제안된 알고리즘으로 Rank-HF(Highest Rank First)와 Rank-HYBD(Rank Hybrid) 등이 알려져 있다.For example, Rank-HF (Highest Rank First) and Rank-HYBD (Rank Hybrid) are known as algorithms previously proposed for workflow scheduling.

Rank-HF는 태스크풀에서 랭크 값을 정한 후 스케줄러에 보내고, 스케줄러에서는 랭크 값으로 태스크를 정렬한 후 실행기에 보내며, 태스크의 랭크 값은 태스크풀에 있는 랭크 값이 높은 태스크가 우선순위가 되도록 이루어진다.Rank-HF sets the rank value in the task pool and sends it to the scheduler, and the scheduler sorts the task by the rank value and sends it to the executor, and the rank value of the task is made so that the higher rank task in the task pool becomes the priority. .

Rank-HYBD는 태스크풀에 있는 태스크가 다중 워크플로우인지를 검사하고, 단일 워크플로우이면 Rank-HF와 동일하게 이루어지고, 다중 워크플로우이면 태스크풀에서 랭크 값을 정한 후 스케줄러에 보내며, 스케줄러에서는 랭킹이 낮은 태스크로 정렬된 후 실행기에 보내고, 태스크의 랭킹은 태스크풀에 있는 랭킹 값이 낮은 태스크가 우선순위가 되도록 이루어진다.Rank-HYBD checks whether a task in the taskpool is a multi-workflow; if it is a single workflow, it is the same as Rank-HF; if it is a multi-workflow, the rank is determined by the taskpool and sent to the scheduler; This low task is sorted and sent to the executor, and the ranking of the task is made so that tasks with lower ranking values in the task pool are given priority.

즉 Rank-HYBD는 모든 준비된 태스크에 랭크를 정하고, 그 랭크에 따라 우선적으로 스케줄되는 태스크를 결정하도록 이루어진다. 그런데, 만약 낮은 계산 비용을 가진 임의의 새로운 워크플로우들이 실행 중간에 제출되면 더 높은 계산 비용을 가진 태스크들은 낮은 계산 비용을 가진 워크플로우의 태스크들이 실행 완료될 때까지 자원이나 서비스를 받지 못하게 된다. 결과적으로 불필요한 긴 처리시간이나 더 많은 시스템 가용성을 갖게 될 우려가 있다.That is, Rank-HYBD is configured to rank all prepared tasks, and determine which tasks are scheduled first according to the rank. However, if any new workflows with lower computational costs are submitted in the middle of execution, the tasks with higher computational costs will not receive resources or services until the tasks of the lower computational costs are completed. As a result, there is a risk of unnecessary long processing time or more system availability.

그리고 클라우드 컴퓨팅 환경에서 서비스 평가는 사용자와 서비스 공급자가 서로 다르다. 예를 들면, 클라우드 컴퓨팅의 사용자 측면에서는 얼마나 많은 비용을 지불하고 QoS 요구사항에 일치하는 컴퓨팅 자원을 할당받는지에 대하여 관심이 있으며, 클라우드 컴퓨팅의 제공자 측면에서는 컴퓨팅 자원을 제공함으로써 얻게될 최대 이익에 관심이 있다.And in cloud computing, service evaluation is different for users and service providers. For example, the user side of cloud computing is concerned about how much they are willing to pay and are allocated computing resources that match their QoS requirements, while the provider side of cloud computing is concerned with the maximum benefit from providing computing resources. There is this.

따라서 클라우드 컴퓨팅 환경에서는 사용자 측면의 총 처리시간(Makespan)과 서비스 제공자 측면의 전체 시스템의 가용성(Availability)을 고려할 필요가 있으며, 부가적으로 서비스의 신뢰적 측정을 위한 파라미터로 서비스 회복 평균시간(MTTR;Mean Time To Recovery)을 고려할 필요가 있다.Therefore, in the cloud computing environment, it is necessary to consider the total processing time of the user side (Makespan) and the availability of the entire system of the service provider side, and additionally, the service recovery average time (MTTR) as a parameter for reliable measurement of the service. You need to consider Mean Time To Recovery.

본 발명은 상기와 같은 점에 조감하여 이루어진 것으로서, 클라우드 컴퓨팅 환경에 적합하도록 예상 실행시간을 이용한 처리율을 가지고 비용값으로 우선순위를 결정하며 다양한 QoS 파라미터를 가지고 다중 워크플로우 어플리케이션에 대한 워크플로우 스케줄링 기법을 제공하는 것이 가능한 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링방법 및 그 시스템을 제공하는데, 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made in view of the above, and is a workflow scheduling technique for multi-workflow applications with various QoS parameters and prioritization by cost value with throughput using expected execution time to suit the cloud computing environment. It is an object of the present invention to provide a cost-based scheduling method and system for multiple workflows in the cloud computing that can provide.

본 발명의 실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템은 태스크풀(Task Pool)과 스케줄러(Scheduler)와 실행기(Executor)를 포함하여 이루어지며, 사용자들이 QoS(Quality of Service) 요구사항을 가진 워크플로우(Workflow)를 제출하면 워크플로우 프로세싱을 위해 적절한 서비스들을 할당하고 QoS 요구사항과 클라우드 환경에 따라 서비스 태스크(Task)들을 스케줄링하도록 이루어진다.A cost-based scheduling system for multiple workflows in cloud computing according to an embodiment of the present invention includes a task pool, a scheduler, and an executor. Submitting a workflow with requirements involves assigning the appropriate services for workflow processing and scheduling service tasks according to the QoS requirements and cloud environment.

상기 태스크풀은 동적인 클라우드 서비스를 위해 다중 워크플로우를 관리하며, 사용자로부터 QoS 요구사항을 가진 워크플로우가 제출되면 모든 태스크(Task)들의 예상 실행시간과 비용 등의 특성을 계산하여 태스크들을 큐시트(cue sheet)에 저장한다.The task pool manages multiple workflows for dynamic cloud services, and when a workflow having a QoS requirement is submitted from a user, the task pool calculates characteristics such as estimated execution time and cost of all tasks and queues the tasks. Save to cue sheet.

상기 스케줄러는 다중 워크플로우 스케줄링 전략에 따라 큐시트(cue sheet)에 있는 태스크들을 스케줄링한다.The scheduler schedules tasks in a cue sheet according to a multiple workflow scheduling strategy.

상기 실행기는 큐시트에 있는 태스크들을 실행하기 위해 최적의 자원 또는 서비스를 선택하고, 임의로 선택한 태스크의 서비스가 성공적으로 완료되면 상기 태스크풀에 태스크 완료 상태를 피드백한다.The executor selects an optimal resource or service to execute the tasks in the cue sheet, and feeds back the task completion status to the task pool when the service of the randomly selected task is successfully completed.

상기 태스크풀은 상기 실행기로부터 태스크 완료 상태가 피드백되면 해당되는 태스크를 제거한다.The task pool removes the corresponding task when the task completion status is fed back from the executor.

그리고 본 발명의 실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법은 대기상태에서 임의의 새로운 워크플로우가 사용자로부터 태스크풀에 제출되면 모든 태스크들의 예상 실행시간과 비용 등의 특성을 계산하고 태스크들을 상기 태스크풀의 큐시트에 저장하고, 큐시트에 있는 첫번째 태스크가 스케줄러에 제출되고 스케줄러는 모든 태스크들의 계산된 비용을 가지고 우선순위를 재계산하여 정렬하는 작업을 반복적으로 수행하고, 실행기에서는 어떤 서비스가 비어있는지를 확인하고 적절한 서비스에 태스크를 할당하고, 서비스가 완료되면 실행기는 완료 상태를 태스크풀에 피드백하고 큐시트에서 해당 태스크를 제거하는 과정을 포함하여 이루어진다.In the cloud computing according to an embodiment of the present invention, a cost-based scheduling method for multiple workflows calculates characteristics such as estimated execution time and cost of all tasks when any new workflow is submitted from the user to the task pool in the standby state. Save the tasks to a cuesheet in the taskpool, the first task in the cuesheet is submitted to the scheduler, and the scheduler repeatedly recalculates and sorts the priorities with the calculated cost of all tasks, Checking if the service is empty, assigning the task to the appropriate service, and when the service completes, the executor involves feeding back the completion status to the task pool and removing the task from the cuesheet.

상기 스케줄러에서는 가장 낮은 비용을 가진 태스크들을 스케줄링하고, 비용 값이 같은 경우에는 더 높은 지연시간 값을 가진 태스크를 우선적으로 스케줄링한다.The scheduler schedules the tasks with the lowest cost, and preferentially schedules the task with the higher latency value if the cost values are the same.

상기 태스크풀은 상기 실행기가 태스크의 완료 피드백이 있을 때마다, 임의의 하부 태스크(자식 태스크)들이 준비하고 있는지 아닌지를 검사한 다음, 상기 스케줄러에 제출하는 과정을 수행한다.The task pool checks whether any subtasks (child tasks) are preparing each time the executor has a task completion feedback, and then submits them to the scheduler.

상기 태스크풀에서는 태스크의 예상 실행시간, 비용, 지연시간 등의 특성에 관한 정보를 태스크와 함께 상기 스케줄러에 제출한다.The task pool submits information on characteristics of the task, such as expected execution time, cost, and delay time, to the scheduler together with the task.

상기 스케줄러에서는 이용할 수 있는 서비스가 존재하며 태스크의 정보가 계산되어 태스크풀에서 대기하고 있을 때마다, 우선순위를 재계산하여 모든 태스크들을 정렬하는 작업을 반복적으로 수행한다.Whenever there is a service available in the scheduler and the information of the task is calculated and waiting in the task pool, the task is repeatedly performed to sort all tasks by recalculating priorities.

본 발명의 실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템에 의하면, 비용이 낮은 우선순위로 스케줄링하며, 비용 값이 같은 경우에는 들어온 순서(제출된 순서)인 지연시간 값이 큰 태스크를 우선순위로 스케줄링하므로, 평균 총 처리시간(Mean Makespan) 및 평균 가용성(Mean Availability), 서비스 회복 평균시간(MTTR;Mean Time To Recovery)에서 크게 개선되는 효과가 얻어진다.According to the cost-based scheduling method and system for multi-workflow in cloud computing according to an embodiment of the present invention, the cost is scheduled in a low priority, if the cost value is the same, the delay time in the order (submitted order) Since tasks with high values are scheduled in priority order, a significant improvement in mean total process time (Mean Makespan), mean availability (Mean Availability), and mean time to recovery (MTTR) is obtained.

따라서 사용자 측면에서는 반응시간인 총 처리시간이 감소하고, 서비스 공급자 측면에서는 가용성이 향상되어 시스템의 비용측면에서 이익이 극대화되는 효과가 얻어진다.Therefore, the total processing time, which is the response time on the user side, is reduced and the availability is improved on the service provider side, thereby maximizing the profit in terms of the cost of the system.

그리고 본 발명의 실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템에 의하면, 사용자와 공급자 모두 실행시간의 향상과 대기시간의 감소 등의 효과가 얻는 것이 가능하다.In addition, according to the cost-based scheduling method and system for multiple workflows in the cloud computing according to an embodiment of the present invention, both the user and the supplier can achieve the effect of improving the execution time and reducing the waiting time.

도 1은 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템이 적용되는 워크플로우 스케줄링 구조를 개략적으로 나타내는 블럭도이다.
도 2는 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템을 개략저긍로 나타내는 블럭도이다.
도 3은 본 발명의 일실시예와 Rank-HF 알고리즘, Rank-HYBD 알고리즘을 이용하여 다중 워크플로우를 테스트한 결과 평균 총 처리시간을 나타내는 그래프이다.
도 4는 본 발명의 일실시예와 Rank-HF 알고리즘, Rank-HYBD 알고리즘을 이용하여 다중 워크플로우를 테스트한 결과 평균 가용성을 나타내는 그래프이다.
도 5는 본 발명의 일실시예와 Rank-HF 알고리즘, Rank-HYBD 알고리즘을 이용하여 다중 워크플로우를 테스트한 결과 서비스 회복 평균시간을 나타내는 그래프이다.
1 is a block diagram schematically illustrating a workflow scheduling structure to which a cost-based scheduling system for multiple workflows is applied in cloud computing according to an embodiment of the present invention.
2 is a block diagram schematically illustrating a cost-based scheduling system for multiple workflows in cloud computing according to an embodiment of the present invention.
Figure 3 is a graph showing the average total processing time as a result of testing multiple workflows using an embodiment of the present invention, Rank-HF algorithm, Rank-HYBD algorithm.
Figure 4 is a graph showing the average availability as a result of testing multiple workflows using an embodiment of the present invention, Rank-HF algorithm, Rank-HYBD algorithm.
5 is a graph showing a service recovery average time as a result of testing multiple workflows using an embodiment of the present invention, the Rank-HF algorithm, and the Rank-HYBD algorithm.

다음으로 본 발명에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템의 바람직한 실시예를 도면을 참조하여 상세하게 설명한다.Next, a preferred embodiment of a cost-based scheduling method and a system for multiple workflows in cloud computing according to the present invention will be described in detail with reference to the accompanying drawings.

먼저 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템은 도 2에 나타낸 바와 같이, 태스크풀(22)과 스케줄러(24), 실행기(26)를 포함하여 이루어진다.First, a cost-based scheduling system for multiple workflows in cloud computing according to an embodiment of the present invention includes a task pool 22, a scheduler 24, and an executor 26.

도 1에는 워크플로우 스케줄링 구조를 나타내며, 워크플로우(10)와 클라우드 리소스(30) 사이에 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템(CMWS)(20)이 위치하고 있음을 나타낸다.1 illustrates a workflow scheduling structure, in which a cost-based scheduling system (CMWS) 20 for multiple workflows in cloud computing according to an embodiment of the present invention is provided between a workflow 10 and a cloud resource 30. Indicates that it is located.

본 발명의 일실시예에 따른 비용기반 스케줄링 시스템(20)(CMWS)은 사용자들이 QoS(Quality of Service) 요구사항을 가진 워크플로우(Workflow)를 제출하면 워크플로우 프로세싱을 위해 적절한 서비스들을 할당하고 QoS 요구사항과 클라우드 환경에 따라 서비스 태스크(Task)들을 스케줄링하도록 이루어진다.The cost-based scheduling system 20 (CMWS) according to an embodiment of the present invention allocates appropriate services for workflow processing and QoS when users submit a workflow having a Quality of Service (QoS) requirement. Service tasks are scheduled according to requirements and cloud environment.

상기 태스크풀(22)은 동적인 클라우드 서비스를 위해 다중 워크플로우(10)를 관리하며, 사용자로부터 QoS 요구사항을 가진 워크플로우(10)가 제출되면 모든 태스크(Task)들의 예상 실행시간과 비용 등의 특성을 계산하여 태스크들을 큐시트(cue sheet)에 저장한다.The task pool 22 manages multiple workflows 10 for dynamic cloud services, and when a workflow 10 having QoS requirements is submitted from a user, expected execution time and costs of all tasks, etc., are submitted. Compute the properties of and save the tasks to a cue sheet.

상기 스케줄러(24)는 다중 워크플로우 스케줄링 전략에 따라 큐시트(cue sheet)에 있는 태스크들을 스케줄링한다.The scheduler 24 schedules tasks in a cue sheet according to a multiple workflow scheduling strategy.

상기 실행기(26)는 큐시트에 있는 태스크들을 실행하기 위해 최적의 자원 또는 서비스를 선택하고, 임의로 선택한 태스크의 서비스가 성공적으로 완료되면 상기 태스크풀(22)에 태스크 완료 상태를 피드백한다.The executor 26 selects an optimal resource or service to execute the tasks in the cue sheet, and feeds back the task completion status to the task pool 22 when the service of the randomly selected task is successfully completed.

상기 태스크풀(22)은 상기 실행기(26)로부터 태스크 완료 상태가 피드백되면 해당되는 태스크를 제거한다.The task pool 22 removes the corresponding task when the task completion status is fed back from the executor 26.

상기 태스크풀(22)에 워크플로우(10)들이 제출되면, 태스크들이 다른 워크플로우(10)에 속할지라도 상기 실행기(26)는 태스크풀(22)에 있는 태스크들에 스케줄링 알고리즘을 적용하는 것이 가능하고, 태스크풀(22)은 클라우드에 동적으로 제출되는 다중 워크플로우(10)들을 스케줄링하는 것이 가능하다.Once the workflows 10 are submitted to the taskpool 22, the launcher 26 may apply a scheduling algorithm to the tasks in the taskpool 22 even though the tasks belong to another workflow 10. In addition, the task pool 22 is capable of scheduling multiple workflows 10 that are dynamically submitted to the cloud.

그리고 실행할 준비가 되어있을 때, 상기 태스크풀(22)에 워크플로우(10)들이 제출되면, 상기 실행기(26)에 따라 제한적으로 실행된다.When the workflows 10 are submitted to the task pool 22 when ready to run, they are executed in a limited manner in accordance with the executor 26.

다음으로 상기와 같이 구성되는 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템(CMWS)을 적용하여 다중 워크플로우를 위한 비용기반 스케줄링을 행하는 본 발명의 다른 실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법에 대하여 설명한다.Next, another embodiment of the present invention for performing cost-based scheduling for multiple workflows by applying a cost-based scheduling system (CMWS) for multiple workflows in the cloud computing according to an embodiment of the present invention configured as described above The cost-based scheduling method for multiple workflows in the cloud computing will be described.

먼저, 대기상태(예를 들면, "0"으로 셋팅함)에서 임의의 새로운 워크플로우(10)가 사용자로부터 태스크풀(22)에 제출되면, 모든 태스크들의 예상 실행시간과 비용 등의 특성을 계산하고, 태스크들을 상기 태스크풀(22)의 큐시트에 저장한다.First, when any new workflow 10 is submitted from the user to the task pool 22 in the wait state (for example, set to "0"), the characteristics such as estimated execution time and cost of all tasks are calculated. And stores the tasks in the cue sheet of the task pool 22.

상기에서 각 워크플로우(10)의 태스크들에 대한 비용(Cost(Taski)) 값은 다음의 수학식 1을 이용하여 계산한다.The cost Cost (Task i ) value for the tasks of each workflow 10 is calculated using Equation 1 below.

Figure 112011003255775-pat00001
Figure 112011003255775-pat00001

상기 수학식 1에서, Tput(Taski)는 각 워크플로우(10)의 태스크에 대한 각각의 처리율을 나타내고, Length(Taski)는 각 태스크의 크기를 나타내고,

Figure 112011003255775-pat00002
는 각 태스크의 평균 예상 실행시간을 나타낸다.In Equation 1, Tput (Task i ) represents the respective throughput for the task of each workflow 10, Length (Task i ) represents the size of each task,
Figure 112011003255775-pat00002
Represents the average estimated execution time of each task.

본 발명의 실시예에 있어서는 상기 수학식 1에서 정의된 예상 실행시간, 비용 등과 같은 특성에 따라 모든 준비된 태스크들을 스케줄링하여 자원 또는 서비스에 할당한다.In an embodiment of the present invention, all prepared tasks are scheduled and allocated to resources or services according to characteristics such as expected execution time and cost defined in Equation (1).

그리고 상기 태스크풀(22)의 큐시트에 있는 첫번째 태스크가 스케줄러(24)로 제출된다.The first task in the cue sheet of the task pool 22 is then submitted to the scheduler 24.

상기 스케줄러(24)는 모든 태스크들의 계산된 비용(상기 수학식 1을 통하여 계산된 비용 값)을 가지고 우선순위를 재계산하여 정렬하는 작업을 반복적으로 수행한다.The scheduler 24 repeatedly calculates and sorts priorities based on the calculated costs of all tasks (the cost value calculated through Equation 1).

상기 실행기(26)에서는 어떤 서비스가 비어있는지 즉, 태스크가 할당되지 않은 서비스를 확인하고 적절한 서비스 즉, 태스크가 할당되지 않은 서비스에 태스크를 할당하고, 서비스가 완료되면 실행기(26)는 완료 상태를 상기 태스크풀(22)에 피드백한다.The launcher 26 checks which service is empty, i.e., the service to which the task is not assigned and assigns the task to the appropriate service, i. Feedback to the task pool 22.

상기 태스크풀(22)에서는 상기 실행기(26)로부터 완료 상태가 피드백되면, 큐시트에서 해당 태스크를 제거한다.When the completion status is fed back from the executor 26, the task pool 22 removes the task from the cue sheet.

상기 태스크풀(22)은 상기 실행기(26)로부터 각 태스크의 완료 피드백이 있을 때마다, 임의의 하부 태스크(자식 태스크)들이 준비하고 있는지 아닌지를 검사한 다음, 상기 스케줄러(24)에 제출하는 과정도 수행한다.The task pool 22 checks whether any subtasks (child tasks) are preparing each time there is completion feedback of each task from the executor 26, and then submits them to the scheduler 24. Also perform.

그리고 상기 태스크풀(22)에서는 태스크의 예상 실행시간, 비용, 지연시간 등의 특성에 관한 정보를 태스크와 함께 상기 스케줄러(24)에 제출한다.In addition, the task pool 22 submits information on characteristics such as expected execution time, cost, and delay time of the task to the scheduler 24 together with the task.

상기 스케줄러(24)에서는 가장 낮은 비용을 가진 태스크들을 스케줄링하고, 비용 값이 같은 경우에는 더 높은 지연시간 값을 가진 태스크를 우선적으로 스케줄링한다.The scheduler 24 schedules the tasks with the lowest cost, and preferentially schedules the task with the higher latency value if the cost values are the same.

상기에서 지연시간은 상기 태스크풀(22)에 들어온 시간부터 현재까지의 시간을 나타내며, 지연시간 값이 큰 경우에는 더 오래 서비스가 지체되었음을 의미한다.In this case, the delay time represents the time from the time entered into the task pool 22 to the present, and when the delay time value is large, it means that the service is delayed longer.

상기 스케줄러(24)에서는 이용할 수 있는 서비스가 존재하며 태스크의 정보가 계산되어 태스크풀(22)에서 대기하고 있을 때마다, 우선순위를 재계산하여 모든 태스크들을 정렬하는 작업을 반복적으로 수행한다.Whenever there is a service available in the scheduler 24 and the information of the task is calculated and waiting in the task pool 22, the task of repeatedly recalculating the priority and sorting all tasks is repeatedly performed.

그리고 실행중인 태스크는 예를 들면 "1"로 셋팅한다.And the running task is set to "1", for example.

상기 실행기(26)에서는 태스크를 완료할 수 있는 서비스가 존재하지 않는다면, 다른 서비스로 태스크를 삽입하고, 모든 서비스는 동시에 하나의 태스크만을 실행하도록 이루어진다.If there is no service that can complete the task in the executor 26, the task is inserted into another service, and all services are configured to execute only one task at the same time.

그리고 완료된 태스크는 예를 들면 "2"로 셋팅하여 상기 태스크풀(22)로 반환되고, 태스크풀(22)은 해당 태스크를 제거하도록 이루어진다.The completed task is returned to the task pool 22 by setting it to "2", for example, and the task pool 22 is configured to remove the task.

다음으로 본 발명의 일실시예에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템(CMWS)과 기존의 알고리즘인 Rank-HF 및 Rank-HYBD를 클라우드 컴퓨팅 환경을 고려한 시뮬레이터를 이용하여 성능 평가와 분석을 행하는 과정을 설명한다.Next, performance evaluation and cost-based scheduling system (CMWS) for multiple workflows and existing algorithms Rank-HF and Rank-HYBD using a simulator considering cloud computing environment in cloud computing according to an embodiment of the present invention, Describe the process of performing the analysis.

먼저 시뮬레이션 환경은 다음의 표 1과 같이 구성하였다.First, the simulation environment is configured as shown in Table 1 below.

구분division 제 원Specification 서버server Intel SR1630HGP Intel SR1630HGP 프로세서Processor Intel QuadCore Xeon W3430 (2.40GHz) Processor Intel QuadCore Xeon W3430 (2.40GHz) Processor 캐시cash 8MB L3 Cashe 8MB L3 Cashe 시스템 버스System bus 1333MHz 1333 MHz 칩셋 Chipset Intel Chipset 3420 Intel Chipset 3420 메모리Memory 2GB DDR3 800/1066/1333MHz Memorry 6DIMN 2GB DDR3 800/1066 / 1333MHz Memorry 6DIMN 하드디스크Hard disk 500GB SATA2 7200rpm 500 GB SATA2 7200 rpm RAIDRAID Intel SATA RAID supports RAID levels 0, 1 Intel SATA RAID supports RAID levels 0, 1 드라이브 베이Drive bay 3*3.5" Hotswap SATA Drive Bays 3 * 3.5 "Hotswap SATA Drive Bays OSOS CentOS-5.4 *86_64 (kernel 2.6.18-164) CentOS-5.4 * 86_64 (kernel 2.6.18-164) GCCGCC gcc version 4.1.2 20080704 gcc version 4.1.2 20080704

그리고 시뮬레이션을 위하여 클라우드 환경은 20개의 서비스를 설정하고, 모든 서비스는 동시에 하나의 태스크를 실행할 수 있도록 구성하였으며, 10명에서 100명의 사용자가 이용하는 것으로 설정하여 실제로 10, 15, 20, 30, 50, 80, 100개의 워크플로우 어플리케이션을 동시에 발생시켰으며, 각 알고리즘별로 100회 실시하였다. 즉, 최대 워크플로우 약 100~1,200개의 태스크를 가지고 각각의 알고리즘에 적용하여 성능 평가를 수행하였다.And for the simulation, the cloud environment is set up 20 services, all services are configured to run a single task at the same time, 10 to 100 users are used to actually 10, 15, 20, 30, 50, 80 and 100 workflow applications were generated at the same time, 100 times for each algorithm. That is, performance evaluation was performed by applying each algorithm with the maximum workflow of about 100 ~ 1,200 tasks.

또 워크플로우(10)의 크기(워크플로우의 태스크 수)는 3~9개의 태스크로 구성된 워크플로우 그룹을 사용하고, 워크플로우 어플리케이션 시나리오에 따라 랜덤하게 4가지 종류의 워크플로우를 발생시키도록 구성한다.In addition, the size of the workflow 10 (the number of tasks in the workflow) uses a workflow group consisting of three to nine tasks, and is configured to generate four kinds of workflows randomly according to the workflow application scenario. .

그리고 각 태스크의 크기는 랜덤하게 발생하며, 워크플로우의 각 태스크의 사이즈는 50~1,000 단위까지 발생시키고, 최대 크기는 1,000 단위로 설정한다.The size of each task occurs randomly. The size of each task in the workflow is generated up to 50 to 1,000 units, and the maximum size is set to 1,000 units.

또 태스크의 크기가 100 단위인 서비스를 수행하는데 걸리는 시간은 1초, 1,000 단위는 10초로 설정하고, 도착 간격은 포아송 분포를 따른다고 가정하고, 각 태스크별로 200 단위시간의 도착 간격을 갖는 것으로 설정한다.In addition, it is assumed that the time required to perform a service having a task size of 100 units is set to 1 second and 1,000 units to 10 seconds, and that the arrival interval follows the Poisson distribution, and that each task has an arrival interval of 200 units. do.

그리고 성능 평가를 위한 지표로는 평균 총 처리시간(Mean Makespan)과, 평균 가용성(Mean Availability), 서비스 회복 평균시간(MTTR;Mean Time To Recovery)을 사용하였다.In addition, we used mean mean make time, mean availability, and mean time to recovery (MTTR).

상기 평균 총 처리시간(Mean Makespan)은 워크플로우 어플리케이션이 시스템에 들어와 스케줄링되어 서비스를 받고 실행이 완료된 총 처리시간 또는 실행시간을 의미하며, 이 시간에는 서비스 받기 위해 기다리는 시간인 대기 시간까지 포함된다.The mean total processing time (Mean Makespan) refers to the total processing time or execution time when the workflow application enters the system, is scheduled, receives a service, and is executed. This time includes waiting time, which is a time waiting for service.

상기 평균 가용성(Mean Availability)은 워크플로우가 클라우드 시스템에서 자원 또는 서비스를 액세스할 수 있는 평균 가용성을 의미하며. 다음의 수학식 2와 같이 나타내어진다.Mean availability refers to the average availability that a workflow can access resources or services in the cloud system. It is expressed as following Equation 2.

Figure 112011003255775-pat00003
Figure 112011003255775-pat00003

상기 수학식 2에서 UpTime은 서비스가 가능한 총 시간을 의미하며, Period of Time는 시간의 주기(태스크를 실행하는 주기)를 의미하며, MeanServiceTime은 서비스에 필요한 평균 시간을 나타내며, TaskRTime은 태스크를 실행하는데 소요되는 시간을 나타내며, i=1,...,n은 워크플로우의 태스크 수를 나타낸다.In Equation 2, UpTime refers to the total time that a service is available, Period of Time means a period of time (period for executing a task), MeanServiceTime represents an average time required for a service, and TaskRTime is used to execute a task. I = 1, ..., n denotes the number of tasks in the workflow.

상기 서비스 회복 평균시간(MTTR;Mean Time To Recovery)은 시스템이 장애에 의해 가동하지 못한 상태가 계속된 평균 시간을 의미하며, 시스템 신뢰성의 기본적인 파라미터이다.The mean time to recovery (MTTR) means the average time that the system has not operated due to a failure and is a basic parameter of system reliability.

상기 서비스 회복 평균시간(MTTR)은 다음의 수학식 3과 같이 나타내어진다.The service recovery average time (MTTR) is expressed by Equation 3 below.

Figure 112011003255775-pat00004
Figure 112011003255775-pat00004

상기 수학식 3에서 summation of TimeServiceRepair는 서비스를 회복하는데 걸리는 총 시간을 의미하며, TotalNumber of ServiceRepair는 서비스를 회복한 총 수를 의미하며, WaitingTime은 대기 시간을 의미하며, i=1,...,n은 워크플로우의 태스크 수를 나타낸다.In Equation 3, summation of TimeServiceRepair means total time for restoring a service, TotalNumber of ServiceRepair means total number for restoring a service, and WaitingTime means waiting time, i = 1, ..., n represents the number of tasks in the workflow.

다음의 표 2 및 도 3에는 본 발명의 실시예(CMWS)와 Rank-HF, Rank-HYBD의 평균 총 처리시간(Mean Makespan)의 성능을 평가한 결과를 나타낸다.Table 2 and FIG. 3 show the results of evaluating the performance of the mean total processing time (Mean Makespan) of the embodiment of the present invention (CMWS), Rank-HF, and Rank-HYBD.

구분division W10W10 W15W15 W20W20 W30W30 W50W50 W80W80 W100W100
Rank-HF

Rank-HF
시나리오1Scenario 1 15.1415.14 28.6328.63 30.2030.20 47.8547.85 81.3181.31 126.45126.45 147.51147.51
시나리오2Scenario 2 21.7121.71 30.8930.89 36.1036.10 54.2254.22 86.8886.88 147.84147.84 172.64172.64 시나리오3Scenario 3 22.0022.00 29.1329.13 36.7736.77 55.0655.06 94.7294.72 155.98155.98 184.54184.54 시나리오4Scenario 4 23.4023.40 29.8929.89 39.1839.18 56.7456.74 93.1293.12 154.78154.78 182.88182.88 평균Average 20.5620.56 29.6429.64 35.5635.56 53.4753.47 89.0189.01 146.26146.26 171.89171.89
Rank-
HYBD

Rank-
HYBD
시나리오1Scenario 1 18.0018.00 28.1728.17 29.9329.93 45.9345.93 79.8679.86 124.06124.06 147.54147.54
시나리오2Scenario 2 20.2920.29 25.7825.78 32.1332.13 51.6151.61 85.4185.41 141.52141.52 162.35162.35 시나리오3Scenario 3 22.5022.50 30.0030.00 37.7737.77 51.8851.88 92.6992.69 151.58151.58 175.76175.76 시나리오4Scenario 4 20.6020.60 29.8929.89 37.7337.73 54.7454.74 87.6587.65 149.40149.40 175.18175.18 평균Average 20.3520.35 27.7127.71 34.3934.39 51.0451.04 86.4086.40 141.64141.64 165.21165.21
CMWS
(본 발명
실시예)

CMWS
(The present invention)
Examples)
시나리오1Scenario 1 14.4314.43 23.5823.58 24.5324.53 39.1139.11 68.6068.60 108.79108.79 112.47112.47
시나리오2Scenario 2 20.8620.86 27.6727.67 31.7131.71 46.7846.78 74.2074.20 124.56124.56 143.84143.84 시나리오3Scenario 3 20.0020.00 27.5327.53 34.2334.23 50.1850.18 82.4482.44 136.11136.11 156.63156.63 시나리오4Scenario 4 21.7021.70 25.4425.44 36.1836.18 48.6148.61 80.2680.26 134.15134.15 158.73158.73 평균Average 19.2519.25 26.0626.06 31.6631.66 46.1746.17 76.3876.38 125.90125.90 142.92142.92

상기 표 2 및 도 3을 보면, 워크플로우 어플리케이션을 시나리오별로 Rank-HF 알고리즘, Rank-HYBD 알고리즘, 본 발명에 따른 일실시예(CMWS)를 사용하여 스케줄링하였을 때, 시나리오별 총 처리시간 및 시나리오 전체 평균 총 처리시간이 Rank-HF 및 Rank-HYBD 알고리즘은 워크플로우의 수가 증가할수록 그 차이는 작지만, Rank-HYBD 알고리즘이 Rank-HF 알고리즘보다 평균적으로 처리시간이 작다는 것을 알 수 있으며, 본 발명에 따른 일실시예(CMWS)는 두 알고리즘보다 워크플로우의 수가 증가할수록 그 차이가 더 많이 발생하는 것을 알 수 있다.Referring to Tables 2 and 3, when a workflow application is scheduled using a Rank-HF algorithm, a Rank-HYBD algorithm, and one embodiment (CMWS) according to the present invention, the total processing time and scenarios for each scenario The average total processing time of Rank-HF and Rank-HYBD algorithm is smaller as the number of workflows increases, but it can be seen that the Rank-HYBD algorithm has a smaller processing time on average than the Rank-HF algorithm. According to the exemplary embodiment (CMWS), as the number of workflows increases, the difference occurs more than the two algorithms.

즉 본 발명에 따른 일실시예(CMWS)의 경우 워크플로우의 수가 증가함에 따라 종래 알고리즘인 Rank-HF 및 Rank-HYBD에 비하여 평균적으로 처리시간이 크게 작아짐을 확인하는 것이 가능하다. 예를 들면, 본 발명에 따른 일실시예(CMWS)의 경우 Rank-HF 알고리즘에 비하여 평균 14% 정도, Rank-HYBD에 비하여 평균 10% 정도 향상된 결과를 확인할 수 있다.That is, in the case of the embodiment according to the present invention (CMWS), as the number of workflows increases, it is possible to confirm that the processing time is significantly reduced on average compared to the conventional algorithms Rank-HF and Rank-HYBD. For example, in the case of one embodiment (CMWS) according to the present invention, an average of about 14% is improved compared to the Rank-HF algorithm and an average of about 10% is improved compared to Rank-HYBD.

다음의 표 3과 도 4에는 평균 가용성에 대한 평가 결과를 나타낸다.Table 3 and FIG. 4 below show the evaluation results for average availability.

구분division W10W10 W15W15 W20W20 W30W30 W50W50 W80W80 W100W100
Rank-HF

Rank-HF
시나리오1Scenario 1 70.0670.06 55.1655.16 39.1339.13 31.7531.75 21.7421.74 14.7214.72 11.5011.50
시나리오2Scenario 2 52.0852.08 35.2235.22 32.2932.29 23.4023.40 14.2014.20 8.558.55 6.876.87 시나리오3Scenario 3 48.9848.98 37.4037.40 31.3831.38 19.4219.42 11.9811.98 7.807.80 6.376.37 시나리오4Scenario 4 51.0451.04 34.0634.06 26.4026.40 20.0420.04 13.2713.27 8.048.04 6.496.49 평균Average 55.5455.54 40.4640.46 32.3032.30 23.6523.65 15.3015.30 9.789.78 7.817.81
Rank-
HYBD

Rank-
HYBD
시나리오1Scenario 1 61.3261.32 57.6357.63 42.9142.91 35.6335.63 23.8423.84 15.1915.19 11.1811.18
시나리오2Scenario 2 53.5353.53 44.5144.51 32.4032.40 25.1225.12 13.9413.94 10.0010.00 7.647.64 시나리오3Scenario 3 45.3145.31 33.8133.81 30.0730.07 20.9120.91 12.8912.89 7.867.86 6.936.93 시나리오4Scenario 4 48.1148.11 36.0836.08 33.4633.46 21.9421.94 13.9813.98 7.997.99 6.686.68 평균Average 52.0752.07 43.0143.01 34.7134.71 25.9025.90 16.1616.16 10.2610.26 8.118.11
CMWS
(본 발명
실시예)

CMWS
(The present invention)
Examples)
시나리오1Scenario 1 78.3078.30 61.6961.69 53.9053.90 41.2441.24 28.2228.22 19.3019.30 16.2816.28
시나리오2Scenario 2 63.6063.60 46.1946.19 44.6344.63 30.6030.60 20.4320.43 12.1112.11 10.2610.26 시나리오3Scenario 3 62.8962.89 47.2947.29 39.9439.94 27.0627.06 16.9416.94 11.0111.01 8.928.92 시나리오4Scenario 4 61.4861.48 48.7048.70 33.5333.53 27.1927.19 17.4417.44 10.8410.84 8.878.87 평균Average 66.5766.57 50.9750.97 43.0043.00 31.5231.52 20.7620.76 13.3213.32 11.0811.08

상기 표 3 및 도 4를 보면, 워크플로우의 수가 증가할수록 세가지 경우 모두 가용성이 감소함을 보임을 알 수 있다. 이는 태스크의 수가 증가하기 때문에, 서비스 또는 자원의 경쟁률이 증가한다는 것을 알 수 있으며, 서비스를 바로 실행할 준비가 되지 않음을 알 수 있다.Referring to Tables 3 and 4, it can be seen that the availability decreases in all three cases as the number of workflows increases. It can be seen that as the number of tasks increases, the contention rate of services or resources increases, and that the service is not ready to run immediately.

가용성은 시스템의 자원 가용성을 나타내어 각 워크플로우 또는 시나리오별 가용성은 의미가 없으므로, 상기에서는 워크플로우 전체의 평균 가용성만을 계산하고 평가한다.Availability represents the resource availability of the system, so availability for each workflow or scenario is meaningless, so we only calculate and evaluate the average availability of the entire workflow.

상기 표 3 및 도 4를 보면, 본 발명에 따른 일실시예(CMWS)의 경우에 다른 알고리즘에 비하여 가용성이 전반적으로 높게 나타내고 있으며, Rank-HF 알고리즘에 비하여 평균 32% 정도, Rank-HYBD에 비하여 평균 27% 정도 서비스의 가용성이 높다는 것을 확인할 수 있다.Referring to Table 3 and FIG. 4, in the case of one embodiment (CMWS) according to the present invention, availability is generally higher than that of other algorithms, and an average of about 32% is higher than that of Rank-HF algorithm, compared to Rank-HYBD. The service availability is high on average 27%.

다음의 표 4 및 도 5에는 서비스 회복 평균시간(MTTR)에 대한 평가 결과를 나타낸다.Table 4 and FIG. 5 show evaluation results of the MTTR.

구분division W10W10 W15W15 W20W20 W30W30 W50W50 W80W80 W100W100
Rank-HF

Rank-HF
시나리오1Scenario 1 2.522.52 6.426.42 7.737.73 13.4413.44 23.9923.99 38.8238.82 45.8045.80
시나리오2Scenario 2 2.122.12 3.873.87 4.714.71 7.727.72 12.9912.99 22.7522.75 26.7126.71 시나리오3Scenario 3 1.671.67 2.462.46 3.243.24 5.275.27 9.449.44 15.9315.93 18.9518.95 시나리오4Scenario 4 1.621.62 2.462.46 3.483.48 5.475.47 9.239.23 15.7915.79 18.7418.74 평균Average 1.981.98 3.803.80 4.794.79 7.987.98 13.9113.91 23.3223.32 27.5527.55
Rank-
HYBD

Rank-
HYBD
시나리오1Scenario 1 3.573.57 5.755.75 7.987.98 12.9812.98 23.7423.74 38.4438.44 45.9445.94
시나리오2Scenario 2 2.262.26 3.263.26 4.424.42 7.297.29 12.8012.80 21.9521.95 25.2625.26 시나리오3Scenario 3 1.671.67 2.512.51 3.353.35 4.994.99 9.269.26 15.6415.64 18.1918.19 시나리오4Scenario 4 1.481.48 2.532.53 3.383.38 5.145.14 8.718.71 15.3915.39 18.1818.18 평균Average 2.252.25 3.513.51 4.784.78 7.607.60 13.6313.63 22.8622.86 26.8926.89
CMWS
(본 발명
실시예)

CMWS
(The present invention)
Examples)
시나리오1Scenario 1 2.002.00 5.035.03 5.495.49 10.2810.28 19.7019.70 32.6732.67 34.2234.22
시나리오2Scenario 2 1.861.86 3.023.02 3.783.78 6.206.20 10.6010.60 18.6818.68 21.2721.27 시나리오3Scenario 3 1.891.89 2.012.01 2.682.68 4.374.37 7.817.81 13.5813.58 15.8015.80 시나리오4Scenario 4 1.311.31 1.801.80 2.952.95 4.314.31 7.687.68 13.3813.38 16.0016.00 평균Average 1.771.77 2.972.97 3.733.73 6.296.29 11.4511.45 19.5819.58 21.8221.82

상기 서비스 회복 평균시간(MTTR)은 서비스의 신뢰성을 측정하는 파라미터로서 서비스 고장 유지시간의 평균시간을 나타내며, 각 워크플로우의 태스크들이 서비스 받기 위해 기다리는 평균시간을 나타낸다.The MTTR is a parameter for measuring the reliability of a service and represents an average time of service failure maintenance time, and represents an average time for tasks of each workflow to wait for service.

상기 표 4 및 도 5를 보면, 본 발명에 따른 일실시예(CMWS)의 경우에 워크플로우 80개와 100개에서 서비스 회복 평균시간(MTTR) 값이 단조 증가됨을 볼 수 있는데, 이것은 워크플로우에 있는 태스크들이 서비스를 받기 위해 기다리는 시간이 Ramk-HF 및 Rank-HYBD 알고리즘보다 작다는 것을 의미한다.Referring to Table 4 and FIG. 5, in the case of one embodiment (CMWS) according to the present invention, the service recovery average time (MTTR) value is monotonically increased in 80 and 100 workflows. This means that the time for tasks to wait for service is less than the Ramk-HF and Rank-HYBD algorithms.

특히 본 발명에 따른 일실시예(CMWS)의 경우에 Rank-HF 알고리즘에 비하여 평균 19% 정도, Rank-HYBD에 비하여 평균 18% 정도 서비스 실패시간이 짧다는 것을 확인할 수 있다.In particular, in the case of the embodiment according to the present invention (CMWS) it can be seen that the average service failure time is about 19% shorter than the Rank-HF algorithm, about 18% compared to Rank-HYBD.

상기 표 2 내지 표 4 및 도 3 내지 도 5로부터 확인되는 바와 같이, 평균 총 처리시간(Mean Makespan), 평균 가용성(Mean Availability), 서비스 회복 평균시간(MTTR)에 있어서, 본 발명에 따른 일실시예(CMWS)의 경우가 Rank-HF 및 Rank-HYBD 알고리즘에 비하여 평균 총 처리시간이 평균적으로 작으며, 시스템의 가용성은 높다.As can be seen from Tables 2 to 4 and FIGS. 3 to 5, in the mean total process time (Mean Makespan), mean availability, and service recovery mean time (MTTR), one embodiment according to the present invention In the case of the CMWS, the average total processing time is lower than that of the Rank-HF and Rank-HYBD algorithms, and the system availability is high.

그리고 워크플로우의 태스크들이 클라우드 서비스를 받기 위해 기다리는 대기 시간이 본 발명에 따른 일실시예(CMWS)이 경우가 Rank-HF 및 Rank-HYBD 알고리즘에 비하여 상대적으로 약 20% 정도 짧다.And the waiting time for tasks in the workflow to receive the cloud service is about 20% shorter than the Rank-HF and Rank-HYBD algorithm in one embodiment according to the present invention (CMWS).

본 발명에 따른 일실시예(CMWS)의 경우 클라우드 서비스 사용자 측면에서는 반응시간인 총 처리시간이 감소하고, 클라우드 서비스 공급자 측면에서는 클라우드 서비스 시스템의 가용성을 높임으로써 시스템에서의 잔류시간이 작아지기 때문에 시스템 비용 측면에서 이익을 얻을 수 있다.In the case of the CMWS according to the present invention, the total processing time, which is the response time, is reduced in terms of the cloud service user, and the remaining time in the system is reduced by increasing the availability of the cloud service system in the cloud service provider. You can benefit from the cost.

그리고 시스템에서 서비스 회복 평균시간(MTTR) 값의 증가는 메모리 사용량과 CPU 사용량을 높이기 때문에 시스템 전체에 부하를 줄 수 있는 요소가 되지만, 본 발명에 따른 일실시예(CMWS)의 경우에는 사용자와 공급자 두 측면 모두 실행시간의 향상과 대기 시간의 감소하여 시스템의 부하를 줄일 수 있다.In addition, the increase of the MTTR value in the system increases the memory usage and the CPU usage, thereby increasing the overall system load, but in the case of the CMWS according to the present invention, the user and the provider Both aspects can reduce the load on the system by improving run time and reducing latency.

상기에서는 본 발명에 따른 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법 및 그 시스템의 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 명세서 및 첨부한 도면의 범위 안에서 여러가지로 변형하여 실시하는 것이 가능하고, 이 또한 본 발명의 범위에 속한다.In the above description of a preferred embodiment of a cost-based scheduling method and a system for multiple workflows in cloud computing according to the present invention, the present invention is not limited thereto, but is within the scope of the claims and the specification and the accompanying drawings. Various modifications can be made and this is also within the scope of the present invention.

10 - 워크플로우, 20 - 비용기반 스케줄링 시스템, 22 - 태스크풀
24 - 스케줄러, 26 - 실행기, 30 - 클라우드 리소스
10-workflow, 20-cost-based scheduling system, 22-task pool
24-Scheduler, 26-Launcher, 30-Cloud Resources

Claims (12)

태스크풀(Task Pool)과 스케줄러(Scheduler)와 실행기(Executor)를 포함하며,
사용자들이 QoS(Quality of Service) 요구사항을 가진 워크플로우(Workflow)를 제출하면 워크플로우 프로세싱을 위한 서비스들을 할당하고 QoS 요구사항과 클라우드 환경에 따라 서비스 태스크(Task)들을 스케줄링하도록 이루어지고,
상기 태스크풀은 동적인 클라우드 서비스를 위해 다중 워크플로우를 관리하며, 사용자로부터 QoS 요구사항을 가진 워크플로우가 제출되면 모든 태스크들의 예상 실행시간과 비용, 지연시간 특성을 계산하여 태스크들을 큐시트(cue sheet)에 저장하고,
상기 스케줄러는 다중 워크플로우 스케줄링 전략에 따라 큐시트에 있는 태스크들을 스케줄링하고,
상기 실행기는 큐시트에 있는 태스크들을 실행하기 위해 최적의 자원 또는 서비스를 선택하고, 임의로 선택한 태스크의 서비스가 성공적으로 완료되면 상기 태스크풀에 태스크 완료 상태를 피드백하고,
상기 태스크풀은 상기 실행기로부터 태스크 완료 상태가 피드백되면 해당되는 태스크를 제거하고,
상기 각 워크플로우의 태스크들에 대한 비용(Cost(Taski)) 값은 수학식
Figure 112013015508119-pat00014
(여기에서, Tput(Taski)는 각 워크플로우의 태스크에 대한 각각의 처리율을 나타내고, Length(Taski)는 각 태스크의 크기를 나타내고,
Figure 112013015508119-pat00015
는 각 태스크의 평균 예상 실행시간을 나타냄)를 이용하여 계산하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템.
It includes a task pool, a scheduler, and an executor.
When users submit a workflow with a Quality of Service (QoS) requirement, they are assigned to allocate services for workflow processing and to schedule service tasks according to QoS requirements and cloud environment.
The task pool manages multiple workflows for dynamic cloud services, and calculates expected execution time, cost, and latency characteristics of all tasks when a workflow with QoS requirements is submitted from the user. ),
The scheduler schedules tasks in the cuesheet according to a multiple workflow scheduling strategy,
The executor selects an optimal resource or service to execute the tasks in the cue sheet, feeds back the task completion status to the task pool when the service of the randomly selected task is completed successfully,
The task pool removes the corresponding task when the task completion status is fed back from the executor,
Cost (Task i ) value for the tasks of each workflow is
Figure 112013015508119-pat00014
Where Tput (Task i ) represents the respective throughput for the task in each workflow, and Length (Task i ) represents the size of each task,
Figure 112013015508119-pat00015
Cost-based scheduling system for multiple workflows in cloud computing.
청구항 1에 있어서,
상기 태스크풀에서는 태스크의 예상 실행시간, 비용, 지연시간 특성에 관한 정보를 태스크와 함께 상기 스케줄러에 제출하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템.
The method according to claim 1,
The task pool is a cost-based scheduling system for multiple workflows in the cloud computing to submit information on the expected execution time, cost, latency characteristics of the task with the scheduler.
삭제delete 청구항 1에 있어서,
상기 스케줄러에서는 가장 낮은 비용을 가진 태스크들을 스케줄링하고, 비용 값이 같은 경우에는 더 높은 지연시간 값을 가진 태스크를 우선적으로 스케줄링하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템.
The method according to claim 1,
Wherein said scheduler schedules the tasks with the lowest cost, and preferentially schedules the task with the higher latency value if the cost values are the same.
청구항 1에 있어서,
상기 태스크풀은 상기 실행기가 태스크의 완료 피드백이 있을 때마다, 임의의 하부 태스크(자식 태스크)들이 준비하고 있는지 아닌지를 검사한 다음, 상기 스케줄러에 제출하는 과정을 수행하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템.
The method according to claim 1,
The task pool checks whether any subtasks (child tasks) are preparing whenever the executor has a task's completion feedback, and then submits the multiple workflows in cloud computing to perform the process of submitting to the scheduler. Cost-based scheduling system.
청구항 1에 있어서,
상기 스케줄러에서는 이용할 수 있는 서비스가 존재하며 태스크의 정보가 계산되어 태스크풀에서 대기하고 있을 때마다, 우선순위를 재계산하여 모든 태스크들을 정렬하는 스케줄링 작업을 반복적으로 수행하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 시스템.
The method according to claim 1,
Whenever there is a service available in the scheduler and the information of the task is calculated and waiting in the task pool, multiple workflows are performed in the cloud computing which repeatedly performs the scheduling task of re-computing and sorting all tasks. Cost-based scheduling system.
대기상태에서 임의의 새로운 워크플로우가 사용자로부터 태스크풀에 제출되면 모든 태스크들의 예상 실행시간과 비용, 지연시간 특성을 계산하고 태스크들을 상기 태스크풀의 큐시트에 저장하고,
큐시트에 있는 첫번째 태스크가 스케줄러에 제출되고 스케줄러는 모든 태스크들의 계산된 비용을 가지고 우선순위를 재계산하여 정렬하는 작업을 반복적으로 수행하고,
실행기에서는 태스크가 할당되지 않은 서비스를 확인하고 상기 서비스에 태스크를 할당하며,
서비스가 완료되면 실행기는 완료 상태를 태스크풀에 피드백하고 큐시트에서 해당 태스크를 제거하는 과정을 포함하고,
상기 각 워크플로우의 태스크들에 대한 비용(Cost(Taski)) 값은 수학식
Figure 112013069108529-pat00016
(여기에서, Tput(Taski)는 각 워크플로우의 태스크에 대한 각각의 처리율을 나타내고, Length(Taski)는 각 태스크의 크기를 나타내고,
Figure 112013069108529-pat00017
는 각 태스크의 평균 예상 실행시간을 나타냄)를 이용하여 계산하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법.
When a new workflow is submitted from the user to the task pool in the waiting state, it calculates the expected execution time, cost, and latency characteristics of all tasks, stores the tasks in the queue pool of the task pool,
The first task in the cuesheet is submitted to the scheduler, and the scheduler repeatedly performs the task of recalculating and sorting the priorities with the calculated costs of all tasks,
The launcher checks the service to which no task is assigned and assigns the task to the service,
When the service completes, the launcher includes feeding back the completion status to the taskpool and removing the task from the cuesheet,
Cost (Task i ) value for the tasks of each workflow is
Figure 112013069108529-pat00016
Where Tput (Task i ) represents the respective throughput for the task in each workflow, Length (Task i ) represents the size of each task,
Figure 112013069108529-pat00017
Cost-based scheduling for multiple workflows in cloud computing.
청구항 7에 있어서,
상기 태스크풀에서는 태스크의 예상 실행시간, 비용, 지연시간 특성에 관한 정보를 태스크와 함께 상기 스케줄러에 제출하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법.
The method of claim 7,
The task pool is a cost-based scheduling method for multiple workflows in the cloud computing to submit information on the expected execution time, cost, latency characteristics of the task with the scheduler.
삭제delete 청구항 7에 있어서,
상기 스케줄러에서는 가장 낮은 비용을 가진 태스크들을 스케줄링하고, 비용 값이 같은 경우에는 더 높은 지연시간 값을 가진 태스크를 우선적으로 스케줄링하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법.
The method of claim 7,
The scheduler schedules the tasks with the lowest cost, and preferentially schedules the task with the higher latency value if the cost values are the same.
청구항 7에 있어서,
상기 태스크풀은 상기 실행기가 태스크의 완료 피드백이 있을 때마다, 임의의 하부 태스크(자식 태스크)들이 준비하고 있는지 아닌지를 검사한 다음, 상기 스케줄러에 제출하는 과정을 수행하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법.
The method of claim 7,
The task pool checks whether any subtasks (child tasks) are preparing whenever the executor has a task's completion feedback, and then submits the multiple workflows in cloud computing to perform the process of submitting to the scheduler. Cost-based Scheduling Method.
청구항 7에 있어서,
상기 스케줄러에서는 이용할 수 있는 서비스가 존재하며 태스크의 정보가 계산되어 태스크풀에서 대기하고 있을 때마다, 우선순위를 재계산하여 모든 태스크들을 정렬하는 스케줄링 작업을 반복적으로 수행하는 클라우드 컴퓨팅에서 다중 워크플로우를 위한 비용기반 스케줄링 방법.
The method of claim 7,
Whenever there is a service available in the scheduler and the information of the task is calculated and waiting in the task pool, multiple workflows are performed in the cloud computing which repeatedly performs the scheduling task of re-computing and sorting all tasks. Cost-based Scheduling Method.
KR1020110003967A 2011-01-14 2011-01-14 Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same KR101350755B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110003967A KR101350755B1 (en) 2011-01-14 2011-01-14 Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110003967A KR101350755B1 (en) 2011-01-14 2011-01-14 Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same

Publications (2)

Publication Number Publication Date
KR20120082598A KR20120082598A (en) 2012-07-24
KR101350755B1 true KR101350755B1 (en) 2014-01-10

Family

ID=46714301

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110003967A KR101350755B1 (en) 2011-01-14 2011-01-14 Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same

Country Status (1)

Country Link
KR (1) KR101350755B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720636B2 (en) 2015-02-04 2017-08-01 S-Printing Solution Co., Ltd. Cloud print server and method of providing automatic connection service performed by the cloud print server

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870317B (en) * 2012-12-10 2017-07-21 中兴通讯股份有限公司 Method for scheduling task and system in cloud computing
KR101491689B1 (en) * 2013-07-24 2015-02-11 한국과학기술정보연구원 Apparatus and method for allocating computing resource to multiple users
US10110501B2 (en) * 2014-07-07 2018-10-23 Microsoft Technology Licensing, Llc Tenant control in initiating atomic platform tasks
KR102357901B1 (en) * 2014-09-25 2022-02-07 주식회사 케이티 System and method for heath information exchange
US9495208B2 (en) * 2014-12-04 2016-11-15 Microsoft Technology Licensing, Llc Proactive presentation of multitask workflow components to increase user efficiency and interaction performance
KR101670460B1 (en) * 2015-04-16 2016-11-01 한국과학기술원 Apparatus and method for controlling scheduling of workflow based on cloud
KR101643251B1 (en) * 2015-04-29 2016-07-28 한국과학기술원 Method for scheduling workflow to virtual machines based on task fragmentation scheme of computing workflow
US10331485B2 (en) * 2016-11-18 2019-06-25 Huawei Technologies Co., Ltd. Method and system for meeting multiple SLAS with partial QoS control
KR102612312B1 (en) 2018-11-05 2023-12-12 삼성전자주식회사 Electronic apparatus and controlling method thereof
CN111782355A (en) * 2020-06-03 2020-10-16 上海交通大学 Cloud computing task scheduling method and system based on mixed load
CN113064711B (en) * 2021-04-15 2022-09-20 北京理工大学 Online multi-workflow dynamic scheduling method and system
KR20230059508A (en) 2021-10-26 2023-05-03 삼성에스디에스 주식회사 Method for monitoring job scheduler, apparatus and system for executing the method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070009045A (en) * 2005-07-15 2007-01-18 학교법인 대전기독학원 한남대학교 A method of scheduling for multiple evaluation project based common criteria
KR20090046739A (en) * 2007-11-06 2009-05-11 어플라이드 머티어리얼스, 인코포레이티드 User-specified configuration of scheduling services

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070009045A (en) * 2005-07-15 2007-01-18 학교법인 대전기독학원 한남대학교 A method of scheduling for multiple evaluation project based common criteria
KR20090046739A (en) * 2007-11-06 2009-05-11 어플라이드 머티어리얼스, 인코포레이티드 User-specified configuration of scheduling services

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720636B2 (en) 2015-02-04 2017-08-01 S-Printing Solution Co., Ltd. Cloud print server and method of providing automatic connection service performed by the cloud print server

Also Published As

Publication number Publication date
KR20120082598A (en) 2012-07-24

Similar Documents

Publication Publication Date Title
KR101350755B1 (en) Cost Based Scheduling Algorithm for Multiple Workflow in Cloud Computing and System of The Same
US8015564B1 (en) Method of dispatching tasks in multi-processor computing environment with dispatching rules and monitoring of system status
US20150033237A1 (en) Utility-optimized scheduling of time-sensitive tasks in a resource-constrained environment
Tumanov et al. alsched: Algebraic scheduling of mixed workloads in heterogeneous clouds
Liaw et al. Hypersched: Dynamic resource reallocation for model development on a deadline
Yao et al. LsPS: A job size-based scheduler for efficient task assignments in Hadoop
KR101770191B1 (en) Resource allocation and apparatus
Di et al. Optimization of composite cloud service processing with virtual machines
CN109240795A (en) A kind of resource regulating method of the cloud computing resources pool model suitable for super fusion IT infrastructure
Monge et al. Autoscaling Scientific Workflows on the Cloud by Combining On-demand and Spot Instances.
Ferreira da Silva et al. Controlling fairness and task granularity in distributed, online, non‐clairvoyant workflow executions
Kumar et al. Delay-based workflow scheduling for cost optimization in heterogeneous cloud system
Abba et al. Deadline based performance evaluation of job scheduling algorithms
US10592473B2 (en) Method for improving energy efficiency of map-reduce system and apparatus thereof
Liu et al. Computing load aware and long-view load balancing for cluster storage systems
Garg et al. A meta-scheduler with auction based resource allocation for global grids
Caron et al. Multi-criteria malleable task management for hybrid-cloud platforms
Ru et al. Providing fairer resource allocation for multi-tenant cloud-based systems
Hu et al. An optimal resource allocator of elastic training for deep learning jobs on cloud
Thai et al. Algorithms for optimising heterogeneous Cloud virtual machine clusters
Sowjanya et al. Resource allocation techniques in cloud computing
Hassan et al. A survey about efficient job scheduling strategies in cloud and large scale environments
Thai et al. Minimising the execution of unknown Bag-of-Task jobs with deadlines on the Cloud
US9852009B2 (en) Method for optimizing utilization of workload-consumed resources for time-inflexible workloads
Sun et al. Quality of service of grid computing: resource sharing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
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: 20161223

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171222

Year of fee payment: 5