AWS CloudOps 101 — EBS : A Comprehensive Guide to Using EBS
Welcome to our next destination, folks. We’ve arrived at EBS — Elastic Block Storage, which happens to be one of the three major storage options on AWS. You might already be familiar with its siblings, S3 and EFS.
Now, Amazon EBS is what we refer to as the block storage that’s available on AWS. With an EBS volume, you get yourself a persistent storage device that can be used to host applications, store databases, and even for plug and play devices
Before proceed further, let’s understand the two key terms closely associated with EBS volumes. IOPS and Throughput
IOPS: stands for Input/Output Operations Per Second, tells you how many read or write operations can be performed on a volume in a second.
Throughput: measures how much data can be transferred to and from the volume in a second
Ah, now we come to the exciting part — the EBS storage types. AWS has very kindly provided us with six options to choose from.
SSD EBS Volumes
General Purpose SSD is what you might call a jack-of-all-trades, suitable for a wide range of workloads. And this comes with two varieties
GP2 has been there fore a long time. GP2 a popular choice is its balance between cost and performance. You get a baseline performance of 3 IOPS (that’s Input/Output Operations Per Second) per GB, which is nothing to sneeze at. And if you need to burst beyond that, you can go up to a whopping 16,000 IOPS for volumes larger than 1 terabyte.
GP3 is the new kid on the block. With GP3, customers can allocate their performance needs independently of their storage capacity. And the best part? It’ll save them up to 20% per gigabyte compared to the older gp2 volumes. So, no more worrying about provisioning extra storage capacity just to scale up IOPS or throughput. You can simply pay for the resources you require and scale up as necessary.
Now, let me tell you about Provisioned IOPS SSDs — they’re a type of EBS storage that’s perfect for applications that need a high level of performance and consistent input/output (I/O) operations. With these, you can specify the number of IOPS your application needs, and Amazon will set up the storage to deliver just that.
This kind of EBS storage works a treat for heavy database workloads, big analytics, and other applications that need fast access to data. Now, you can get Provisioned IOPS SSDs in sizes from 4 GB all the way up to 16 TB, and you can provision up to a whopping 64,000 IOPS per volume. However, be warned that they can be a bit pricier than other types of EBS storage due to their top-notch performance.
io1 lets you provision the exact number of IOPS you need, from as low as 100 all the way up to 64,000 IOPS per volume. And, even better, it offers consistent sub-millisecond latency, so your apps will be lightning-fast.
io2 is the next generation of io1 volumes, and it’s a real step up. With io2, you can get up to a whopping 100,000 IOPS per volume and a throughput of 1,000 MiB/s. And that’s not all — io2 is also more durable and cheaper than io1. So, if you need even more performance and want to save some money, io2 might just be the ticket.
HDD EBS Volumes
Now, we move to a storage type you might frown upon hearing: the HDD, specifically the Cold HDD. Yes, they are not as attractive as their famous cousin SSD, but these would be ideal if you don’t need super-fast performance and you want to save some money. They’re great for storing data that you don’t access very often, and they cost a lot less per GB than SSD volumes.
Backups, data warehousing, or other workloads that don’t require high-performance storage, the Cold HDD might be ‘the’ way to go.
Throughput Optimized HDD volumes are perfect for workloads that need high throughput, like big sequential reads and writes. They’re a bit slower than SSD volumes in terms of latency and IOPS, but they make up for it with a lower cost per GB
Final Thoughts
Next will be on EFS and S3. Stay tuned!
Keeping the tradition alive, here’s an Haiku on EBS :)
HDD, cheap and slow,
SSD, costly and super fast,
Choose wisely