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.
Overview
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.
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 |
|
|
I/O burst enabled |
|
|
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
Alibaba Cloud is providing a limited-time free offer for the I/O burst feature of general ESSDs. Starting from June 20, 2024, you can use the I/O burst feature free of charge. For more information about the event, see [Special offers/Price changes] ApsaraDB RDS provides a limited-time free offer for the I/O burst feature of general ESSDs. After the event ends, you are charged only for the burstable I/O operations that exceed the free quota on your RDS instance.
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
NoteYou 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.
NoteIf 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
NoteIf 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.
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) | Fees for burstable I/O operations (USD) | Total monthly fees (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.
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
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.
Enable the I/O burst feature for an existing RDS instance that uses general ESSDs
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.
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.
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.