IOPS types and its differences

Overview of IOPS (Input/Output Operations per Second):

  1. IOPS Basics:

    • IOPS is a measure of the number of read or write operations that a storage volume can perform per second.
    • IOPS performance can vary depending on the storage volume type and size.
  2. Amazon EBS (Elastic Block Store) IOPS:

    • Amazon EBS volumes come in different types, such as General Purpose SSD (gp2/gp3) and Provisioned IOPS SSD (io1/io2).
    • General Purpose SSD volumes have a baseline IOPS that scales with the volume size, up to 16,000 IOPS, and can also burst above the baseline when needed.
    • Provisioned IOPS SSD volumes allow you to provision the IOPS performance you need, up to 64,000 IOPS per volume.
  3. Monitoring and Troubleshooting IOPS:

    • You can use Amazon CloudWatch metrics to monitor the IOPS and throughput of your EBS volumes.
    • To calculate the maximum IOPS and throughput for an EBS volume, you can use the following AWS CLI command:
    aws ec2 describe-instance-types --instance-types m6i.2xlarge --query InstanceTypes[*].[InstanceType, EbsInfo.EbsOptimizedSupport, EbsInfo.EbsOptimizedInfo]


Key differences between General-Purpose IOPS and Provisioned IOPS:

  1. General Purpose SSD (gp2/gp3) Volumes:

    • General Purpose SSD volumes provide a balance of price and performance.
    • They have a baseline IOPS that scales with the volume size, up to 16,000 IOPS.
    • You can also burst above the baseline IOPS when needed, up to 3,000 IOPS.
  2. Provisioned IOPS SSD (io1/io2) Volumes:

    • Provisioned IOPS SSD volumes are designed for I/O-intensive workloads, such as databases.
    • You can provision the IOPS performance you need, up to 64,000 IOPS per volume.
    • Provisioned IOPS volumes provide consistent and predictable performance.
    • They are available on all EC2 instance types, except for those that support io2 Block Express volumes.

To achieve the maximum IOPS and throughput limits, you should use EBS-optimized EC2 instances. You can use the following AWS CLI command to find the EBS optimization details for a specific instance type:

aws ec2 describe-instance-types --instance-types m6i.2xlarge --query InstanceTypes[*].[InstanceType, EbsInfo.EbsOptimizedSupport, EbsInfo.EbsOptimizedInfo]


Key differences between Baseline IOPS and Burst IOPS:

  1. Baseline IOPS:

    • Baseline IOPS refers to the minimum guaranteed performance level for an EBS volume.
    • The baseline IOPS depends on the EBS volume type and size. For example, a 100 GB General Purpose SSD (gp2) volume has a baseline of 300 IOPS.
    • The baseline IOPS provides a consistent level of performance for your workload.
  2. Burst IOPS:

    • Burst IOPS allows EBS volumes to exceed their baseline IOPS for short periods of time when needed.
    • Volumes smaller than 1 TB can burst up to 3,000 IOPS, regardless of their baseline IOPS.
    • The ability to burst is governed by I/O credits. The volume accumulates I/O credits when the workload is below the baseline, and it can use these credits to burst above the baseline when needed.
    • The burst duration depends on the available I/O credits and the difference between the burst IOPS and the baseline IOPS.

To find the specific baseline and maximum burst IOPS for your EBS volume, you can use the AWS CLI or the AWS Management Console. For example, using the AWS CLI:

aws ec2 describe-instance-types --instance-types m6i.2xlarge --query InstanceTypes[*].[InstanceType, EbsInfo.EbsOptimizedSupport, EbsInfo.EbsOptimizedInfo]

This command will provide the baseline and maximum burst IOPS for the specified instance type.



Comments

Popular posts from this blog

Difference b/w General-purpose and a Directory bucket in Amazon S3

How to reduce the EBS snapshots storage cost

Difference between full snapshots and incremental snapshots

Snapshot storage tier types and cost difference

Where the EBS snapshot stores and snapshot charges

Key features of Amazon S3

Pros and cons of On-Demand, Reserved, Spot and Saving Plans EC2 instances

How burstable CPU performance works in T series EC2 instances

Differences between an IAM User and Role

AWS Storage types