Storage I/O performance, also known as storage read/write performance, is the performance that can be delivered when cloud disks are attached to instances of different Elastic Compute Service (ECS) instance types. Metrics of storage I/O performance include IOPS and throughput.

I/O size

I/O (input/output or read/write) is random or sequential data requests initiated by an application. I/O request size is also called I/O size, which is measured in KiB. Example: 4 KiB.

When you design the underlying storage architecture or select an instance type, you must consider metrics such as IOPS, I/O size, and throughput. You can use the following formula to calculate throughput based on the I/O size and the number of IOPS: IOPS × I/O size = Throughput. You can choose an optimal combination of Elastic Block Storage devices and instance types based on the I/O request characteristics of applications.
  • For the applications such as offline analysis and data warehouses that require a large I/O size, we recommend that you select the big data instance families that deliver high throughput.
  • For the applications such as online transaction processing (OLTP) databases and enterprise-level applications like SAP that require latency-sensitive, small, random I/O operations, we recommend that you select enhanced SSDs (ESSDs) and standard SSDs that deliver high IOPS.
For more information about IOPS and throughput, see EBS performance.

Storage I/O performance of instances

Note This section and subsequent sections apply only to new-generation enterprise-level instance families, including hfg7, hfc7, hfr7, g6e, c6e, and r6e. For more information, see Storage I/O performance of new-generation enterprise-level instance families. These sections are not applicable to local disks.

New-generation enterprise-level instance families provide isolation of storage I/O performance. Dedicated storage bandwidths are assigned for communication between ECS instances and cloud disks to prevent storage I/O contention among instances. New-generation enterprise-level instance families ensure the consistent storage I/O performance of applications even during peak hours.

If your business application is one of the following I/O-sensitive applications that require consistent storage I/O performance, we recommend that you select a new-generation instance family that provides isolation of storage I/O performance:
  • Large and medium-sized databases, such as Oracle, MySQL, SQL Server, PostgreSQL, Cassandra, and MongoDB databases
  • Enterprise-level applications such as Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM)

Relationship between instance types and storage I/O performance

The storage I/O performance of ECS instances varies based on their instance families, instance types, and attached cloud disks. The storage I/O performance of an instance is subject to the instance specifications. The higher specifications an instance type has, the higher storage I/O performance (IOPS and throughput) it can provide. When you understand the relationship between instance storage performance and cloud disk storage performance, you can choose appropriate instance types and Elastic Block Storage devices based on their performance specifications and prevent performance bottlenecks caused by improper configurations.

IOPS of instances

After you create an instance and attach cloud disks to it, the final storage I/O performance of the instance is determined as described in the following section:
  • Scenario 1: If the total maximum storage performance of the attached cloud disks exceeds the maximum storage I/O performance that the instance type can deliver, the final storage I/O performance of the instance is limited to the maximum storage I/O performance of the instance type.
  • Scenario 2: If the total maximum storage performance of the attached cloud disks does not exceed the maximum storage I/O performance that the instance type can deliver, the final storage I/O performance of the instance is limited to the total maximum storage I/O performance of the cloud disks.
Instances and their storage I/O performance

For example, the ecs.g6.8xlarge instance type can deliver up to 60,000 IOPS. If a 1,600 GiB ESSD at performance level 2 (PL2 ESSD) is attached to an instance of this instance type and the IOPS of the PL2 ESSD is 81,800, the storage IOPS of the instance is capped at 60,000. For information about the performance levels of ESSDs, see ESSDs.

Burst IOPS and burst storage bandwidths of instances

Instances of some small 7th- or later-generation instance types can burst beyond their storage IOPS and bandwidth baselines. After you create such an instance and attach cloud disks to it, the final burst IOPS and burst storage bandwidth of the instance are determined as described in the following section:

  • Burst IOPS of an instance
    • Metrics: represent the limits that an instance type have on the storage I/O performance of cloud disks.
      • Baseline IOPS: the maximum IOPS that an instance type can consistently support for cloud disks in compliance with a service level agreement (SLA) commitment.
      • Burst IOPS: the IOPS that an instance type can burst to. Burst IOPS is time-limited and dependent on the amount of I/O resources that an instance provides. No SLA commitments are made for burst IOPS. If an instance provides sufficient I/O resources and cloud disks attached to the instance sustain the highest burst performance supported by the instance type, the default maximum burst duration supported by the instance type varies based on the instance size.
        • large: 5 minutes
        • xlarge: 10 minutes
        • 2xlarge: 20 minutes
        • 3xlarge: 30 minutes
        • 4xlarge: 40 minutes
    • Formulas: When the actual IOPS of an instance falls below the baseline IOPS of its instance type, the instance begins to accrue credits and can spend credits to burst beyond baseline performance anytime. The burst duration of an instance is calculated based on its credit balance. An instance has a relatively long burst duration when its actual storage I/O performance is lower than the maximum burst performance. The following formulas are used to calculate the maximum credit balance that is supported by an instance type and the actual burst duration of an instance of this instance type:
      • Maximum credit balance = (Maximum burst IOPS - Baseline IOPS) × Maximum burst duration
      • Actual burst duration = Maximum credit balance/(Current IOPS - Baseline IOPS)
    • For example, assume that an instance of an ecs.g7 instance type has a cloud disk attached and that the cloud disk can deliver up to 50,000 IOPS. The following table describes the baseline IOPS, maximum burst IOPS, and burst duration of the cloud disk on the instance of each ecs.g7 instance type.
      Instance type Baseline IOPS of the cloud disk Maximum burst IOPS of the cloud disk Maximum burst duration of the cloud disk (in minutes) Maximum credit balance of the cloud disk Actual burst duration of the cloud disk (in minutes)
      g7.large 20,000 110,000 5 (11 - 2) × 5 = 45 45/(5 - 2) = 15
      ecs.g7.xlarge 40,000 110,000 10 (11 - 4) × 10 = 70 70/(5 - 4)= 70
      ecs.g7.2xlarge 50,000 110,000 20 (11 - 5) × 20 = 120 The performance of the cloud disk is equal to its baseline performance and does not need to burst.
      ecs.g7.3xlarge 70,000 110,000 30 (11 - 7) × 30 = 120 The performance of the cloud disk is lower than its baseline performance and does not need to burst.
      ecs.g7.4xlarge 80,000 110,000 40 (11 - 8) × 40 = 120 The performance of the cloud disk is lower than its baseline performance and does not need to burst.
      For more information about ecs.g7 instance types, see g7, general-purpose instance family.
  • Burst storage bandwidth of an instance
    • Metrics: represent the limits that an instance type have on the storage bandwidths of cloud disks.
      • Baseline storage bandwidth: the maximum storage bandwidth that an instance type can consistently support for cloud disks in compliance with an SLA commitment.
      • Burst storage bandwidth: the storage bandwidth that an instance type can burst to. Burst storage bandwidths are time-limited and dependent on the amount of storage bandwidth resources that an instance provides. No SLA commitments are made for burst storage bandwidths. If an instance provides sufficient storage bandwidth resources and cloud disks attached to the instance sustain the highest burst performance supported by the instance type, the default maximum burst duration supported by the instance type varies based on the instance size.
        • large: 5 minutes
        • xlarge: 10 minutes
        • 2xlarge: 20 minutes
        • 3xlarge: 30 minutes
        • 4xlarge: 40 minutes
    • Formulas: The burst duration of an instance is calculated based on its credit balance. An instance has a relatively long burst duration when its actual storage I/O performance is lower than the maximum burst performance. The following formulas are used to calculate the maximum credit balance that is supported by an instance type and the actual burst duration of an instance of this instance type:
      • Maximum credit balance = (Maximum burst storage bandwidth - Baseline storage bandwidth) × Maximum burst duration
      • Actual burst duration = Maximum credit balance/(Current storage bandwidth - Baseline storage bandwidth)
    • For example, assume that an instance of an ecs.g7 instance type has a cloud disk attached and that the cloud disk can deliver a bandwidth of up to 3 Gbit/s. The following table describes the baseline bandwidth, maximum burst bandwidth, and burst duration of the cloud disk on the instance of each ecs.g7 instance type.
      Instance type Baseline bandwidth of the cloud disk (Gbit/s) Maximum burst bandwidth of the cloud disk (Gbit/s) Maximum burst duration of the cloud disk (in minutes) Maximum credit balance of the cloud disk Actual burst duration of the cloud disk (in minutes)
      g7.large 1.5 6 5 (6 - 1.5) × 5 = 22.5 22.5/(3 - 1.5) = 15
      ecs.g7.xlarge 2 6 10 (6 - 2) × 10 = 40 40/(3 - 2) = 40
      ecs.g7.2xlarge 3 6 20 (6 - 3) × 20 = 60 The performance of the cloud disk is equal to its baseline performance and does not need to burst.
      ecs.g7.3xlarge 4 6 30 (6 - 4) × 30 = 60 The performance of the cloud disk is lower than its baseline performance and does not need to burst.
      ecs.g7.4xlarge 5 6 40 (6 - 5) × 40 = 40 The performance of the cloud disk is lower than its baseline performance and does not need to burst.
      For more information about ecs.g7 instance types, see g7, general-purpose instance family.

Storage I/O performance of new-generation enterprise-level instance families

The following tables describe the storage I/O performance of the new-generation enterprise-level instance families. For information about other specifications of the instance families, see Overview of instance families.

Note In these tables, the maximum IOPS is measured at an I/O size of 4 KiB and the maximum throughput is measured at an I/O size of 1,024 KiB. For information about the test methods, see Test the performance of EBS devices.
Table 1. Storage I/O performance of g7se
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.g7se.large 30,000 3 375
ecs.g7se.xlarge 60,000 4 500
ecs.g7se.2xlarge 100,000 6 750
ecs.g7se.3xlarge 120,000 8 1,000
ecs.g7se.4xlarge 150,000 10 1,250
ecs.g7se.6xlarge 200,000 12 1,500
ecs.g7se.8xlarge 300,000 16 2,000
ecs.g7se.16xlarge 500,000 32 4,000
ecs.g7se.32xlarge 1,000,000 64 8,000
Table 2. Storage I/O performance of hfg7
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfg7.large 20,000 1.0 125
ecs.hfg7.xlarge 30,000 1.5 187.5
ecs.hfg7.2xlarge 45,000 2.0 250
ecs.hfg7.3xlarge 60,000 2.5 312.5
ecs.hfg7.4xlarge 75,000 3.0 375
ecs.hfg7.6xlarge 90,000 4.0 500
ecs.hfg7.8xlarge 105,000 5.0 625
ecs.hfg7.12xlarge 150,000 8.0 1,000
ecs.hfg7.24xlarge 300,000 16.0 2,000
Table 3. Storage I/O performance of hfc7
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfc7.large 20,000 1.0 125
ecs.hfc7.xlarge 30,000 1.5 187.5
ecs.hfc7.2xlarge 45,000 2.0 250
ecs.hfc7.3xlarge 60,000 2.5 312.5
ecs.hfc7.4xlarge 75,000 3.0 375
ecs.hfc7.6xlarge 90,000 4.0 500
ecs.hfc7.8xlarge 105,000 5.0 625
ecs.hfc7.12xlarge 150,000 8.0 1,000
ecs.hfc7.24xlarge 300,000 16.0 2,000
Table 4. Storage I/O performance of hfr7
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfr7.large 20,000 1.0 125
ecs.hfr7.xlarge 30,000 1.5 187.5
ecs.hfr7.2xlarge 45,000 2.0 250
ecs.hfr7.3xlarge 60,000 2.5 312.5
ecs.hfr7.4xlarge 75,000 3.0 375
ecs.hfr7.6xlarge 90,000 4.0 500
ecs.hfr7.8xlarge 105,000 5.0 625
ecs.hfr7.12xlarge 150,000 8.0 1,000
ecs.hfr7.24xlarge 300,000 16.0 2,000
Table 5. Storage I/O performance of g6t
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.g6t.large 20,000 1.0 125
ecs.g6t.xlarge 40,000 1.5 187.5
ecs.g6t.2xlarge 50,000 2.0 250
ecs.g6t.4xlarge 80,000 3.0 375
ecs.g6t.8xlarge 150,000 5.0 625
ecs.g6t.13xlarge 240,000 8.0 1,000
ecs.g6t.26xlarge 480,000 16.0 2,000
Table 6. Storage I/O performance of c6t
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.c6t.large 20,000 1.0 125
ecs.c6t.xlarge 40,000 1.5 187.5
ecs.c6t.2xlarge 50,000 2.0 250
ecs.c6t.4xlarge 80,000 3.0 375
ecs.c6t.8xlarge 150,000 5.0 625
ecs.c6t.13xlarge 240,000 8.0 1,000
ecs.c6t.26xlarge 480,000 16.0 2,000
Table 7. Storage I/O performance of g6e
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.g6e.large 20,000 1.0 125
ecs.g6e.xlarge 40,000 1.5 187.5
ecs.g6e.2xlarge 50,000 2.0 250
ecs.g6e.4xlarge 80,000 3.0 375
ecs.g6e.8xlarge 150,000 5.0 625
ecs.g6e.13xlarge 240,000 8.0 1,000
ecs.g6e.26xlarge 480,000 16.0 2,000
Table 8. Storage I/O performance of c6e
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.c6e.large 20,000 1.0 125
ecs.c6e.xlarge 40,000 1.5 187.5
ecs.c6e.2xlarge 50,000 2.0 250
ecs.c6e.4xlarge 80,000 3.0 375
ecs.c6e.8xlarge 150,000 5.0 625
ecs.c6e.13xlarge 240,000 8.0 1,000
ecs.c6e.26xlarge 480,000 16.0 2,000
Table 9. Storage I/O performance of r6e
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.r6e.large 20,000 1.0 125
ecs.r6e.xlarge 40,000 1.5 187.5
ecs.r6e.2xlarge 50,000 2.0 250
ecs.r6e.4xlarge 80,000 3.0 375
ecs.r6e.8xlarge 150,000 5.0 625
ecs.r6e.13xlarge 240,000 8.0 1,000
ecs.r6e.26xlarge 480,000 16.0 2,000
Table 10. Storage I/O performance of g6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.g6.large 10,000 1.0 125
ecs.g6.xlarge 20,000 1.5 187.5
ecs.g6.2xlarge 25,000 2.0 250
ecs.g6.3xlarge 30,000 2.5 312.5
ecs.g6.4xlarge 40,000 3.0 375
ecs.g6.6xlarge 50,000 4.0 500
ecs.g6.8xlarge 60,000 5.0 625
ecs.g6.13xlarge 100,000 8.0 1,000
ecs.g6.26xlarge 200,000 16.0 2,000
Table 11. Storage I/O performance of c6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.c6.large 10,000 1.0 125
ecs.c6.xlarge 20,000 1.5 187.5
ecs.c6.2xlarge 25,000 2.0 250
ecs.c6.3xlarge 30,000 2.5 312.5
ecs.c6.4xlarge 40,000 3.0 375
ecs.c6.6xlarge 50,000 4.0 500
ecs.c6.8xlarge 60,000 5.0 625
ecs.c6.13xlarge 100,000 8.0 1,000
ecs.c6.26xlarge 200,000 16.0 2,000
Table 12. Storage I/O performance of r6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.r6.large 10,000 1.0 125
ecs.r6.xlarge 20,000 1.5 187.5
ecs.r6.2xlarge 25,000 2.0 250
ecs.r6.3xlarge 30,000 2.5 312.5
ecs.r6.4xlarge 40,000 3.0 375
ecs.r6.6xlarge 50,000 4.0 500
ecs.r6.8xlarge 60,000 5.0 625
ecs.r6.13xlarge 100,000 8.0 1,000
ecs.r6.26xlarge 200,000 16.0 2,000
Table 13. Storage I/O performance of hfg6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfg6.large 10,000 1.0 125
ecs.hfg6.xlarge 20,000 1.5 187.5
ecs.hfg6.2xlarge 25,000 2.0 250
ecs.hfg6.3xlarge 30,000 2.5 312.5
ecs.hfg6.4xlarge 40,000 3.0 375
ecs.hfg6.6xlarge 50,000 4.0 500
ecs.hfg6.8xlarge 60,000 5.0 625
ecs.hfg6.10xlarge 100,000 8.0 1,000
ecs.hfg6.16xlarge 120,000 10.0 1,250
ecs.hfg6.20xlarge 200,000 16.0 2,000
Table 14. Storage I/O performance of hfc6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfc6.large 10,000 1.0 125
ecs.hfc6.xlarge 20,000 1.5 187.5
ecs.hfc6.2xlarge 25,000 2.0 250
ecs.hfc6.3xlarge 30,000 2.5 312.5
ecs.hfc6.4xlarge 40,000 3.0 375
ecs.hfc6.6xlarge 50,000 4.0 500
ecs.hfc6.8xlarge 60,000 5.0 625
ecs.hfc6.10xlarge 100,000 8.0 1,000
ecs.hfc6.16xlarge 120,000 10.0 1,250
ecs.hfc6.20xlarge 200,000 16.0 2,000
Table 15. Storage I/O performance of hfr6
Instance type Maximum IOPS (4 KiB I/O) Maximum storage bandwidth (Gbit/s) Maximum throughput (MB/s, 1,024 KiB I/O)
ecs.hfr6.large 10,000 1.0 125
ecs.hfr6.xlarge 20,000 1.5 187.5
ecs.hfr6.2xlarge 25,000 2.0 250
ecs.hfr6.3xlarge 30,000 2.5 312.5
ecs.hfr6.4xlarge 40,000 3.0 375
ecs.hfr6.6xlarge 50,000 4.0 500
ecs.hfr6.8xlarge 60,000 5.0 625
ecs.hfr6.10xlarge 100,000 8.0 1,000
ecs.hfr6.16xlarge 120,000 10.0 1,250
ecs.hfr6.20xlarge 200,000 16.0 2,000