All Products
Search
Document Center

ApsaraDB RDS:Primary ApsaraDB RDS instance types

Last Updated:Mar 28, 2026

ApsaraDB RDS (RDS) offers primary instance types across four engines — MySQL, PostgreSQL, SQL Server, and MariaDB — each with different instance families and storage options. This page explains the three core metrics that determine instance performance (instance family, IOPS, and I/O bandwidth) and links to the per-engine instance type lists.

Instance type lists by engine

EngineSupported product typesSupported storage typesInstance type lists
MySQLStandard and YiTianCloud disks and Premium Local SSDsPrimary instance types for standard ApsaraDB RDS for MySQL instances (x86) and Primary instance types for YiTian ApsaraDB RDS for MySQL instances (ARM)
PostgreSQLStandard and YiTianCloud disksPrimary instance types for standard and YiTian ApsaraDB RDS for PostgreSQL instances
SQL ServerN/ACloud disksPrimary instance types for ApsaraDB RDS for SQL Server instances
MariaDBStandardCloud disksPrimary instance types for ApsaraDB RDS for MariaDB instances

Core metrics

Three metrics determine primary instance performance: instance family, IOPS, and I/O bandwidth.

Instance family

The instance family determines whether CPU, memory, storage, and I/O resources are dedicated to your instance or shared with other instances on the same physical server. This is the primary driver of performance consistency.

Instance familyWorkload fitStorage typeDedicated resourcesShared resourcesPerformance consistency
SharedEntry-level workloads with low, predictable loadCloud diskMemory and storageCPU and I/OFluctuates under high server load. Supported only by RDS for SQL Server.
General-purposeDevelopment, testing, and low-traffic applicationsCloud diskMemory and storageCPU and I/OFluctuates under high server load.
General-purposeDevelopment, testing, and low-traffic applicationsPremium Local SSDMemoryCPU, storage, and I/OFluctuates under high server load.
DedicatedProduction workloads requiring stable, predictable performanceCloud diskAll resourcesNoneStable, no resource contention.
DedicatedProduction workloads requiring stable, predictable performancePremium Local SSDCPU, memory, and storageI/OStable, no resource contention.
Dedicated hostMission-critical applications requiring maximum isolationPremium Local SSDAll resourcesNoneHighest stability and isolation.

Choose an instance family based on your workload:

  • Shared or General-purpose: Use for development environments, internal tools, or workloads where brief performance variation is acceptable. Because CPU resources are pooled across instances on the same physical server, the listed maximum connections and peak IOPS can be higher than those of a dedicated instance with the same vCPU and memory spec. However, peak performance is not guaranteed when the server is under high load.

  • Dedicated: Use for production databases where consistent latency and throughput are required. All vCPU and memory resources are exclusively allocated to the instance, so the listed maximums are hard ceilings — not burst values.

  • Dedicated host: Use when sharing any physical server resource with another tenant is unacceptable, such as for compliance-driven isolation or highly latency-sensitive workloads.

IOPS

Input/Output Operations Per Second (IOPS) measures how many random read and write requests the storage can handle per second.

The actual maximum IOPS of an instance is always the minimum of three independent ceilings: the instance type ceiling, the storage-capacity-derived ceiling, and the storage type ceiling. Use the formulas in the following table to calculate the actual maximum IOPS.

For instances using Premium Local SSDs, the actual maximum IOPS equals the maximum IOPS specified for the instance type — no formula applies.

For instances using cloud disks, apply the formula that matches the storage type:

Storage typeFormula for actual maximum IOPS (storage capacity in GB)
Premium ESSD — with I/O performance burst enabledmin{Maximum IOPS for the instance type, 1000000}
Premium ESSD — with I/O performance burst disabledmin{Maximum IOPS for the instance type, 1800 + 50 × Storage capacity, 50000}
ESSD PL3min{Maximum IOPS for the instance type, 1800 + 50 × Storage capacity, 1000000}
ESSD PL2min{Maximum IOPS for the instance type, 1800 + 50 × Storage capacity, 100000}
ESSD PL1min{Maximum IOPS for the instance type, 1800 + 50 × Storage capacity, 50000}
Standard SSDmin{Maximum IOPS for the instance type, 1800 + 30 × Storage capacity, 25000}

The min{} function returns the smallest of the listed values. Adding storage capacity raises the capacity-derived ceiling but cannot push the result above the instance type ceiling or the storage type ceiling.

Example: IOPS calculation

Instance: mysql.x2.large.2c with a PL1 ESSD of 20 GB

Formula: min{Maximum IOPS for the instance type, 1800 + 50 × Storage capacity, 50000}

ValueCalculation
Maximum IOPS for the instance type20000 (from the instance type list)
1800 + 50 × Storage capacity1800 + 50 × 20 = 2800
PL1 ESSD ceiling50000

Result: 2800 IOPS — the smallest of the three values.

Note

Logical database I/Os and physical disk I/Os do not have a one-to-one correspondence. MySQL InnoDB has a default page size of 16 KB while the disk block size is 4 KB, so one logical page read requires four physical disk I/Os. SQL Server has a default page size of 8 KB, so the same 1,000 physical disk I/Os translates to 250 logical I/Os for MySQL InnoDB and 500 logical I/Os for SQL Server.

I/O bandwidth

I/O bandwidth (also called throughput) measures how much data the storage can read or write sequentially per second.

Like IOPS, the actual maximum I/O bandwidth is always the minimum of three independent ceilings: the instance type ceiling, the storage-capacity-derived ceiling, and the storage type ceiling.

For instances using cloud disks, apply the formula that matches the storage type:

Storage typeFormula for actual maximum I/O bandwidth (MB/s, storage capacity in GB)
Premium ESSD — with I/O performance burst enabledmin{Maximum I/O bandwidth for the instance type, 4000}
Premium ESSD — with I/O performance burst disabledmin{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 350}
ESSD PL3min{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 4000}
ESSD PL2min{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 750}
ESSD PL1min{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 350}
Standard SSDmin{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 300}

Example: I/O bandwidth calculation

Instance: mysql.x2.large.2c with a PL3 ESSD of 5,000 GB

Formula: min{Maximum I/O bandwidth for the instance type, 120 + 0.5 × Storage capacity, 4000}

ValueCalculation
Maximum I/O bandwidth for the instance type192 MB/s (from the instance type list)
120 + 0.5 × Storage capacity120 + 0.5 × 5000 = 2620
PL3 ESSD ceiling4000

Result: 192 MB/s — the smallest of the three values.

Relationship between IOPS and I/O bandwidth

IOPS and I/O bandwidth are linked by the size of each I/O operation:

I/O bandwidth (MB/s) = IOPS × I/O size (KB) / 1024

Note

The I/O size in this formula is the physical block size of the cloud disk (4 KB by default), not the logical page size of the database engine.

An instance hits one limit before the other, depending on the workload:

  • IOPS-bound workloads: Applications performing many small I/O operations (such as 4 KB random reads and writes) reach the IOPS ceiling first. I/O bandwidth utilization stays well below its limit.

  • Bandwidth-bound workloads: Applications performing fewer but large I/O operations (such as 256 KB sequential reads and writes) saturate I/O bandwidth first. IOPS remains relatively low.

FAQ

Why does an entry-level instance support more connections and higher peak IOPS than an enterprise-level instance with the same number of CPU cores and memory?

Entry-level instances use the Shared or General-purpose instance family, which pools CPU resources across multiple instances on the same physical server. Pooling allows each instance to burst above its nominal allocation, which is why the listed maximum connections and IOPS can be higher than for a same-spec dedicated instance. The tradeoff is that performance may fluctuate when the physical server is under high load. Enterprise-level (Dedicated) instances have exclusive access to their allocated vCPU and memory, so performance is stable but the listed maximums are hard ceilings. For more details, see Instance families.

How do I check which instance types are available to purchase in a region?

Call the DescribeAvailableResource API operation to query available resources in a specific region.

Why aren't queries per second (QPS) and transactions per second (TPS) listed in the instance type tables?

QPS and TPS depend on your schema design, query patterns, and application logic — not just the instance type. Two instances with identical specs can produce very different QPS and TPS results depending on the workload. For instructions on running your own performance tests, see Test guidelines.

What's next