Provisioning Hardware for Cluster Applications 2 Friday, February - - PowerPoint PPT Presentation

provisioning hardware for cluster applications
SMART_READER_LITE
LIVE PREVIEW

Provisioning Hardware for Cluster Applications 2 Friday, February - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

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

  • f Engineering

1

Friday, February 17, 12

slide-2
SLIDE 2

Provisioning Hardware for Cluster Applications

2

Friday, February 17, 12

slide-3
SLIDE 3

Provisioning Hardware for Cluster Applications

“Need 100 Queries/s”

2

Friday, February 17, 12

slide-4
SLIDE 4

Provisioning Hardware for Cluster Applications

“Need 100 Queries/s”

2

Friday, February 17, 12

slide-5
SLIDE 5

Provisioning Hardware for Cluster Applications

“Need 100 Queries/s” “Need 1000 Views/s”

2

Friday, February 17, 12

slide-6
SLIDE 6

Provisioning Hardware for Cluster Applications

“Need 100 Queries/s” “Need 1000 Views/s”

2

Friday, February 17, 12

slide-7
SLIDE 7

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

slide-8
SLIDE 8

Challenge: Large Configuration Space

Size MB/s (r/w) IOPS Cost 7.2k-rpm 15k-rpm SSD DRAM 500GB 90/90 125/125 $213 146GB 150/150 285/285 $296 32GB 250/80 2500/1000 $496 1GB 13k/13k 1.6B/1.6B $36

4

  • Diverse server enclosures/architectures
  • Diverse storage options

Friday, February 17, 12

slide-9
SLIDE 9

Challenge: Large Configuration Space

Size MB/s (r/w) IOPS Cost 7.2k-rpm 15k-rpm SSD DRAM 500GB 90/90 125/125 $213 146GB 150/150 285/285 $296 32GB 250/80 2500/1000 $496 1GB 13k/13k 1.6B/1.6B $36

  • Current state-of-the-art:

4

  • Diverse server enclosures/architectures
  • Diverse storage options

Friday, February 17, 12

slide-10
SLIDE 10

Challenge: Large Configuration Space

Size MB/s (r/w) IOPS Cost 7.2k-rpm 15k-rpm SSD DRAM 500GB 90/90 125/125 $213 146GB 150/150 285/285 $296 32GB 250/80 2500/1000 $496 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

  • Diverse server enclosures/architectures
  • Diverse storage options

Friday, February 17, 12

slide-11
SLIDE 11

Scale-out Shortcomings for Photo-sharing Application

5

Friday, February 17, 12

slide-12
SLIDE 12

Scale-out Shortcomings for Photo-sharing Application

5

4x

Friday, February 17, 12

slide-13
SLIDE 13

Scale-out Shortcomings for Photo-sharing Application

5

4x Insight: Match storage to workload, leverage heterogeneity

Friday, February 17, 12

slide-14
SLIDE 14

Goal: Understand Configuration Space

  • What is a low-cost configuration now?
  • What will low-cost configurations look like

in the future? Measure “in-the-small” Model Application Performance Predict “in-the-large”

6

Friday, February 17, 12

slide-15
SLIDE 15

scc: Storage Configuration Compiler

scc

7

Friday, February 17, 12

slide-16
SLIDE 16

scc: Storage Configuration Compiler

scc Cluster Building-Blocks

7

Friday, February 17, 12

slide-17
SLIDE 17

scc: Storage Configuration Compiler

scc Cluster Building-Blocks Application Model

7

Friday, February 17, 12

slide-18
SLIDE 18

scc: Storage Configuration Compiler

scc Cluster Building-Blocks Application Model SLA Specification

7

Friday, February 17, 12

slide-19
SLIDE 19

scc: Storage Configuration Compiler

scc Cluster Building-Blocks Application Model SLA Specification

Cost SLA

7

Friday, February 17, 12

slide-20
SLIDE 20

scc: Storage Configuration Compiler

scc Cluster Building-Blocks Application Model SLA Specification

Cost SLA

7

Friday, February 17, 12

slide-21
SLIDE 21

Outline

  • Modeling Applications and Hardware
  • Computing low-cost configurations
  • Example
  • Validation
  • Applications of scc

8

Friday, February 17, 12

slide-22
SLIDE 22

Cluster Building Blocks

  • Many types of servers

9

Friday, February 17, 12

slide-23
SLIDE 23

Cluster Building Blocks

CPU

  • Many types of servers
  • Cores

9

Friday, February 17, 12

slide-24
SLIDE 24

Cluster Building Blocks

CPU RAM

  • Many types of servers
  • Cores
  • RAM

9

Friday, February 17, 12

slide-25
SLIDE 25

Cluster Building Blocks

CPU RAM

HDD HDD

  • Many types of servers
  • Cores
  • RAM
  • Storage

9

Friday, February 17, 12

slide-26
SLIDE 26

Cluster Building Blocks

CPU RAM

HDD HDD

  • Many types of servers
  • Cores
  • RAM
  • Storage
  • I/O & Network

9

Friday, February 17, 12

slide-27
SLIDE 27

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

slide-28
SLIDE 28

Example Model: Photo-Sharing

Tasks Datasets

11

Friday, February 17, 12

slide-29
SLIDE 29

Example Model: Photo-Sharing

(Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-30
SLIDE 30

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-31
SLIDE 31

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-32
SLIDE 32

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-33
SLIDE 33

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-34
SLIDE 34

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-35
SLIDE 35

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-36
SLIDE 36

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos Tasks Datasets

11

Friday, February 17, 12

slide-37
SLIDE 37

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos Tasks Datasets

5ms 100ms 10ms 1ms 10ms

11

Friday, February 17, 12

slide-38
SLIDE 38

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos

1x200kB 1x4kB 10x1kB

Tasks Datasets

5ms 100ms 10ms 1ms 10ms

11

Friday, February 17, 12

slide-39
SLIDE 39

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos

1x200kB 1x4kB 10x1kB 1x200kB 10x4kB 10x1kB 10x1kB

Tasks Datasets

5ms 100ms 10ms 1ms 10ms

11

Friday, February 17, 12

slide-40
SLIDE 40

Example Model: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos

1x200kB 1x4kB 10x1kB 1x200kB 10x4kB 10x1kB 10x1kB

Tasks Datasets

5ms 100ms 10ms 1ms 10ms 1TB 20GB 2GB

11

Friday, February 17, 12

slide-41
SLIDE 41

Photo-Sharing SLA

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Tasks Datasets

12

Photos

Friday, February 17, 12

slide-42
SLIDE 42

Photo-Sharing SLA

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Tasks Datasets Tasks/s

12

Photos

Friday, February 17, 12

slide-43
SLIDE 43

Outline

  • Modeling Applications and Hardware
  • Computing low-cost configurations
  • Example
  • Validation
  • Applications of scc

13

Friday, February 17, 12

slide-44
SLIDE 44

Navigating the Configuration Space

Cost SLA

14

Friday, February 17, 12

slide-45
SLIDE 45

Navigating the Configuration Space

Cost SLA

14

Friday, February 17, 12

slide-46
SLIDE 46

Navigating the Configuration Space

Cost SLA

14

Friday, February 17, 12

slide-47
SLIDE 47

Navigating the Configuration Space

Cost SLA

14

Friday, February 17, 12

slide-48
SLIDE 48

Navigating the Configuration Space

Cost SLA

14

Friday, February 17, 12

slide-49
SLIDE 49

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:
  • D datasets, S storage-types D configs

15

S

Friday, February 17, 12

slide-50
SLIDE 50

Meeting the SLA at Low-cost

Photos Thumbs Tags

16

Friday, February 17, 12

slide-51
SLIDE 51

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm 16

Friday, February 17, 12

slide-52
SLIDE 52

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

# storage units per-dataset

16

Friday, February 17, 12

slide-53
SLIDE 53

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

# storage units per-dataset Assign CPUs for computation

16

Friday, February 17, 12

slide-54
SLIDE 54

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

# storage units per-dataset Assign CPUs for computation Pack into servers

16

Friday, February 17, 12

slide-55
SLIDE 55

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

# storage units per-dataset Assign CPUs for computation Pack into servers Compute cost

16

Friday, February 17, 12

slide-56
SLIDE 56

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

...

# storage units per-dataset Assign CPUs for computation Pack into servers Compute cost

7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 15krpm SSD 7.2k+DRAM 15k+DRAM 16

Friday, February 17, 12

slide-57
SLIDE 57

Meeting the SLA at Low-cost

Photos Thumbs Tags

7.2krpm 7.2krpm 7.2krpm

...

# storage units per-dataset Assign CPUs for computation Pack into servers Compute cost

7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 7.2krpm 15krpm SSD 7.2k+DRAM 15k+DRAM

Find minimum cost

16

Friday, February 17, 12

slide-58
SLIDE 58

Detail: How Many Storage Units?

# of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

17

Friday, February 17, 12

slide-59
SLIDE 59

Detail: How Many Storage Units?

  • SLA+Model=Requirements
  • Need to match requirements

to storage units

# of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

17

Friday, February 17, 12

slide-60
SLIDE 60

Detail: How Many Storage Units?

  • SLA+Model=Requirements
  • Need to match requirements

to storage units

  • Capacity
  • IOPS
  • Write-heavy: Short-stroke disks
  • Read-heavy: Consider RAM for caching

# of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

17

Friday, February 17, 12

slide-61
SLIDE 61

Detail: How Many CPUs?

  • Enough CPUs to satisfy

computation requirements

  • Linearly extrapolate computation time
  • Minimum one core/server
  • (Details in paper)

18 # of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

Friday, February 17, 12

slide-62
SLIDE 62

Detail: Fits in how many servers?

19 # of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

Friday, February 17, 12

slide-63
SLIDE 63

Detail: Fits in how many servers?

  • Integer Linear Programming
  • Multiple server types, each with

different constraints:

  • I/O Bus Bandwidth
  • I/O Slots
  • CPU Cores
  • Network Bandwidth

19 # of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

Friday, February 17, 12

slide-64
SLIDE 64

Detail: Fits in how many servers?

  • Integer Linear Programming
  • Multiple server types, each with

different constraints:

  • I/O Bus Bandwidth
  • I/O Slots
  • CPU Cores
  • Network Bandwidth
  • Sequential-workload Bus/Network constrained
  • IOPS-workload Slot capacity constrained

19 # of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

Friday, February 17, 12

slide-65
SLIDE 65

Detail: How much does it cost?

  • ILP minimizes cost:
  • Capital expenses
  • Each component
  • Operation expenses
  • Power & cooling

20 # of storage units per-dataset Assign CPUs for computation

Pack into servers

Compute cost

Friday, February 17, 12

slide-66
SLIDE 66

Outline

  • Modeling Applications and Hardware
  • Computing low-cost configurations
  • Example
  • Validation
  • Applications of scc

21

Friday, February 17, 12

slide-67
SLIDE 67

Example Application: Photo-Sharing

Photo Upload Thumbnail Write Tags View Photo View Tag (Tag, Photo) Thumbnails Photos Tasks Datasets

22

Friday, February 17, 12

slide-68
SLIDE 68

Example: Building Blocks

  • Building blocks
  • 3GHZ Intel Xeon (max 4 cores)
  • 146GB 15k-rpm Disks
  • 500GB 7.2k-rpm Disks
  • 32GB SSD
  • 1 GB RAM (max 15 per machine)
  • Gigabit Ethernet

23

(max 4 per machine)

}

Friday, February 17, 12

slide-69
SLIDE 69

Example: SLA

  • SLA Requirement
  • 100 image uploads/s
  • 300 photo views/s
  • 100 tags views/s

24

Friday, February 17, 12

slide-70
SLIDE 70

Example: Final Stages for Photo-sharing

25

15k-rpm 15k-rpm 15k-rpm 15k-rpm SSD 7200rpm w/DRAM

Photos Thumbnails Tags

CPU CPU CPU CPU

WWW

RAM RAM

Friday, February 17, 12

slide-71
SLIDE 71

Example: Final Stages for Photo-sharing

25

15k-rpm 15k-rpm 15k-rpm 15k-rpm SSD 7200rpm w/DRAM

Photos Thumbnails Tags

CPU CPU CPU CPU

WWW

RAM RAM

Friday, February 17, 12

slide-72
SLIDE 72

Example: Final Stages for Photo-sharing

25

15k-rpm 15k-rpm 15k-rpm 15k-rpm SSD 7200rpm w/DRAM

Photos Thumbnails Tags

CPU CPU CPU CPU

WWW

RAM RAM

Friday, February 17, 12

slide-73
SLIDE 73

Example: Final Stages for Photo-sharing

25

15k-rpm 15k-rpm 15k-rpm 15k-rpm SSD 7200rpm w/DRAM

Photos Thumbnails Tags

CPU CPU CPU CPU

WWW

RAM RAM CPU RAM CPU RAM

Friday, February 17, 12

slide-74
SLIDE 74

Example: Final Stages for Photo-sharing

25

15k-rpm 15k-rpm 15k-rpm 15k-rpm SSD 7200rpm w/DRAM

Photos Thumbnails Tags

CPU CPU CPU CPU

WWW

RAM RAM CPU RAM CPU RAM

Friday, February 17, 12

slide-75
SLIDE 75

Outline

  • Modeling Applications and Hardware
  • Computing low-cost configurations
  • Example
  • Validation
  • Applications of scc

26

Friday, February 17, 12

slide-76
SLIDE 76

Experimental Methodology

  • Built three applications
  • Photo-sharing
  • Product Search
  • Terasort
  • Micro-benchmarked each to create model
  • Deployed scc output to cluster of machines

27

Friday, February 17, 12

slide-77
SLIDE 77

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-78
SLIDE 78

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-79
SLIDE 79

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-80
SLIDE 80

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-81
SLIDE 81

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-82
SLIDE 82

Validation: scc meets SLA at lower cost for Photo-sharing

28

Friday, February 17, 12

slide-83
SLIDE 83

Validation: scc meets SLA at lower cost for Product Search

29

Friday, February 17, 12

slide-84
SLIDE 84

Validation: scc meets SLA at lower cost for Terasort

30

Friday, February 17, 12

slide-85
SLIDE 85

Validation: scc meets SLA at lower cost for Terasort

30

Best Practice

Friday, February 17, 12

slide-86
SLIDE 86

Validation: scc meets SLA at lower cost for Terasort

30

Best Practice

Friday, February 17, 12

slide-87
SLIDE 87

Outline

  • Modeling Applications and Hardware
  • Computing low-cost configurations
  • Experimental methodology
  • Validation
  • Applications of scc

31

Friday, February 17, 12

slide-88
SLIDE 88

Storage Type Regimes

32

Uploads/s Photos Thumbnails Tags <5 Disk Disk Disk 5-25 Disk Disk Disk w/ DRAM 25-330 Disk SSD Disk w/ DRAM 330-930 SSD Disk w/ DRAM Disk w/ DRAM 930-10k Disk w/ DRAM Disk w/ DRAM Disk w/ DRAM Cost SLA

Friday, February 17, 12

slide-89
SLIDE 89

Output Sensitivity to Model Parameters

Attribute Range with same architecture Photo size 50kB 200kB 850kB Thumbnail size 1kB 4kB 30kB SSD unit price $200 $450 $900

33

Friday, February 17, 12

slide-90
SLIDE 90

Output Sensitivity to Model Parameters

Attribute Range with same architecture Photo size 50kB 200kB 850kB Thumbnail size 1kB 4kB 30kB SSD unit price $200 $450 $900

33

Dataset Sensitive to what hardware cost? Photos 20% drop in 7.2k-rpm drive price Thumbnails 92% drop in DRAM price Tags 31% drop in 15k-rpm drive price

Friday, February 17, 12

slide-91
SLIDE 91

Conclusion

34

Friday, February 17, 12

slide-92
SLIDE 92

Conclusion

  • Our scc tool finds low-cost cluster configurations
  • Saves 2-4.5x over simple scale-out for Photo-share and

Product Search

  • 16% lower cost for Terasort vs. Map Reduce best-practice

configuration

34

Friday, February 17, 12

slide-93
SLIDE 93

Conclusion

  • Our scc tool finds low-cost cluster configurations
  • Saves 2-4.5x over simple scale-out for Photo-share and

Product Search

  • 16% lower cost for Terasort vs. Map Reduce best-practice

configuration

  • Better matches hardware to application requirements

34

Friday, February 17, 12

slide-94
SLIDE 94

Conclusion

  • Our scc tool finds low-cost cluster configurations
  • Saves 2-4.5x over simple scale-out for Photo-share and

Product Search

  • 16% lower cost for Terasort vs. Map Reduce best-practice

configuration

  • Better matches hardware to application requirements
  • Useful for predicting output sensitivity and future needs

34

Friday, February 17, 12

slide-95
SLIDE 95

Conclusion

  • Our scc tool finds low-cost cluster configurations
  • Saves 2-4.5x over simple scale-out for Photo-share and

Product Search

  • 16% lower cost for Terasort vs. Map Reduce best-practice

configuration

  • Better matches hardware to application requirements
  • Useful for predicting output sensitivity and future needs
  • Future work
  • More precise network models
  • Cloud deployment

34

Friday, February 17, 12

slide-96
SLIDE 96

Questions?

Cost SLA

scc

Cluster Building-Blocks Application Model SLA Specification

Bourns College

  • f Engineering

35

Friday, February 17, 12