840 likes | 1.02k Views
Adaptive Scheduling with QoS Satisfaction in Hybrid Cloud Environment. 研究生:李羿慷 指導老師:張玉山 老師. Outline. Introduction Related Work Problem Definition and Formulation Adaptive Scheduling Algorithm with QoS Satisfaction Experiments and Discussion Conclusions and Future Work. Introduction
E N D
Adaptive Scheduling with QoS Satisfaction in Hybrid Cloud Environment 研究生:李羿慷 指導老師:張玉山 老師
Outline • Introduction • Related Work • Problem Definition and Formulation • Adaptive Scheduling Algorithm with QoS Satisfaction • Experiments and Discussion • Conclusions and Future Work
Introduction • Related Work • Problem Definition and Formulation • Adaptive Scheduling Algorithm with QoS Satisfaction • Experiments and Discussion • Conclusions and Future Work
1. Introduction • Cloud computing • Huge data store and highly parallel computing • Cloud services: SaaS, PaaS, IaaS • Private cloud • Control and security issue • One-time purchase and long term maintain • Public cloud • Flexible, scalable • Pay-per-use
Introduction (cont.) • Cloud environment workload status • Ex: Yahoo! Video
Introduction (cont.) • Hybrid Cloud • Combine Private and Public cloud • Private cloud • Regular workload • Constant maintenance cost • Public cloud • Transit overloading • Pay-per-use (cost issue)
Introduction (cont.) • Cloud services • Efficiency • Reliability • Cost • Quality of Service (QoS) • Response time ↓ • Payment ↓
Introduction (cont.) • Hybrid Cloud • Guarantee user QoS demand • Workload dispatching • Private Cloud • Maximize utilization • Minimize execution time • Public Cloud • Minimize cost expense
Introduction (cont.) • To improve QoS satisfaction in hybrid cloud • We propose: Adaptive Scheduling with QoS Satisfaction in Hybrid Cloud Environment
MMKP • Mapping the QoS satisfaction and cost function into a MMKP • MMKP (Multi-dimension Multi-choice Knapsack Problem) • MMKP is proved as NP-complete • Maximal utilization • Minimal cost value • QoS deadline constraint
Introduction (cont.) • We may solve our problem by finding a near optimal heuristic solutions in polynomial time • Using dynamic programming finding a heuristic solution (near optimal) • Solving complex problem into smaller sub-problems • Using CloudSim to evaluate the experiment
Introduction • Related Work • Problem Definition and Formulation • Adaptive Scheduling Algorithm with QoS Satisfaction • Experiments and Discussion • Conclusions and Future Work
2. Related Work • FIFO: first come first serve • Most common • Drawback: Convoy Effect • Fair (Facebook), Capacity (Yahoo) Scheduling • Solve multi-user problem in FIFO • Ensure every task has approximately equal computational resource/time
Related Work (cont.) • Intelligent Workload Factoring for A Hybrid Cloud Computing Model • Split the workload into two parts • Base load and trespassing load (privately-owned data center and public cloud service) • Reduce data cache/replication overhead • But not support real-time QoS constraint computing
Related Work (cont.) • GA-Based Task Scheduler for the Cloud Computing Systems • Genetic Algorithm based for task level scheduling in Hadoop MapReduce • Achieve better load balancing • GA for making the optimal decision • Not for Hybrid Cloud • Not supporting QoS constraint
Related Work (cont.) • Cost-Minimizing Scheduling of Workflows on a Cloud of Memory Managed Multicore Machines • Service-oriented architecture framework • Cost function, maps values of workflow tardiness to corresponding cost function value • To minimize the sum of cost function values for all workflows • Cost function not for user-aspect design • Not supporting Hybrid Cloud
Introduction • Related Work • Problem Definition and Formulation • Adaptive Scheduling Algorithm with QoS Satisfaction • Experiments and Discussion • Conclusions and Future Work
3. Problem Definition and Formulation • 3.1 Resource Slot Definition • 3.2 Request Job Definition • 3.3 Problem Formulation
3.1 Resource Slot Definition • Private resource slot • One node (machine) in private cloud can generate more slots • Base on virtual machine infrastructure • One slot require one CPU resource ability • Basic unit for handling request task
Resource Slot Definition (cont.) Example of Private Slots
Resource Slot Definition (cont.) • Resource Slots has different computing ability, depends on CPU speed, memory…etc • Unit: Million Instruction Per Second • Private Cloud set data replications between resource slots
Resource Slot Definition (cont.) • Public Resource Slot • Resource from charging public cloud provider • Based on different instance type • Unify charging policy by • Computing price • Storage price • Data transfer price
Resource Slot Definition (cont.) Example of Public Slots
3.2 Request Job Definition • Target applications • Internet-based applications • Focus on data sets on certain kinds of distributable, parallel problems • Ex: image and video rendering codes and highly parallel data analysis codes • Each application has a completion deadline
3.3 Problem Formulation • For guarantee QoS demand deadline constraint • Maximize private slot utilization • Minimize task execution time • Minimize cost value
Definition • Deadline constraint: • For Job Ji = {Vi1 ~ Vin}, and deadline Di • Code size SCij for task Vij • For private slot PrRk and computing ability Prμk, k = 1 to m
Definition (cont.) • Budget control • For Job Ji = {Vi1 ~ Vin}, and cost budget Mi • Code size SCij for task Vij • Information data size SDijfor task Vij • For public slot PuRq and computing price xq • For public slot PuRq and storage price yq • k = 1 to m
Definition (cont.) • Estimated Finish Time (Est) • For task Vij on private slot PrRk • Code size SCij for Vij • Computing ability Prμk for PrRk
Definition (cont.) • Estimated Execution Time (EEt) • For task Vij on private slot PrRk • Code size SCij for Vij • Computing ability Prμk for PrRk • Data Transmission Time (Dtt) • For task Vij and code size SCij • Network bandwidth NB • Disk speed DSk on resource slot k ,
Definition (cont.) • Cost Function (CostF) • Code size SCij and information data size SDij for task Vij • Computing price xk, storage price yk, data transfer in price dtik and data transfer out price dtio for public resource slot PuRk
MMKP • Mapping our mathematical formulate problems into MMKP (NP-complete) • MMKP (Multi-dimension Multi-choice Knapsack Problem) • Maximal utilization • Minimal cost value • QoS deadline constraint • We may solve our problem by finding a near optimal heuristic solutions in polynomial time
Introduction • Related Work • Problem Definition and Formulation • Adaptive Scheduling Algorithm with QoS Satisfaction • Experiments and Discussion • Conclusions and Future Work
4. Adaptive Scheduling Algorithmwith QoS Satisfaction • 4.1 Resource Needed Weight • 4.2 Execution Time Estimation with Task on Different Slots • 4.3 Dynamic Programming for Dispatching to Candidate Slots • 4.4 Dispatch Selection from Slot Queue • 4.5 Dynamic Programming for Minimal Cost on Public Slot
4.1 Resource Needed Weight • If multi Jobs arrive in the pool at the same time, they’ll share the resource by the % of Resource Needed Weight Wi • Differ from Fair Scheduling, guarantee the resource amount base on code size and deadline • Wx:Wy:Wz ->Slot distributed rate, for Job x, y, z
Resource Needed Weight (cont.) Fair Scheduling AsQ
4.2 Execution Time Estimation with Task on Different Slots • Collect private cloud resources’ current status and information • Remain code size • Computation ability • Calculate estimated finish time (Est) • Can find out when the slot will be available
Execution Time Estimation with Taskon Different Slots (cont.) • Calculate estimated execution time (EEt) of current tasks on every private resource from 1 to k • Estimated Execution time • Data Transfer Time • If , Dtt=0 • Else if ,
Execution Time Estimation with Taskon Different Slots (cont.) • By having Est and EEt, the slots which were able to finish the task before the deadline can be selected • The slots which can reach the QoS (deadline) will be collect in a candidate set Example of Est + EEt
4.3 Dynamic Programming for Dispatching to Candidate Slots • The optimal scheduling has been mapping to MMKP • Using dynamic programming to solve the NP-complete problem • Finding the minimal runtime of every tasks and slots • Data location, computation ability, network bandwidth…etc, will effect the total runtime
Dynamic Programming for Dispatching to Candidate Slots (cont.) • Dynamic programming will make the decision with minimal execution time of all • The less execution time we take, the more task we can serve on the same private cloud resources with same operation cost • More on private, less on charging public
4.4 Dispatch Selection fromSlot Queue • When transit overloading or strict deadline • Private slots can not handle in QoS demand • Need to dispatch into charging public slots • Examining the possibility of task in queue with dispatching into public slots • Data transmission time
4.5 Dynamic Programming for Minimal Cost on Public Slot • Trying to minimize the cost in renting public resource slots • Cost function with knapsack problem can be solve by dynamic programming • Find out the minimal cost and reach the QoS deadline