scc : Cluster Storage Provisioning Informed by Application Characteristics and SLAs Harsha V. Madhyastha*, John C. McCullough , George Porter, Rishi Kapoor, Stefan Savage, Alex C. Snoeren, and Amin Vahdat UC Riverside* and UC San Diego Bourns College of Engineering 1 Friday, February 17, 12
Provisioning Hardware for Cluster Applications 2 Friday, February 17, 12
Provisioning Hardware for Cluster Applications “Need 100 Queries/s” 2 Friday, February 17, 12
Provisioning Hardware for Cluster Applications “Need 100 Queries/s” 2 Friday, February 17, 12
Provisioning Hardware for Cluster Applications “Need 100 “Need 1000 Queries/s” Views/s” 2 Friday, February 17, 12
Provisioning Hardware for Cluster Applications “Need 100 “Need 1000 Queries/s” Views/s” 2 Friday, February 17, 12
Goals for Provisioning at Low-cost • High performance • Redundancy • Supporting multi-tenancy • High availability • ... Our focus: reach performance goal and minimize cost for a single application, emphasizing storage 3 Friday, February 17, 12
Challenge: Large Configuration Space • Diverse server enclosures/architectures • Diverse storage options Size MB/s (r/w) IOPS Cost 7.2k-rpm 500GB 90/90 125/125 $213 15k-rpm 146GB 150/150 285/285 $296 SSD 32GB 250/80 2500/1000 $496 DRAM 1GB 13k/13k 1.6B/1.6B $36 4 Friday, February 17, 12
Challenge: Large Configuration Space • Diverse server enclosures/architectures • Diverse storage options Size MB/s (r/w) IOPS Cost 7.2k-rpm 500GB 90/90 125/125 $213 15k-rpm 146GB 150/150 285/285 $296 SSD 32GB 250/80 2500/1000 $496 DRAM 1GB 13k/13k 1.6B/1.6B $36 • Current state-of-the-art: 4 Friday, February 17, 12
Challenge: Large Configuration Space • Diverse server enclosures/architectures • Diverse storage options Size MB/s (r/w) IOPS Cost 7.2k-rpm 500GB 90/90 125/125 $213 15k-rpm 146GB 150/150 285/285 $296 SSD 32GB 250/80 2500/1000 $496 DRAM 1GB 13k/13k 1.6B/1.6B $36 • Current state-of-the-art: • Apply rules-of-thumb from experience • Trial-and-error with various configurations • Configuration duplicated to scale-out 4 Friday, February 17, 12
Scale-out Shortcomings for Photo-sharing Application 5 Friday, February 17, 12
Scale-out Shortcomings for Photo-sharing Application 4x 5 Friday, February 17, 12
Scale-out Shortcomings for Photo-sharing Application 4x Insight : Match storage to workload, leverage heterogeneity 5 Friday, February 17, 12
Goal: Understand Configuration Space • What is a low-cost configuration now? • What will low-cost configurations look like in the future? Model Measure Predict Application “in-the-small” “in-the-large” Performance 6 Friday, February 17, 12
scc: Storage Configuration Compiler scc 7 Friday, February 17, 12
scc: Storage Configuration Compiler Cluster Building-Blocks scc 7 Friday, February 17, 12
scc: Storage Configuration Compiler Cluster Building-Blocks Application scc Model 7 Friday, February 17, 12
scc: Storage Configuration Compiler Cluster Building-Blocks Application scc Model SLA Specification 7 Friday, February 17, 12
scc: Storage Configuration Compiler Cluster Building-Blocks Application scc Model Cost SLA Specification SLA 7 Friday, February 17, 12
scc: Storage Configuration Compiler Cluster Building-Blocks Application scc Model Cost SLA Specification SLA 7 Friday, February 17, 12
Outline • Modeling Applications and Hardware • Computing low-cost configurations • Example • Validation • Applications of scc 8 Friday, February 17, 12
Cluster Building Blocks • Many types of servers 9 Friday, February 17, 12
Cluster Building Blocks • Many types of servers CPU • Cores 9 Friday, February 17, 12
Cluster Building Blocks • Many types of servers CPU RAM • Cores • RAM 9 Friday, February 17, 12
Cluster Building Blocks • Many types of servers CPU RAM • Cores • RAM • Storage HDD HDD 9 Friday, February 17, 12
Cluster Building Blocks • Many types of servers CPU RAM • Cores • RAM • Storage HDD HDD • I/O & Network 9 Friday, February 17, 12
Application Model • Breakdown application into: • Tasks (Computation) • Datasets (Storage) • Edges between Tasks and Datasets (I/O) • Edges among Tasks (dependencies) 10 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photos Thumbnails (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails View Photo (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails View Photo (Tag, Photo) 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails View Photo (Tag, Photo) View Tag 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails View Photo (Tag, Photo) View Tag 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks 5ms Photo Upload Photos 100ms Thumbnail 10ms Write Tags Thumbnails 1ms View Photo (Tag, Photo) 10ms View Tag 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks 5ms Photo Upload 1x200kB Photos 100ms Thumbnail 1x4kB 10ms Write Tags Thumbnails 10x1kB 1ms View Photo (Tag, Photo) 10ms View Tag 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks 5ms Photo Upload 1x200kB Photos 100ms Thumbnail 1x4kB 1x200kB 10ms Write Tags Thumbnails 10x1kB 1ms 10x4kB View Photo (Tag, Photo) 10x1kB 10ms View Tag 10x1kB 11 Friday, February 17, 12
Example Model: Photo-Sharing Datasets Tasks 5ms Photo Upload 1x200kB Photos 100ms Thumbnail 1x4kB 1TB 1x200kB 10ms Write Tags Thumbnails 10x1kB 1ms 20GB 10x4kB View Photo (Tag, Photo) 10x1kB 10ms View Tag 10x1kB 2GB 11 Friday, February 17, 12
Photo-Sharing SLA Datasets Tasks Photo Upload Photos Thumbnail Write Tags Thumbnails View Photo (Tag, Photo) View Tag 12 Friday, February 17, 12
Photo-Sharing SLA Datasets Tasks Photo Upload Photos Thumbnail Tasks/s Write Tags Thumbnails View Photo (Tag, Photo) View Tag 12 Friday, February 17, 12
Outline • Modeling Applications and Hardware • Computing low-cost configurations • Example • Validation • Applications of scc 13 Friday, February 17, 12
Navigating the Configuration Space Cost SLA 14 Friday, February 17, 12
Navigating the Configuration Space Cost SLA 14 Friday, February 17, 12
Navigating the Configuration Space Cost SLA 14 Friday, February 17, 12
Navigating the Configuration Space Cost SLA 14 Friday, February 17, 12
Navigating the Configuration Space Cost SLA 14 Friday, February 17, 12
Guiding Principle to Meet SLA • Complex interaction across storage-type and dataset assignments • Need to consider costs of meeting SLA for each permutation • Our configuration space is: S • D datasets, S storage-types D configs 15 Friday, February 17, 12
Meeting the SLA at Low-cost Photos Thumbs Tags 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm Thumbs 7.2krpm Tags 7.2krpm 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm Thumbs 7.2krpm Tags 7.2krpm # storage units per-dataset 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm Thumbs 7.2krpm Tags 7.2krpm # storage units per-dataset Assign CPUs for computation 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm Thumbs 7.2krpm Tags 7.2krpm # storage units per-dataset Assign CPUs for computation Pack into servers 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm Thumbs 7.2krpm Tags 7.2krpm # storage units per-dataset Assign CPUs for computation Pack into servers Compute cost 16 Friday, February 17, 12
Meeting the SLA at Low-cost Photos 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm ... Thumbs 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm Tags 7.2krpm 15krpm SSD 7.2k+DRAM 15k+DRAM # storage units per-dataset Assign CPUs for computation Pack into servers Compute cost 16 Friday, February 17, 12
Recommend
More recommend