Andrew Wang and Shivaram Venkataraman and Sara Alspaugh and Randy H. Katz and Ion Stoica

EECS Department, University of California, Berkeley

Technical Report No. UCB/EECS-2012-208

November 7, 2012

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-208.pdf

Cake is a coordinated, multi-resource scheduler for shared distributed storage environments with the goal of achieving both high throughput and bounded latency. Cake uses a two-level scheduling scheme to enforce high-level service-level objectives (SLOs). First-level schedulers control consumption of resources such as disk and CPU. These schedulers (1) provide mechanisms for differentiated scheduling, (2) split large requests into smaller chunks, and (3) limit the number of outstanding device requests, which together allow for effective control over multi-resource consumption within the storage system. Cake’s second-level scheduler coordinates the first-level schedulers to map high-level SLO requirements into actual scheduling parameters. These parameters are dynamically adjusted over time to enforce high-level performance specifications for changing workloads. We evaluate Cake using multiple workloads derived from real-world traces. Our results show that Cake allows application programmers to explore the latency vs. throughput trade-off by setting different high-level performance requirements on their workloads. Furthermore, we show that using Cake has concrete economic and business advantages, reducing provisioning costs by up to 50% for a consolidated workload and reducing the completion time of an analytics cycle by up to 40%.

Advisors: Ion Stoica


BibTeX citation:

@mastersthesis{Wang:EECS-2012-208,
    Author= {Wang, Andrew and Venkataraman, Shivaram and Alspaugh, Sara and Katz, Randy H. and Stoica, Ion},
    Title= {Cake: Enabling High-level SLOs on Shared Storage Systems},
    School= {EECS Department, University of California, Berkeley},
    Year= {2012},
    Month= {Nov},
    Url= {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-208.html},
    Number= {UCB/EECS-2012-208},
    Abstract= {Cake is a coordinated, multi-resource scheduler for shared distributed storage environments with the goal of achieving both high throughput and bounded latency. Cake uses a two-level scheduling scheme to enforce high-level service-level objectives (SLOs). First-level schedulers control consumption of resources such as disk and CPU. These schedulers (1) provide mechanisms for differentiated scheduling, (2) split large requests into smaller chunks, and (3) limit the number of outstanding device requests, which together allow for effective control over multi-resource consumption within the storage system. Cake’s second-level scheduler coordinates the first-level schedulers to map high-level SLO requirements into actual scheduling parameters. These parameters are dynamically adjusted over time to enforce high-level performance specifications for changing workloads. We evaluate Cake using multiple workloads derived from real-world traces. Our results show that Cake allows application programmers to explore the latency vs. throughput trade-off by setting different high-level performance requirements on their workloads. Furthermore, we show that using Cake has concrete economic and business advantages, reducing provisioning costs by up to 50% for a consolidated workload and reducing the completion time of an analytics cycle by up to 40%.},
}

EndNote citation:

%0 Thesis
%A Wang, Andrew 
%A Venkataraman, Shivaram 
%A Alspaugh, Sara 
%A Katz, Randy H. 
%A Stoica, Ion 
%T Cake: Enabling High-level SLOs on Shared Storage Systems
%I EECS Department, University of California, Berkeley
%D 2012
%8 November 7
%@ UCB/EECS-2012-208
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-208.html
%F Wang:EECS-2012-208