scc: cluster storage provisioning informed by application characteristics and SLAs

Harsha V. Madhyastha, John McCullough, George Porter, Rishi Kapoor, Stefan Savage, Alex C. Snoeren, Amin Vahdat
2012 USENIX Conference on File and Storage Technologies  
Storage for cluster applications is typically provisioned based on rough, qualitative characterizations of applications. Moreover, configurations are often selected based on rules of thumb and are usually homogeneous across a deployment; to handle increased load, the application is simply scaled out across additional machines and storage of the same type. As deployments grow larger and storage options (e.g., disks, SSDs, DRAM) diversify, however, current practices are becoming increasingly
more » ... icient in trading off cost versus performance. To enable more cost-effective deployment of cluster applications, we develop scc-a storage configuration compiler for cluster applications. scc automates cluster configuration decisions based on formal specifications of application behavior and hardware properties. We study a range of storage configurations and identify specifications that succinctly capture the trade-offs offered by different types of hardware, as well as the varying demands of application components. We apply scc to three representative applications and find that scc is expressive enough to meet application Service Level Agreements (SLAs) while delivering 2-4.5× savings in cost on average compared to simple scale-out options. scc's advantage stems mainly from its ability to configure heterogeneous-rather than conventional, homogeneous-cluster architectures to optimize cost.
dblp:conf/fast/MadhyasthaMPKSSV12 fatcat:wht3cao63nhmpo2x4mluclgsre