All Products
Search
Document Center

ApsaraDB RDS:Use the I/O burst feature of general ESSDs for an ApsaraDB RDS for PostgreSQL instance

Last Updated:Aug 29, 2024

If your workloads significantly fluctuate and the peak hours frequently change, you can enable the I/O burst feature for general Enterprise SSDs (ESSDs) of an ApsaraDB RDS for PostgreSQL instance. This way, the IOPS of general ESSDs is not subject to the maximum IOPS of the RDS instance, which can meet business requirements for burstable IOPS during peak hours.

Description

The general ESSD storage type is supported by ApsaraDB RDS for PostgreSQL. General ESSDs are compatible with all features of ESSDs and support the I/O burst feature. General ESSDs deliver high IOPS in scenarios in which the disk size remains unchanged and the I/O loads are heavy.

Burstable I/O performance

If you enable the I/O burst feature for general ESSDs of an RDS instance, the maximum IOPS and maximum throughput that are supported by the RDS instance are increased. The following table compares the maximum IOPS and maximum throughput that are supported by an RDS instance before and after the I/O burst feature is enabled for the RDS instance.

Note

If you enable the I/O burst feature for the primary RDS instance, the I/O burst feature is automatically enabled for the secondary RDS instance. If you want to enable the I/O burst feature for the read-only RDS instances of the primary RDS instance, you must go to the instance details page.

Scenario

Maximum IOPS

Maximum throughput

I/O burst disabled

min{50000 + IOPS increment,Maximum IOPS for the instance type,IOPS that corresponds to the maximum I/O bandwidth for the instance type,1800 + 50 × Storage capacity of the RDS instance + IOPS increment}

min{350 + I/O bandwidth increment,Maximum IOPS for the instance type,120 + 0.5 × Storage capacity of the RDS instance + I/O bandwidth increment} (Unit: MB/s)

I/O burst enabled

min{1000000,Maximum IOPS for the instance type,IOPS that corresponds to the maximum I/O bandwidth for the instance type}

min{4000,Maximum I/O bandwidth for the instance type} (Unit: MB/s)

Note
  • If the throughput of an RDS instance reaches the upper limit, the IOPS of the instance is affected. If the IOPS of an RDS instance reaches the upper limit, the throughput of the instance is affected.

  • The preceding calculations do not apply to RDS instances that use cloud disks and general-purpose instance types because these types of RDS instances share resources with other general-purpose instances. As a result, the maximum IOPS and maximum I/O bandwidth cannot be guaranteed. For more information, see Instance types for primary ApsaraDB RDS for PostgreSQL instances.

  • For more information about the maximum IOPS and maximum I/O bandwidth for an instance type, see Instance types for primary ApsaraDB RDS for PostgreSQL instances.

  • For more information about how to calculate the IOPS that corresponds to the maximum I/O bandwidth for an instance type, use the following calculation: Maximum I/O bandwidth for the instance type × 1,024 × 1,024/8/8. In this calculation, the first number 8 from left to right indicates 8 bits, and 8 bits form a byte. The second number 8 from left to right indicates that the amount of data involved in each write and read operation on an RDS instance is 8 KB.

Scenarios

I/O loads increase due to heavy workloads, large transactions, full table scans, and queries that return a large amount of data. In some cases, the I/O usage is close to or reaches 100% even if the CPU, memory, and storage resources are sufficient. In these scenarios, you must upgrade the instance specifications or storage type of your RDS instance. For example, you can upgrade the storage type from ESSD performance level 1 (PL1) to ESSD PL2.

  • If you do not upgrade the instance specifications or storage type, the I/O loads reach the upper limit. As a result, the instance performance decreases, queries time out, and connection errors occur.

  • If you upgrade instance specifications, the I/O performance can meet your business requirements, but the CPU, memory, and storage resources are idle and wasted.

  • If you upgrade the storage type, the I/O usage is increased within a short period of time, but storage resources are wasted and costs are increased when the I/O loads decrease.

You can use the I/O burst feature to resolve the preceding issues. When I/O loads increase, if the I/O burst feature is enabled, an I/O burst is automatically triggered to increase the maximum I/O throughput and IOPS. When I/O loads decrease, the maximum I/O throughput and IOPS are automatically restored. This feature helps deliver serverless I/O performance, ensures optimal I/O performance, and reduces costs.

Benefits

Compared with the solution of upgrading instance specifications or the storage type, the I/O burst feature for general ESSDs has the following benefits and significantly reduces costs:

  • You are charged only based on burstable I/O operations.

  • The burstable I/O operations are billed by second.

  • A free quota on burstable I/O operations is provided. You are charged only for the burstable I/O operations that exceed the free quota.

Billing

The I/O burst feature is provided free of charge during the public preview that lasts from June 20, 2024 to September 23, 2024. You are charged for the feature after September 23, 2024.

Billing rules

Fee for a general ESSD = Storage fee + Fee for burstable I/O operations

  • Storage fee: fees for the storage capacity that you purchase for your RDS instance. The subscription and pay-as-you-go billing methods are supported. The billing rules are the same as those of a PL1 ESSD. For more information, see Billable items.

  • Fee for burstable I/O operations: Hourly fee for burstable I/O operations = (Total number of burstable I/O operations on all RDS instances in a database system - Free quota on burstable I/O operations) × Unit price of burstable I/O operations

    Note

    You are charged for the burstable I/O operations on general ESSDs that your database system, including primary and secondary RDS instances, uses based on the pay-as-you-go billing method. If you enable the I/O burst feature and the number of burstable I/O operations exceeds the free quota, fees are generated.

    • Total number of burstable I/O operations in a database system

      RDS edition

      Number of burstable I/O operations in a database system

      RDS Basic Edition

      The number of burstable I/O operations on the RDS instance.

      RDS High-availability Edition

      The number of burstable I/O operations is obtained by using the following calculation: Number of burstable I/O operations on the primary RDS instance + Number of burstable I/O operations on the secondary RDS instance.

      RDS Cluster Edition

      The number of burstable I/O operations is obtained by using the following calculation: Number of burstable I/O operations on the primary RDS instance + Number of burstable I/O operations on all secondary RDS instances.

      Calculate the number of burstable I/O operations on an RDS instance

      Description

      Number of burstable I/O operations

      Example value

      The IOPS exceeds the baseline but the throughput does not exceed the baseline.

      (IOPS - Baseline IOPS) × Duration

      Note

      Baseline IOPS: the maximum IOPS before the I/O burst feature is enabled.

      If the IOPS of an RDS instance exceeds the baseline IOPS by 4,000 and lasts for 2 seconds, the number of burstable I/O operations is obtained based on the following calculation: 4,000 × 2 = 8,000.

      The throughput exceeds the baseline but the IOPS does not exceed the baseline.

      (Throughput - Baseline throughput) × 1,024 × Duration/16

      Note
      • Baseline throughput: the maximum throughput before the I/O burst feature is enabled.

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

      16: the conversion coefficient.

      If the throughput of an RDS instance exceeds the baseline throughput by 8 MB/s and lasts for 2 seconds, the number of burstable I/O operations is obtained based on the following calculation: 8 × 1,024 × 2/16 = 1,024.

      Both the IOPS and throughput exceed the baselines.

      max{(IOPS - Baseline IOPS) × Duration,(Throughput - Baseline throughput) × 1,024 × Duration/16}

      Note

      Throughput: the amount of data transferred per second. Unit: MB/s.

      If the result of the (IOPS - Baseline IOPS) × Duration calculation is 8,000 and the result of the (Throughput - Baseline throughput) × 1,024 × Duration/16 calculation is 65,536, the number of burstable I/O operations is 65,536.

      Note
      • If the I/O loads on the primary RDS instance is heavy and an I/O burst is triggered, an I/O burst is also triggered on the secondary RDS instance to ensure data and service consistency. The number of burstable I/O operations on the secondary RDS instance is the same as that on the primary RDS instance.

      • You must separately enable the I/O burst feature for a read-only RDS instance. The billing rules of the I/O burst feature for a read-only RDS instance are the same as those for the primary RDS instance. If the read-only RDS instance runs RDS High-availability Edition, the fees for the I/O burst feature include the fees that are generated for the primary and secondary read-only RDS instances.

    • Free quotas

      ApsaraDB RDS provides free quotas on burstable I/O operations. The free quotas vary based on the RDS edition of your RDS instance. If the number of burstable I/O operations on your RDS instance exceeds the free quota, you are charged for the excess burstable I/O operations.

      RDS edition

      Free quota

      RDS Basic Edition

      300,000 per hour

      RDS High-availability Edition

      600,000 per hour

      RDS Cluster Edition

      800,000 per hour

    • Unit price of burstable I/O operations: USD 0.0015 per 10,000 burstable I/O operations

      Note

      If the number of excess burstable I/O operations is less than 10,000, you are charged for 10,000 burstable I/O operations.

Billing examples

Scenario

An RDS instance that runs RDS High-availability Edition and provides a storage capacity of 1,000 GB resides in the China (Beijing) region. The baseline IOPS is 50,000 and the number of burstable I/O operations per second is 20,000. The burst lasts for 40 seconds every hour throughout a month.

In this scenario, the fees are calculated by using the following formulas:

Number of burstable I/O operations

800,000 per hour

Free quota

600,000 per hour

Excess burstable I/O operations

200,000 per hour

Unit price

USD 0.0015 per 10,000 I/O operations

Actual fee (USD)

0.0015 × (80 - 60) × 24 × 30 = 21.6

The following table compares the fees of a general ESSD and a PL2 ESSD.

Note

The prices in the following table are provided for reference only. The actual prices are displayed in the ApsaraDB RDS console.

Storage type

Storage unit price (USD/month)

Storage cost (USD)

Fee for burstable I/O operations (USD)

Total hourly fee (USD)

General ESSD

244.8

244.8x1=244.8

21.6

244.8+21.6=266.4

PL2 ESSD

489.6

489.6x1=489.6

N/A

489.6

If your RDS instance uses general ESSDs rather than PL2 ESSDs, the cost is reduced by nearly USD 223.2 per month. The value is obtained based on the following calculation: 489.6 - 266.4 = 223.2.

Note

Within a specific time period, if an RDS instance handles a large number of I/O operations for a short period of time, general ESSDs are more cost-effective than PL2 ESSDs.

Enable the I/O burst feature

Note
  • The time that is required to enable or disable the I/O burst feature varies based on the read and write traffic of the RDS instance. In most cases, several minutes are required to enable or disable the feature.

  • Enabling or disabling the I/O burst feature does not cause transient connections. In most cases, your workloads are not adversely affected. In some cases, the IOPS of the RDS instance may fluctuate. We recommend that you perform this operation during off-peak hours.

You can enable the I/O burst feature for an RDS instance when you create the RDS instance. You can also enable the I/O burst feature for an existing RDS instance that uses general ESSDs.

  • Enable the I/O burst feature when you create an RDS instance

    When you create an RDS instance, select the general ESSD storage type and enable the I/O burst feature.

    image

  • Enable the I/O burst feature for an existing RDS instance that uses general ESSDs

    1. Go to the Instances page. In the top navigation bar, select the region in which the RDS instance resides. Then, find the RDS instance and click the ID of the instance.

    2. In the Basic Information section, click Configure General ESSD to the right of the Storage Type parameter. In the dialog box that appears, turn on I/O Burst.

      image

References

  • For more information about other storage types that are supported by ApsaraDB RDS for PostgreSQL, see Storage types.

  • For more information about the general ESSD storage type, see General ESSDs.

  • If the disk I/O becomes a performance bottleneck of your RDS instance, ApsaraDB RDS for PostgreSQL provides the I/O acceleration feature to help you significantly improve the I/O performance of your RDS instance when a large number of read and write requests need to be processed. For more information, see Use the I/O acceleration feature.