Aim:
- Understanding GP2 volume
- Understanding IO1 Volume
- Which one is cost and performance effective
- How much IOPS do you need?
- Which one to choose, GP2 or IO1
Understanding GP2:
- Cost effective (Explained below)
- Range in size from 1 GiB to 16 TiB
- Max throughput - 160 MB/s
- Baseline performance of 3 IOPS/GiB
- Baseline throughput can be increased by increasing volume size
- Maximum throughput of 160 MiB/s
- Ability to burst to 3,000 IOPS
- Refills at the rate of 3 IOPS and can go max upto 54,00,000 I/O credits
- More IO credits, the more time it can burst beyond its baseline capacity
- Larger GP2 volume refills the credits more quickly
- Initial credits - 54,00,000 I/O credits
- Volume accumulated 180K IOPS can burst upto 1 min (180000/3000 = 60s = 1 min)
Understanding IO1:
- For IO intensive workloads like databases
- Range from 4 GB to 16 TB
- Max throughput - 320 MB/s
- IOPS can be specified directly irrespective of the volume size
- No credit balance
Which one is cost and performance effective?
- Performance:GP2
100 GB volume (300 IOPS) [Baseline throughput - 128 MB/s]
can burst upto 3000 IOPS
IO1
100 GB volume (300 IOPS) [Baseline throughput - 75 MB/s ]
No burst available - Cost:GP2 - 100 GB volume (300 IOPS) - $7/month
IO1 - 100 GB volume (300 IOPS) - $32/month
How much IOPS do you need?
- Check cloudwatch metrics
- Observe the sum of volumereadops and volumewriteops for a given period(peak) of time.
- Calculate it for one second, this would be the IOPS you need
- Example:
Read operations - 830694
For one sec = 830694/(15*60) = 923 ops/s
Write operations - 87500
For one sec = 87500/(15*60) = 97.22 ops/s
Total IOPS = 923 + 97.22 = 1020 IOPS
At max the IOPS consumed by the volume is 1020, hence we should provision at least 1020 IOPS
Which one to choose, GP2 or IO1
- You have the answer now
This comment has been removed by the author.
ReplyDelete