Block storage performance

Updated at: 2025-01-22 08:11
important

This topic contains important information on necessary precautions. We recommend that you read this topic carefully before proceeding.

Various block storage devices have different performance metrics and prices. You can select block storage devices that are suitable for specific workloads and applications based on your storage capacity requirements. This topic describes the performance metrics and specifications of cloud disks, local disks, and elastic ephemeral disks.

Note

Performance metrics

The key metrics that are used to measure the performance of block storage devices include IOPS, throughput, and latency. The performance of specific block storage devices is related to the device capacity. For example, Enterprise SSDs (ESSDs) at different performance levels (PLs) support different capacity ranges.

  • I/O size

    I/O size is the size of data in each read/write (I/O) operation. Example: 4 KiB. You can use the following formula to calculate throughput based on the I/O size and the IOPS: IOPS × I/O size = Throughput. The performance metrics that are critical for applications vary based on the I/O size.

  • IOPS: measures the number of I/O operations that can be performed on a block storage device per second.

    High IOPS is critical for applications that require latency-sensitive, small, random read/write operations, such as database applications.

    Note

    In database applications, data is frequently inserted, updated, and deleted. High IOPS ensures that the system runs efficiently even when swamped with a large number of random read/write operations, and prevents the performance degradation or increased latency caused by I/O bottlenecks.

    Common IOPS metrics

    Metric

    Description

    Data access method

    Total IOPS

    The total number of I/O operations per second.

    Access locations on storage devices in a continuous or non-continuous manner.

    Random read IOPS

    The average number of random read I/O operations per second.

    Access locations on storage devices in a non-continuous manner.

    Random write IOPS

    The average number of random write I/O operations per second.

    Sequential read IOPS

    The average number of sequential read I/O operations per second.

    Access locations on storage devices in a continuous manner.

    Sequential write IOPS

    The average number of sequential write I/O operations per second.

  • Throughput: measures the amount of data that is transferred per second. Unit: MB/s.

    High throughput is critical for applications that require a large number of large sequential read/write operations, such as database applications.

    Note

    Offline computing tasks performed by Hadoop require the analysis and processing of petabyte-scale data. Low throughput may result in prolonged overall processing time, which affects business efficiency and response speed.

  • Latency: measures the amount of time that is required for a block storage device to process an I/O request. Unit: seconds, milliseconds, or microseconds. High latency may cause performance degradation or errors in applications that require low latency.

    For latency-sensitive applications such as database applications, we recommend that you use low-latency disks, such as ESSD AutoPL disks and ESSDs.

  • Capacity: is the amount of storage space. Unit: TiB, GiB, MiB, or KiB.

    Block storage capacity is measured in binary units. For example, 1 GiB equals 1,024 MiB. You cannot use capacity as a metric to measure the performance of block storage devices, but the maximum performance of block storage devices varies based on the capacity of the devices. A block storage device that has a larger capacity provides stronger processing capabilities. Block storage devices of the same category have the same I/O performance per unit capacity. However, the performance of a cloud disk linearly increases with the disk capacity up to the single-disk maximum performance of the disk category.

Performance of cloud disks

The following table describes the performance metrics of different categories of cloud disks.

Important
  • The final performance of cloud disks is subject to the disk specification limits and Elastic Compute Service (ECS) instance type limits. For more information, see Storage I/O performance.

  • Standard SSDs, ultra disks, and basic disks are cloud disks of the previous generation and are unavailable for purchase in specific regions and zones. We recommend that you use ESSDs at performance level 0 (PL0 ESSDs) or ESSD Entry disks instead of ultra disks and basic disks, and use ESSD AutoPL disks instead of standard SSDs.

Item

ESSD-series disk

Cloud disk of the previous generation

Regional ESSD (public preview)

ESSD AutoPL disk

PL3 ESSD

PL2 ESSD

PL1 ESSD

PL0 ESSD

ESSD Entry disk

Standard SSD

Ultra disk

Basic disk

Item

ESSD-series disk

Cloud disk of the previous generation

Regional ESSD (public preview)

ESSD AutoPL disk

PL3 ESSD

PL2 ESSD

PL1 ESSD

PL0 ESSD

ESSD Entry disk

Standard SSD

Ultra disk

Basic disk

Single-disk capacity range (GiB)

10 to 65,536

1 to 65,536

1,261 to 65,536

461 to 65,536

20 to 65,536

1 to 65,536

10 to 32,768

20 to 32,768

20 to 32,768

5 to 2,000

Maximum IOPS

50,000

1,000,000

1,000,000

100,000

50,000

10,000

6,000

25,000

5,000

Hundreds

Maximum throughput (MB/s)

350

4,096

4,000

750

350

180

150

300

140

30 to 40

Formula for calculating single-disk IOPS

min{1,800 + 50 × Capacity, 50,000}

Baseline performance: max{min{1,800 + 50 × Capacity, 50,000}, 3,000}

Provisioned performance:

Capacity (GiB) ≤ 3: not configurable

Capacity (GiB) ≥ 4: [1, min{(1,000 IOPS per GiB × Capacity - Baseline IOPS), 50,000}]

Burst performance: Actual IOPS - Baseline IOPS - Provisioned IOPS

min{1,800 + 50 × Capacity, 1,000,000}

min{1,800 + 50 × Capacity, 100,000}

min{1,800 + 50 × Capacity, 50,000}

min{1,800 + 12 × Capacity, 10,000}

min{1,800 + 8 × Capacity, 6,000}

min{1,800 + 30 × Capacity, 25,000}

min{1,800 + 8 × Capacity, 5,000}

None

Formula for calculating single-disk throughput (MB/s)

min{120 + 0.5 × Capacity, 350}

Baseline performance: max{min{120 + 0.5 × Capacity, 350}, 125}

Provisioned performance: 16 KB × Provisioned IOPS/1,024

Burst performance: Actual throughput - Baseline throughput - Provisioned throughput

min{120 + 0.5 × Capacity, 4,000}

min{120 + 0.5 × Capacity, 750}

min{120 + 0.5 × Capacity, 350}

min{100 + 0.25 × Capacity, 180}

min{100 + 0.15 × Capacity, 150}

min{120 + 0.5 × Capacity, 300}

min{100 + 0.15 × Capacity, 140}

None

Data reliability

99.9999999%

Average single-channel random write latency in milliseconds (block size = 4 KB)

  • Value when an instance accesses a disk in the same zone: < 2

  • Value when an instance accesses a disk in a different zone: < 4

0.2

0.2

0.2

0.2

0.3 to 0.5

1 to 3

0.5 to 2

1 to 3

5 to 10

  • In the following examples, a PL0 ESSD is used to describe how to calculate single-disk performance:

    • Single-disk maximum IOPS: The baseline IOPS is 1,800 and increases by 12 per additional GiB to up to 10,000.

    • Single-disk maximum throughput: The baseline throughput is 100 MB/s and increases by 0.25 MB/s per additional GiB to up to 180 MB/s.

  • The performance of standard SSDs varies based on the size of data blocks. Standard SSDs that contain smaller data blocks deliver lower throughput and higher IOPS. The following table provides a comparison of data blocks.

    I/O size (KiB)

    Maximum IOPS

    Throughput (MB/s)

    I/O size (KiB)

    Maximum IOPS

    Throughput (MB/s)

    4

    Approximately 25,000

    Approximately 100

    16

    Approximately 17,200

    Approximately 260

    32

    Approximately 9,600

    Approximately 300

    64

    Approximately 4,800

    Approximately 300

  • An ESSD AutoPL disk can deliver burst performance in addition to baseline performance and provisioned performance. You can use CloudLens for EBS of Elastic Block Storage (EBS) to monitor the performance burst details of an ESSD AutoPL disk in real time, including the burst duration and the number of burst IOPS. For more information, see Analyze disks.

Performance of local disks

Warning

Local disks cannot be separately created. The durability of data stored on a local disk is determined by the reliability of the associated physical machine. The risk of a single point of failure (SPOF) exists. An SPOF on a physical machine may affect the operation of multiple instances. Data stored on local disks may be lost. We recommend that you store only temporary data on local disks. For information about local disks, see Local disks.

Local NVMe SSDs
Local SATA HDDs
  • The following table describes the performance metrics of local NVMe SSDs that are used by the d3c instance family.

    Metric

    Single-disk performance

    ecs.d3c.3xlarge

    ecs.d3c.7xlarge

    ecs.d3c.14xlarge

    Maximum read IOPS

    100,000

    100,000

    200,000

    400,000

    Maximum read throughput

    4 GB/s

    4 GB/s

    8 GB/s

    16 GB/s

    Maximum write throughput

    2 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i4 instance family.

    Metric

    ecs.i4.large

    ecs.i4.xlarge

    ecs.i4.2xlarge

    ecs.i4.4xlarge

    ecs.i4.8xlarge

    ecs.i4.16xlarge

    ecs.i4.32xlarge

    Maximum read IOPS

    112,500

    225,000

    450,000

    900,000

    1,800,000

    3,600,000

    7,200,000

    Maximum read throughput

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    48 GB/s

    Maximum write throughput

    0.375 GB/s

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    Note

    The performance data in the preceding table represents the highest performance levels of local storage for the instance families. The instance families support only Linux images. For optimal performance, we recommend that you use the most recent Linux image versions, such as Alibaba Cloud Linux 3.

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i4g and i4r instance families.

    Metric

    ecs.i4g.4xlarge and ecs.i4r.4xlarge

    ecs.i4g.8xlarge and ecs.i4r.8xlarge

    ecs.i4g.16xlarge and ecs.i4r.16xlarge

    ecs.i4g.32xlarge and ecs.i4r.32xlarge

    Maximum read IOPS

    250,000

    500,000

    1,000,000

    2,000,000

    Maximum read throughput

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    Maximum write throughput

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    Note

    The performance data in the preceding table represents the highest performance levels of local storage for the instance families. The instance families support only Linux images. We recommend that you use the most recent Linux image versions, such as Alibaba Cloud Linux 3, to obtain optimal performance.

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i3 instance family.

    Metric

    ecs.i3.xlarge

    ecs.i3.2xlarge

    ecs.i3.4xlarge

    ecs.i3.8xlarge

    ecs.i3.13xlarge

    ecs.i3.26xlarge

    Maximum read IOPS

    250,000

    500,000

    1,000,000

    2,000,000

    3,000,000

    6,000,000

    Maximum read throughput

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    18 GB/s

    36 GB/s

    Maximum write throughput

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    12 GB/s

    24 GB/s

    Note

    The performance data in the preceding table represents the highest performance levels of local storage for the instance families. The instance families support only Linux images. We recommend that you use the most recent Linux image versions, such as Alibaba Cloud Linux 3, to obtain optimal performance.

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i3g instance family.

    Metric

    ecs.i3g.2xlarge

    ecs.i3g.4xlarge

    ecs.i3g.8xlarge

    ecs.i3g.13xlarge

    ecs.i3g.26xlarge

    Maximum read IOPS

    125,000

    250,000

    500,000

    750,000

    1,500,000

    Maximum read throughput

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    4.5 GB/s

    9 GB/s

    Maximum write throughput

    0.5 GB/s

    1 GB/s

    2 GB/s

    3 GB/s

    6 GB/s

    Note

    The performance data in the preceding table represents the highest performance levels of local storage for the instance families. The instance families support only Linux images. We recommend that you use the most recent Linux image versions, such as Alibaba Cloud Linux 3, to obtain optimal performance.

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i2 and i2g instance families.

    Metric

    Single-disk performance

    Overall instance performance

    ecs.i2.xlarge and ecs.i2g.2xlarge

    Other i2 and i2g instance types

    Maximum capacity

    894 GiB

    1,788 GiB

    8 × 1,788 GiB

    Maximum read IOPS

    150,000

    300,000

    1,500,000

    Maximum read throughput

    1 GB/s

    2 GB/s

    16 GB/s

    Maximum write throughput

    0.5 GB/s

    1 GB/s

    8 GB/s

    Latency

    Several microseconds

    Overall instance performance data in the preceding table applies only to the ecs.i2.16xlarge instance type and represents the highest performance levels of local storage for the i2 instance family.

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i2ne and i2gne instance families.

    Metric

    ecs.i2ne.xlarge and ecs.i2gne.2xlarge

    ecs.i2ne.2xlarge and ecs.i2gne.4xlarge

    ecs.i2ne.4xlarge and ecs.i2gne.8xlarge

    ecs.i2ne.8xlarge and ecs.i2gne.16xlarge

    ecs.i2ne.16xlarge

    Maximum capacity

    894 GiB

    1,788 GiB

    2 × 1,788 GiB

    4 × 1,788 GiB

    8 × 1,788 GiB

    Maximum read IOPS

    250,000

    500,000

    1,000,000

    2,000,000

    4,000,000

    Maximum read throughput

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    Maximum write throughput

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    16 GB/s

    Latency

    Several microseconds

  • The following table describes the performance metrics of the local NVMe SSDs that are used by the i1 instance family.

    Metric

    Single-disk performance

    Overall instance performance

    Maximum capacity

    1,456 GiB

    2,912 GiB

    Maximum IOPS

    240,000

    480,000

    Write IOPS

    min{165 × Capacity, 240,000}

    2 × min{165 × Capacity, 240,000}

    Read IOPS

    Maximum read throughput

    2 GB/s

    4 GB/s

    Read throughput

    min{1.4 × Capacity, 2,000} MB/s

    2 × min{1.4 × Capacity, 2,000} MB/s

    Maximum write throughput

    1.2 GB/s

    2.4 GB/s

    Write throughput

    min{0.85 × Capacity, 1,200} MB/s

    2 × min{0.85 × Capacity, 1,200} MB/s

    Latency

    Several microseconds

    In the following examples, a local NVMe SSD is used to describe how to calculate single-disk performance:

    • Single-disk write IOPS: Each GiB of capacity produces 165 write IOPS, up to a maximum of 240,000 IOPS per disk.

    • Single-disk write throughput: Each GiB of capacity produces a write throughput of 0.85 MB/s, up to a maximum of 1,200 MB/s.

    Overall instance performance data in the preceding table applies only to the ecs.i1.14xlarge instance type and represents the highest performance levels of local storage for the i1 instance family.

The following table describes the performance metrics of local SATA HDDs.

Metric

d1 and d1ne instance families

d2c

d2s

d3s

Single-disk performance

Overall instance performance

Single-disk performance

Overall instance performance

Single-disk performance

Overall instance performance

Single-disk performance

Overall instance performance

Maximum capacity

5,500 GiB

154,000 GiB

3,700 GiB

44,400 GiB

7,300 GiB

219,000 GiB

11,100 GiB

355,200 GiB

Maximum throughput

190 MB/s

5,320 MB/s

190 MB/s

2,280 MB/s

190 MB/s

5,700 MB/s

260 MB/s

8,320 MB/s

Latency

Several milliseconds

Note

The overall instance performance data in the preceding table applies only to the ecs.d1.14xlarge, ecs.d1ne.14xlarge, ecs.d2c.24xlarge, ecs.d2s.20xlarge, and ecs.d3s.16xlarge instance types and represents the highest performance levels of local storage for the corresponding instance families.

Performance of elastic ephemeral disks

Note

An elastic ephemeral disk can be created with user-defined capacity for temporary data storage. For information about elastic ephemeral disks, see Elastic ephemeral disks.

Two categories of elastic ephemeral disks are available: standard and premium. Standard elastic ephemeral disks are suitable for scenarios with large data volumes and high throughput needs, while premium elastic ephemeral disks are suitable for scenarios requiring small capacity but high IOPS. The following table describes the performance of each type:

Metric

Standard elastic ephemeral disks

Premium elasitc ephemeral disks

Metric

Standard elastic ephemeral disks

Premium elasitc ephemeral disks

Single-disk capacity range (GiB)

64 to 8,192

64 to 8,192

Maximum read IOPS per disk

Either 100 times the capacity or 820,000, whichever is smaller

Either 300 times the capacity or 1,000,000, whichever is smaller

Maximum write IOPS per disk

Either 20 times the capacity or 160,000, whichever is smaller

Either 150 times the capacity or 500,000, whichever is smaller

Maximum read throughput per disk (MB/s)

Either 0.8 times the capacity or 4,096, whichever is smaller

Either 1.6 times the capacity or 4,096, whichever is smaller

Maximum write throughput per disk (MB/s)

Either 0.4 times the capacity or 2,048, whichever is smaller

Either the capacity or 2,048, whichever is smaller

Write I/O density①

20

150

Read I/O density①

100

300

①: I/O density = IOPS / disk capacity, unit: IOPS/GiB, indicating the IOPS capability per GiB.

Test the performance of block storage devices

For information about how to test the performance of block storage devices, see the following topics:

Troubleshoot a slow read/write speed or high I/O issue on cloud disks

You can view the monitoring information of cloud disks in the ECS console, EBS console, or CloudMonitor console and determine whether the performance of cloud disks meets your business requirements or whether cloud disks encounter performance bottlenecks. For more information, see View the monitoring data of a cloud disk.

  1. Check whether the billing method of the affected cloud disks is pay-as-you-go. If the billing method of the cloud disks is pay-as-you-go, the I/O speeds of the cloud disks are limited when your account has overdue payments and resume after you add funds to your account to settle the overdue payments.

    Take note that if you do not settle the overdue payments within 15 days after the payments become overdue, the cloud disks are automatically released and the disk data cannot be recovered.

  2. For a Linux instance, troubleshoot IOPS-heavy programs. For more information, see How to check Linux I/O load?

  3. When you import data, the performance of the client and the server affects the read/write speeds.

  4. You can use the atop tool to monitor Linux metrics on the associated ECS instances. The atop tool monitors the usage of various resources in Linux and records resource usage information in the /var/log/atop directory. You can obtain and analyze the atop log files to identify the cause of the issue.

  5. If the performance of a cloud disk does not meet your business requirements, you can improve the disk performance. For more information, see the Improve the performance of cloud disks section of this topic.

Improve the performance of cloud disks

If the performance of a cloud disk does not meet your business requirements, you can use one of the following methods to improve the disk performance:

Important

The final performance of cloud disks is subject to the disk specification limits and ECS instance type limits. If the IOPS and bandwidth limits of a cloud disk that is attached to an ECS instance are lower than the disk IOPS and bandwidth limits of the instance type, you can increase the final performance of the disk by upgrading the instance type instead of using the following methods. For information about the limits of ECS instance types, see Overview of instance families.

Scenario

Method of improving disk performance

If a cloud disk belongs to a category that does not meet your needs for increased IOPS or throughput, you can change the cloud disk to a category that delivers higher performance and responds more quickly. For example, you can change a standard SSD into a PL1 ESSD. This method is suitable for scenarios in which applications require high storage performance and experience significant growth in business scale or traffic volume.

Change the category of a cloud disk

For an ESSD, you can change the performance level of the disk based on your business requirements.

Change the performance level of an ESSD

For an ESSD AutoPL disk, you can enable the performance provision or performance burst feature to improve disk performance.

Modify the performance configurations of an ESSD AutoPL disk

If a cloud disk does not meet your needs for increased IOPS and storage capacity, we recommend that you resize the disk by extending the disk capacity. When you extend cloud disks of specific categories, such as PL1 ESSDs, the baseline IOPS of the disks increases with the disk capacity. This means the processing capabilities and performance of the disks are improved. This method is suitable for scenarios in which data volume continues to grow and requires larger storage capacity and higher IOPS. For example, the baseline IOPS of a 40-GiB PL1 ESSD is 3,800, which is calculated by using the following formula: min{1,800 + 50 × 40, 50,000}. When you extend the PL1 ESSD to 100 GiB, the baseline IOPS of the PL1 ESSD increases to 6,800.

Resize cloud disks

To increase disk performance and flexibly manage and optimize storage resource allocation, you can use Logical Volume Manager (LVM). LVM can distribute data across multiple logical volumes (LVs) to allow concurrent data reads and writes and improve disk performance. This method is suitable for scenarios that require highly concurrent access, such as multi-threaded applications and databases.

Create an LV

To increase the IOPS and throughput of a disk and ensure data redundancy, you can create a RAID array for the disk. For example, you can create a RAID array of the RAID 0 level that includes the disk to improve read/write speeds or a RAID array of the RAID 1 or RAID 10 level that includes the disk to improve disk performance and provide data redundancy.

Create a RAID array for a Linux instance

  • On this page (1, M)
  • Performance metrics
  • Performance of cloud disks
  • Performance of local disks
  • Performance of elastic ephemeral disks
  • Test the performance of block storage devices
  • Troubleshoot a slow read/write speed or high I/O issue on cloud disks
  • Improve the performance of cloud disks
Feedback
phone Contact Us

Chat now with Alibaba Cloud Customer Service to assist you in finding the right products and services to meet your needs.

alicare alicarealicarealicare