Amazon Elastic Block Store (EBS) Volume Types and Performance
Amazon Elastic Block Store (EBS) provides persistent block storage volumes for use with Amazon Elastic Compute Cloud (EC2) instances. Understanding the different EBS volume types and their performance characteristics is crucial for optimizing cost and application performance in AWS.
Key EBS Volume Types
AWS offers several EBS volume types, each designed for different use cases and performance needs. They are broadly categorized into SSD-backed and HDD-backed volumes.
Volume Type | Description | Use Cases | Performance Metric | Cost |
---|---|---|---|---|
General Purpose SSD (gp2/gp3) | Balanced price and performance for a wide variety of workloads. | Boot volumes, low-latency interactive applications, development/test environments. | IOPS and Throughput | Moderate |
Provisioned IOPS SSD (io1/io2) | Highest performance SSD volumes for I/O-intensive workloads. | Mission-critical relational or NoSQL databases, large enterprise applications. | Provisioned IOPS and Throughput | High |
Throughput Optimized HDD (st1) | Low-cost HDD volumes for throughput-intensive, sequential workloads. | Big data and analytics, data warehousing, log processing. | Throughput | Low |
Cold HDD (sc1) | Lowest cost HDD volumes for infrequently accessed workloads with low throughput needs. | File servers, backup storage, disaster recovery. | Throughput | Very Low |
Understanding Performance Metrics: IOPS and Throughput
Two primary metrics define EBS volume performance: IOPS (Input/Output Operations Per Second) and Throughput (MB/s). IOPS measures the number of read and write operations a volume can perform per second, crucial for transactional workloads. Throughput measures the amount of data that can be transferred per second, important for sequential I/O operations.
IOPS and Throughput are the key performance indicators for EBS volumes.
IOPS quantifies the speed of individual operations, while Throughput measures the volume of data transferred.
IOPS is critical for applications that perform many small, random read/write operations, such as databases. Throughput is vital for applications that process large amounts of data sequentially, like data warehousing or log analysis. Different EBS volume types are optimized for different combinations of these metrics.
EBS Volume Type Deep Dive
Let's explore the nuances of each major volume type.
General Purpose SSD (gp2/gp3)
gp2 offers a baseline performance of 3 IOPS per GiB of storage, with a maximum of 16,000 IOPS. gp3 offers a baseline of 3,000 IOPS and 125 MiB/s throughput, which can be independently provisioned up to 16,000 IOPS and 1,000 MiB/s. gp3 is generally more cost-effective and flexible than gp2.
Visualizing the relationship between volume size and IOPS for gp2. As the gp2 volume size increases, its baseline IOPS also increases proportionally. For gp3, you can provision IOPS and throughput independently of size, offering greater flexibility.
Text-based content
Library pages focus on text content
Provisioned IOPS SSD (io1/io2)
These volumes are designed for workloads requiring consistent and high IOPS. io1 allows you to provision up to 64,000 IOPS, while io2 offers higher durability and up to 500 IOPS per GiB, with a maximum of 64,000 IOPS and 1,000 MiB/s. io2 Block Express offers even higher performance and lower latency.
Choose io1/io2 when your application's performance is critically dependent on predictable, high IOPS.
Throughput Optimized HDD (st1)
st1 is ideal for workloads that require high throughput but not high IOPS. It provides a baseline throughput of 500 MB/s per TiB of storage, with a maximum of 500 MB/s. It's cost-effective for sequential I/O intensive applications.
Cold HDD (sc1)
sc1 is the most cost-effective option for infrequently accessed data. It offers the lowest cost per GiB and is suitable for workloads where data access is infrequent and throughput requirements are low, typically 12 MB/s per TiB.
Choosing the Right EBS Volume Type
The selection of an EBS volume type depends on your application's specific requirements for performance (IOPS and throughput), availability, and cost. For general-purpose workloads, gp3 offers a great balance. For I/O-bound applications like databases, io1 or io2 are recommended. For sequential I/O heavy workloads like data warehousing, st1 is a cost-effective choice. For archival or infrequent access, sc1 is the most economical.
Provisioned IOPS SSD (io1 or io2).
IOPS (Input/Output Operations Per Second) and Throughput (MB/s).
Cold HDD (sc1).
Learning Resources
Official AWS documentation detailing the different EBS volume types, their characteristics, and use cases.
Provides current pricing information for all EBS volume types, helping to understand cost implications.
A comprehensive video explaining the architecture and features of Amazon EBS, including performance tuning.
Detailed guide on how EBS performance is measured and how to optimize it for your EC2 instances.
Announces and explains the advanced features and performance benefits of io2 Block Express volumes.
A blog post that helps users select the most appropriate AWS storage services, including EBS, based on workload requirements.
Provides practical advice and best practices for maximizing EBS performance.
A comparative analysis of gp2 and gp3 EBS volumes, highlighting their differences and when to use each.
Wikipedia entry providing an overview of Amazon EBS, its history, and core functionalities.
An overview page for all AWS storage services, providing context for EBS within the broader AWS storage ecosystem.