aws rds benchmark - cmg brasil 2012

40
AWS RDS instance type comparison RDS Write i/o BenchmarK Roberto Gaiser @rgaiser

Upload: rodrigo-campos

Post on 11-Nov-2014

3.103 views

Category:

Technology


0 download

DESCRIPTION

AWS RDS benchmark by Roberto Gaiser - Presented at the CMG Brasil Conference 2012

TRANSCRIPT

Page 1: AWS RDS Benchmark - CMG Brasil 2012

AWS RDS instance type comparison

RDS Write i/o BenchmarK

Roberto Gaiser@rgaiser

Page 2: AWS RDS Benchmark - CMG Brasil 2012

RDS• MySQL / Oracle / SQL Server

• Running on EC2 managed by AWS, patches, replication and backup

• EBS (Elastic Block Store) for storage

• EBS = network block device

• “Black Box” = no “shell” access

• 1 EC2 Compute Unit =1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor

Page 3: AWS RDS Benchmark - CMG Brasil 2012

RDS• MySQL / Oracle / SQL Server

• Running on EC2 managed by AWS, patches, replication and backup

• EBS (Elastic Block Store) for storage

• EBS = network block device

• “Black Box” = no “shell” access

• 1 EC2 Compute Unit =1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor

Page 4: AWS RDS Benchmark - CMG Brasil 2012

Memory GB

EC2 Compute

UnitCores

Price/Hour *

Small 1.7 1 1 $0.105

Large 7.5 4 2 $0.415

XLarge 15.0 8 4 $0.830

2XLarge 34.0 13 4 $1.170

4XLarge 68.0 26 8 $2.340

* Price for us-east-1

Page 5: AWS RDS Benchmark - CMG Brasil 2012

EC2 ComputeUnit

Memory Price/Hour

Small 1 1.0 1.0

Large 4 4.4 4.0

XLarge 8 8.8 7.9

2XLarge 13 20.0 11.1

4XLarge 26 40.0 22.3

Page 6: AWS RDS Benchmark - CMG Brasil 2012

1

11

21

31

40

50

60

70

1 5 8 12 15 19 22 26

Instance Types ComparisonM

em

ory

GB

EC2 Compute Unit

Small Large XLarge 2XLarge 4XLarge

Page 7: AWS RDS Benchmark - CMG Brasil 2012

Test Setup

• MySQL

• Two data sets:

- Increase instance size

- Increase EBS size

• Different days and periods

• 5.5.20

• max_connections parameter

Page 8: AWS RDS Benchmark - CMG Brasil 2012

Test Setup

• Ubuntu 12.04 LTS AMI Ubuntu 12.04 LTS AMI ami-a29943cb

• mysqlslap from Ubuntu MySQL repository

• EC2 High-CPU Medium c1.medium

• Disk I/O bound:

✓insert and commit

Page 9: AWS RDS Benchmark - CMG Brasil 2012

mysqlslapmysqlslap -uXXXX -pXXXXX \

--concurrency=1,5,10,20,30,50,100,200,400 \

--engine=innodb --auto-generate-sql \

--auto-generate-sql-load-type=write \

--auto-generate-sql-add-autoincrement --auto-generate-sql-secondary-indexes=1 \

--commit=1 --number-of-queries=40000 --iterations=5 \

-h XXXXX.rds.amazonaws.com --csv=XXXXXX.csv

Page 10: AWS RDS Benchmark - CMG Brasil 2012

mysqlslapmysqlslap -uXXXX -pXXXXX \

--concurrency=1,5,10,20,30,50,100,200,400 \

--engine=innodb --auto-generate-sql \

--auto-generate-sql-load-type=write \

--auto-generate-sql-add-autoincrement --auto-generate-sql-secondary-indexes=1 \

--commit=1 --number-of-queries=40000 --iterations=5 \

-h XXXXX.rds.amazonaws.com --csv=XXXXXX.csv

Page 11: AWS RDS Benchmark - CMG Brasil 2012

• Chart using the 100GB EBS volume data

• Same EBS on all tests

• EBS are not created equal

• No replication

• us-east-1

EBS x Instance Type

Page 12: AWS RDS Benchmark - CMG Brasil 2012

Change Instance Type

RDS Instance MySQL EBS Volume

RDS Instance MySQL

EBS Volume

Page 13: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 14: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 15: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 16: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 17: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 18: AWS RDS Benchmark - CMG Brasil 2012

• Universal Scalability Law (USL)

• http://www.perfdynamics.com/Manifesto/USLscalability.html

• Guerrilla Mantra 1.16: Data are not divine. Data comes from the Devil, only models come from God.

• Guerrilla Mantra 2.25: All measurements are wrong by definition.

• R using nls() http://www.perfdynamics.com/Classes/Materials/USLcalc.r

Guerrilla Capacity planning

C(N) =N

1 + ↵(N � 1) + �N(N � 1)

Page 19: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 20: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 21: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 22: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 23: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 24: AWS RDS Benchmark - CMG Brasil 2012

100GB EBS

Page 25: AWS RDS Benchmark - CMG Brasil 2012

N Max X Max

small 59.48 1660.29

large 88.46 3859.50

xlarge 134.40 6068.01

2xlarge 204.00 7228.87

4xlarge 217.55 8172.99

Page 26: AWS RDS Benchmark - CMG Brasil 2012

N Max X Max

small 1.00 1.00

large 1.49 2.32

xlarge 2.26 3.65

2xlarge 3.43 4.35

4xlarge 3.66 4.92

Page 27: AWS RDS Benchmark - CMG Brasil 2012

X Max

Page 28: AWS RDS Benchmark - CMG Brasil 2012

N Max

Page 29: AWS RDS Benchmark - CMG Brasil 2012

α contention β coherency

small 0.0590 2.66E-04

large 0.0586 1.20E-04

xlarge 0.0466 5.30E-05

2xlarge 0.0403 2.3E-05

4xlarge 0.0360 2.0E-05

Page 30: AWS RDS Benchmark - CMG Brasil 2012

α contention β coherency

small 1.00 1.00

large 0.99 0.45

xlarge 0.79 0.20

2xlarge 0.68 0.09

4xlarge 0.61 0.08

Page 31: AWS RDS Benchmark - CMG Brasil 2012

• Same instance and EBS endpoints for each test

• EBS are not created equal

• No replication

• us-east-1

Instance type x EBS

Page 32: AWS RDS Benchmark - CMG Brasil 2012

Change EBS SizeRDS Instance MySQL EBS Volume

RDS Instance MySQL

EBS Volume

Page 33: AWS RDS Benchmark - CMG Brasil 2012

Large Instance

Page 34: AWS RDS Benchmark - CMG Brasil 2012

XLarge Instance

Page 35: AWS RDS Benchmark - CMG Brasil 2012

2XLarge Instance

Page 36: AWS RDS Benchmark - CMG Brasil 2012

4XLarge Instance

Page 37: AWS RDS Benchmark - CMG Brasil 2012

Small Instance

Page 38: AWS RDS Benchmark - CMG Brasil 2012

EC2 Compute

UnitMemory α N Max X Max

Price/Hour

small 1.0 1.0 1.00 1.00 1.00 1.0

large 4.0 4.4 0.99 1.49 2.32 4.0

xlarge 8.0 8.8 0.79 2.26 3.65 7.9

2xlarge 13.0 20.0 0.68 3.43 4.35 11.1

4xlarge 26.0 40.0 0.61 3.66 4.92 22.3

Page 39: AWS RDS Benchmark - CMG Brasil 2012

Conclusion

• EBS size has no effect on I/O performance

• Small instances are more affected by other instances on the same server

• Larger instances have a greater share of the physical resources, more network throughput translates to more EBS I/O

Page 40: AWS RDS Benchmark - CMG Brasil 2012

Conclusion

• More instances on the same server, more concurrency. α increases

• Small decrease in α increases the throughput by a large amount

• EBS are not created equal