Title
Towards characterizing cloud backend workloads: insights from Google compute clusters
Abstract
The advent of cloud computing promises highly available, efficient, and flexible computing services for applications such as web search, email, voice over IP, and web search alerts. Our experience at Google is that realizing the promises of cloud computing requires an extremely scalable backend consisting of many large compute clusters that are shared by application tasks with diverse service level requirements for throughput, latency, and jitter. These considerations impact (a) capacity planning to determine which machine resources must grow and by how much and (b) task scheduling to achieve high machine utilization and to meet service level objectives. Both capacity planning and task scheduling require a good understanding of task resource consumption (e.g., CPU and memory usage). This in turn demands simple and accurate approaches to workload classification-determining how to form groups of tasks (workloads) with similar resource demands. One approach to workload classification is to make each task its own workload. However, this approach scales poorly since tens of thousands of tasks execute daily on Google compute clusters. Another approach to workload classification is to view all tasks as belonging to a single workload. Unfortunately, applying such a coarse-grain workload classification to the diversity of tasks running on Google compute clusters results in large variances in predicted resource consumptions. This paper describes an approach to workload classification and its application to the Google Cloud Backend, arguably the largest cloud backend on the planet. Our methodology for workload classification consists of: (1) identifying the workload dimensions; (2) constructing task classes using an off-the-shelf algorithm such as k-means; (3) determining the break points for qualitative coordinates within the workload dimensions; and (4) merging adjacent task classes to reduce the number of workloads. We use the foregoing, especially the notion of qualitative coordinates, to glean several insights about the Google Cloud Backend: (a) the duration of task executions is bimodal in that tasks either have a short duration or a long duration; (b) most tasks have short durations; and (c) most resources are consumed by a few tasks with long duration that have large demands for CPU and memory.
Year
DOI
Venue
2010
10.1145/1773394.1773400
SIGMETRICS Performance Evaluation Review
Keywords
Field
DocType
google cloud backend,task scheduling,own workload,workload classification,coarse-grain workload classification,cloud computing,workload dimension,short duration,long duration,cloud backend workloads,single workload,voice over ip,k means,service level
Service level objective,Workload,Computer science,Scheduling (computing),Real-time computing,Capacity planning,Service level requirement,Voice over IP,Distributed computing,Cloud computing,Scalability
Journal
Volume
Issue
Citations 
37
4
86
PageRank 
References 
Authors
3.85
18
4
Name
Order
Citations
PageRank
Asit K. Mishra1121646.21
Joseph Hellerstein22136252.24
Cirne, Walfredo3139580.29
Chita R. Das4103859.34