Energy Aware Resource Management for Mapreduce Jobs
Total Page:16
File Type:pdf, Size:1020Kb
Energy Aware Resource Management for MapReduce Jobs by Adam Gregory A thesis submitted to the Faculty of Graduate and Postdoctoral Affairs in partial fulfillment of the requirements for the degree of Master of Applied Science in Electrical and Computer Engineering Carleton University Ottawa, Ontario © 2016, Adam Gregory Abstract Clouds which continue to garner interest from practitioners in industry and academia require effective energy aware resource managers to leverage processing power of underlying resources while minimizing energy consumption in global data centers. This thesis proposes several energy aware resource management techniques that can effectively perform matchmaking and scheduling of MapReduce jobs each of which is characterized by a Service Level Agreement (SLA) that includes a client specified earliest start time, execution time and a deadline with the objective of minimizing energy consumption. Techniques are proposed for both batch workloads and open systems subject to continuous job arrivals. Simulation based experimental results presented in this thesis demonstrate the effectiveness of the proposed energy aware resource management techniques compared to alternative resource management techniques that do not consider energy consumption in task allocation and scheduling decisions. ii Acknowledgements I would like to express my sincere gratitude to Dr. Shikharesh Majumdar for the immeasurable support and guidance he has provided throughout completion of this thesis. Additionally, I would like to acknowledge Carleton University and the Natural Sciences and Engineering Research Council of Canada (NSERC) for providing financial support for this research. Finally, I would like to thank my girlfriend, my family, and my friends for keeping me grounded over the long research process. iii Table of Contents Abstract .............................................................................................................................. ii Acknowledgements .......................................................................................................... iii Table of Contents ............................................................................................................. iv List of Tables .................................................................................................................... ix List of Figures ................................................................................................................... xi List of Abbreviations and Symbols .............................................................................. xiii Glossary of Terms ......................................................................................................... xvii Chapter 1: Introduction ............................................................................................. 19 1.1 Motivation of the Thesis ............................................................................................... 20 1.2 Proposed Solution ......................................................................................................... 21 1.3 Scope of the Thesis ....................................................................................................... 23 1.4 Contributions of the Thesis .......................................................................................... 23 1.5 Thesis Outline ............................................................................................................... 25 Chapter 2: Background and Related Work ............................................................. 27 2.1 MapReduce ................................................................................................................... 27 2.2 Constraint Programming .............................................................................................. 29 2.2.1 Branch and Bound .................................................................................................... 30 2.2.1.1 Node Selection Strategy .................................................................................. 31 2.2.2 Constructive Search with Constraint Propagation ................................................... 32 2.2.2.1 Constraint Propagation .................................................................................... 32 2.2.2.2 Constructive Search ......................................................................................... 34 2.3 Data Center Energy Consumption ................................................................................ 35 2.3.1 Dynamic Voltage and Frequency Scaling ................................................................ 36 iv 2.4 Related Work ................................................................................................................ 37 2.4.1 Scheduling for fast completion time ........................................................................ 37 2.4.2 Resource management for Jobs with SLAs .............................................................. 39 2.4.3 Energy aware resource management ........................................................................ 40 2.4.3.1 Reducing Idle Resource Energy Consumption ................................................ 41 2.4.3.2 Reducing Energy Consumption Due to Job Execution ................................... 43 2.4.3.3 Resource Management in Heterogeneous Cloud Environments ..................... 46 2.4.4 Multi-objective resource management ..................................................................... 47 2.4.5 Comparison with Related Work ............................................................................... 49 Chapter 3: Mathematical Model and CP Formulation........................................... 51 3.1 Mathematical Models ................................................................................................... 51 3.1.1 Energy Model ........................................................................................................... 51 3.1.2 System Model........................................................................................................... 55 3.1.3 Workload Model ...................................................................................................... 56 3.2 Constraint Programming Formulation and Implementation ......................................... 58 3.2.1 Constraint Programming Model Formulation .......................................................... 59 3.2.2 Constraint Programming Model Implementation..................................................... 64 3.2.2.1 CP Optimizer Processing Time ....................................................................... 69 Chapter 4: Energy Aware Resource Management Techniques for Batch Workloads 73 4.1 Energy Aware Batch Resource Manager ...................................................................... 73 4.1.1 Overview .................................................................................................................. 73 4.1.2 Performance Evaluation ........................................................................................... 74 4.1.2.1 Experimental Setup ......................................................................................... 75 4.1.2.2 Performance Metrics ....................................................................................... 76 4.1.2.3 System and Workload Parameters ................................................................... 79 v 4.1.2.4 Processor Description ...................................................................................... 82 4.1.3 Experimental Results ............................................................................................... 83 4.1.3.1 Impact of Laxity Factor ................................................................................... 84 4.1.3.2 Impact of Missed Deadline Ratio Bound ........................................................ 85 4.1.3.3 Impact of Workload Size ................................................................................. 87 4.1.3.4 Number of Missed Deadlines .......................................................................... 90 4.1.4 Summary of Results ................................................................................................. 90 4.2 Configurable Batch Resource Manager ........................................................................ 91 4.2.1 Overview .................................................................................................................. 91 4.2.2 Resource Manager Design ....................................................................................... 93 4.2.2.1 Alternative Resource Manager Functionality .................................................. 96 4.2.3 Performance Evaluation ........................................................................................... 98 4.2.3.1 Experimental Setup ......................................................................................... 98 4.2.3.2 Performance Metrics ....................................................................................... 99 4.2.3.3 System and Workload Parameters ................................................................. 100 4.2.3.4 Processor Description .................................................................................... 102 4.2.4 Experimental Results ............................................................................................. 103 4.2.4.1 Impact of Batch