This topic describes the compute node specifications of PolarDB for MySQL Standard Edition clusters.
Product sub-series
The compute nodes of Standard Edition clusters are available in two sub-series: General-purpose and Dedicated.
General-purpose: Different clusters on the same server share idle computing resources, such as CPUs. This resource-sharing model is highly cost-effective.
Dedicated: Each cluster exclusively uses its allocated computing resources, such as CPUs, and does not share them with other clusters on the same server. This provides more stable and reliable performance.
Compute node specifications
Performance parameters for compute nodes vary by storage class.
Enterprise SSDs (ESSDs)
CPU architecture | Specification Code | CPU and memory | Maximum storage capacity | Default maximum connections1 | Maximum file system inodes2 | Maximum file system blktags3 | Maximum IOPS and throughput4 |
x86 (General-purpose) | polar.mysql.g1.tiny.c | 1 core, 1 GB | 64 TB | 1,000 | 6,707,200 | 8,384,000 |
|
polar.mysql.g1.small.c | 1 core, 2 GB | 64 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2.small.c | 2 cores, 4 GB | 64 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4.medium.c | 2 cores, 8 GB | 64 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8.medium.c | 2 cores, 16 GB | 64 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2.large.c | 4 cores, 8 GB | 64 TB | 3,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4.large.c | 4 cores, 16 GB | 64 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8.large.c | 4 cores, 32 GB | 64 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2.xlarge.c | 8 cores, 16 GB | 64 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4.xlarge.c | 8 cores, 32 GB | 64 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8.xlarge.c | 8 cores, 64 GB | 64 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2.2xlarge.c | 16 cores, 32 GB | 64 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4.2xlarge.c | 16 cores, 64 GB | 64 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8.2xlarge.c | 16 cores, 128 GB | 64 TB | 16,000 | 6,707,200 | 8,384,000 | ||
x86 (Dedicated) | polar.mysql.x4.medium.c | 2 cores, 8 GB | 64 TB | 6,000 | 6,707,200 | 8,384,000 | |
polar.mysql.x8.medium.c | 2 cores, 16 GB | 64 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2.large.c | 4 cores, 8 GB | 64 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4.large.c | 4 cores, 16 GB | 64 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8.large.c | 4 cores, 32 GB | 64 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2.xlarge.c | 8 cores, 16 GB | 64 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4.xlarge.c | 8 cores, 32 GB | 64 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8.xlarge.c | 8 cores, 64 GB | 64 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2.2xlarge.c | 16 cores, 32 GB | 64 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4.2xlarge.c | 16 cores, 64 GB | 64 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8.2xlarge.c | 16 cores, 128 GB | 64 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2.4xlarge.c | 32 cores, 64 GB | 64 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4.4xlarge.c | 32 cores, 128 GB | 64 TB | 64,000 | 104,857,600 | 131,072,000 | ||
polar.mysql.x8.4xlarge.c | 32 cores, 256 GB | 64 TB | 64,000 | 104,857,600 | 131,072,000 | ||
polar.mysql.x4.8xlarge.c | 64 cores, 256 GB | 64 TB | 64,000 | 104,857,600 | 131,072,000 | ||
polar.mysql.x8.8xlarge.c | 64 cores, 512 GB | 64 TB | 64,000 | 104,857,600 | 131,072,000 | ||
YiTian ARM (General-purpose) | polar.mysql.g1m.tiny.c | 1 core, 1 GB | 32 TB | 1,000 | 6,707,200 | 8,384,000 | |
polar.mysql.g1m.small.c | 1 core, 2 GB | 32 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2m.small.c | 2 cores, 4 GB | 32 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4m.medium.c | 2 cores, 8 GB | 32 TB | 2,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8m.medium.c | 2 cores, 16 GB | 32 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2m.large.c | 4 cores, 8 GB | 32 TB | 3,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4m.large.c | 4 cores, 16 GB | 32 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8m.large.c | 4 cores, 32 GB | 32 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2m.xlarge.c | 8 cores, 16 GB | 32 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4m.xlarge.c | 8 cores, 32 GB | 32 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8m.xlarge.c | 8 cores, 64 GB | 32 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g2m.2xlarge.c | 16 cores, 32 GB | 32 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g4m.2xlarge.c | 16 cores, 64 GB | 32 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.g8m.2xlarge.c | 16 cores, 128 GB | 32 TB | 16,000 | 6,707,200 | 8,384,000 | ||
YiTian ARM (Dedicated) | polar.mysql.x4m.medium.c | 2 cores, 8 GB | 32 TB | 6,000 | 6,707,200 | 8,384,000 | |
polar.mysql.x8m.medium.c | 2 cores, 16 GB | 32 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2m.large.c | 4 cores, 8 GB | 32 TB | 6,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4m.large.c | 4 cores, 16 GB | 32 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8m.large.c | 4 cores, 32 GB | 32 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2m.xlarge.c | 8 cores, 16 GB | 32 TB | 8,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4m.xlarge.c | 8 cores, 32 GB | 32 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8m.xlarge.c | 8 cores, 64 GB | 32 TB | 16,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2m.2xlarge.c | 16 cores, 32 GB | 32 TB | 10,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4m.2xlarge.c | 16 cores, 64 GB | 32 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8m.2xlarge.c | 16 cores, 128 GB | 32 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x2m.4xlarge.c | 32 cores, 64 GB | 32 TB | 32,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x4m.4xlarge.c | 32 cores, 128 GB | 32 TB | 64,000 | 6,707,200 | 8,384,000 | ||
polar.mysql.x8m.4xlarge.c | 32 cores, 256 GB | 32 TB | 64,000 | 6,707,200 | 8,384,000 |
Default maximum connections1
The table shows the default maximum connections. You can change the maximum number of connections for a cluster by modifying the max_connections parameter in the console. The value of this parameter can range from 1 to 200,000. For more information, see Set cluster parameters.
Maximum file system inodes2 and Maximum file system blktags3
PolarDB Standard Edition uses enterprise SSDs (ESSDs) for its storage layer. The ESSD storage layer uses inodes and blktags. An inode corresponds to a file. A blktag corresponds to a 4 MB logical space in block storage. The number of available inodes and blktags is linearly proportional to the disk capacity. For example, a 10 GB disk has a maximum of 2,048 inodes and 2,560 blktags. If the capacity, number of inodes, or number of blktags reaches the limit for the current specifications, you must upgrade the specifications.
Capacity unit conversions are as follows:
1 TB = 1,024 GB
1 GB = 1,024 MB
1 MB = 1,024 KB
1 KB = 1,024 Bytes
Maximum IOPS and throughput4
The maximum IOPS and throughput are theoretical maximums. These values are not guaranteed under all conditions and are typically limited by the purchased disk space.
The initial IOPS of an ESSD AutoPL disk is 50,000. When you purchase a cluster, you can set the Provisioned IOPS For AutoPL Disk, to increase the IOPS limit. The maximum total IOPS is 100,000.
For more information, see ESSDs and ESSD AutoPL disks.
The IOPS and throughput of an ESSD are shared among multiple nodes. For example, consider a cluster that has compute nodes with 8 cores and 32 GB of memory, uses a PL1 ESSD, and contains one read/write node and three read-only nodes. In this case, all four nodes share the storage performance. This means the total IOPS of the four nodes cannot exceed the PL1 ESSD performance limit of 50,000 IOPS, and the total throughput cannot exceed 350 MB/s. Additionally, the ability to reach the PL1 ESSD performance limit also depends on the purchased disk space.
PSL4/PSL5
The YiTian ARM architecture does not support PSL4 or PSL5 storage classes.
CPU architecture | Specification Code | CPU and memory | Maximum storage capacity | Default maximum connections1 | Maximum file system inodes2 | Maximum file system blktags3 | PSL4 maximum IOPS4 | PSL5 maximum IOPS4 | I/O bandwidth |
x86 (General-purpose) | polar.mysql.g1.tiny.c | 1 core, 1 GB | 100 TB | 1,000 | 20,971,520 | 26,214,400 | 1,500 | 3,000 | 1 Gbps |
polar.mysql.g1.small.c | 1 core, 2 GB | 100 TB | 1,500 | 20,971,520 | 26,214,400 | 1,700 | 3,400 | 1 Gbps | |
polar.mysql.g2.small.c | 2 cores, 4 GB | 100 TB | 1,800 | 20,971,520 | 26,214,400 | 4,000 | 8,000 | 1 Gbps | |
polar.mysql.g4.medium.c | 2 cores, 8 GB | 100 TB | 2,000 | 20,971,520 | 26,214,400 | 8,000 | 16,000 | 1 Gbps | |
polar.mysql.g8.medium.c | 2 cores, 16 GB | 100 TB | 8,000 | 20,971,520 | 26,214,400 | 8,000 | 16,000 | 2 Gbps | |
polar.mysql.g2.large.c | 4 cores, 8 GB | 100 TB | 3,000 | 20,971,520 | 26,214,400 | 15,000 | 30,000 | 2 Gbps | |
polar.mysql.g4.large.c | 4 cores, 16 GB | 100 TB | 6,000 | 20,971,520 | 26,214,400 | 21,000 | 42,000 | 2 Gbps | |
polar.mysql.g8.large.c | 4 cores, 32 GB | 100 TB | 8,000 | 20,971,520 | 26,214,400 | 21,000 | 42,000 | 4 Gbps | |
polar.mysql.g2.xlarge.c | 8 cores, 16 GB | 100 TB | 6,000 | 20,971,520 | 26,214,400 | 24,000 | 48,000 | 2 Gbps | |
polar.mysql.g4.xlarge.c | 8 cores, 32 GB | 100 TB | 10,000 | 20,971,520 | 26,214,400 | 27,000 | 54,000 | 4 Gbps | |
polar.mysql.g8.xlarge.c | 8 cores, 64 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 27,000 | 54,000 | 10 Gbps | |
polar.mysql.g2.2xlarge.c | 16 cores, 32 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 31,500 | 63,000 | 4 Gbps | |
polar.mysql.g4.2xlarge.c | 16 cores, 64 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 31,500 | 63,000 | 4 Gbps | |
polar.mysql.g8.2xlarge.c | 16 cores, 128 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 31,500 | 63,000 | 8 Gbps | |
x86 (Dedicated) | polar.mysql.x4.medium.c | 2 cores, 8 GB | 100 TB | 6,000 | 20,971,520 | 26,214,400 | 8,000 | 16,000 | 1 Gbps |
polar.mysql.x8.medium.c | 2 cores, 16 GB | 100 TB | 8,000 | 20,971,520 | 26,214,400 | 18,000 | 36,000 | 2 Gbps | |
polar.mysql.x2.large.c | 4 cores, 8 GB | 100 TB | 3,000 | 20,971,520 | 26,214,400 | 32,000 | 64,000 | 2 Gbps | |
polar.mysql.x4.large.c | 4 cores, 16 GB | 100 TB | 8,000 | 20,971,520 | 26,214,400 | 32,000 | 64,000 | 4 Gbps | |
polar.mysql.x8.large.c | 4 cores, 32 GB | 100 TB | 8,000 | 20,971,520 | 26,214,400 | 36,000 | 72,000 | 4 Gbps | |
polar.mysql.x2.xlarge.c | 8 cores, 16 GB | 100 TB | 6,000 | 20,971,520 | 26,214,400 | 48,000 | 96,000 | 2 Gbps | |
polar.mysql.x4.xlarge.c | 8 cores, 32 GB | 100 TB | 10,000 | 20,971,520 | 26,214,400 | 48,000 | 96,000 | 8 Gbps | |
polar.mysql.x8.xlarge.c | 8 cores, 64 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 50,000 | 108,000 | 10 Gbps | |
polar.mysql.x2.2xlarge.c | 16 cores, 32 GB | 100 TB | 16,000 | 20,971,520 | 26,214,400 | 50,000 | 192,000 | 4 Gbps | |
polar.mysql.x4.2xlarge.c | 16 cores, 64 GB | 100 TB | 32,000 | 20,971,520 | 26,214,400 | 50,000 | 192,000 | 16 Gbps | |
polar.mysql.x8.2xlarge.c | 16 cores, 128 GB | 100 TB | 32,000 | 20,971,520 | 26,214,400 | 50,000 | 192,000 | 16 Gbps | |
polar.mysql.x2.4xlarge.c | 32 cores, 64 GB | 100 TB | 32,000 | 20,971,520 | 26,214,400 | 80,000 | 288,000 | 16 Gbps | |
polar.mysql.x4.4xlarge.c | 32 cores, 128 GB | 500 TB | 64,000 | 104,857,600 | 131,072,000 | 80,000 | 288,000 | 20 Gbps | |
polar.mysql.x8.4xlarge.c | 32 cores, 256 GB | 500 TB | 64,000 | 104,857,600 | 131,072,000 | 80,000 | 288,000 | 24 Gbps | |
polar.mysql.x4.8xlarge.c | 64 cores, 256 GB | 500 TB | 64,000 | 104,857,600 | 131,072,000 | 100,000 | 288,000 | 24 Gbps | |
polar.mysql.x8.8xlarge.c | 64 cores, 512 GB | 500 TB | 100,000 | 104,857,600 | 131,072,000 | 100,000 | 288,000 | 24 Gbps |
For a cluster that uses the PSL4 or PSL5 storage class, the maximum IOPS and I/O bandwidth increase proportionally with the number of nodes. For example, consider a cluster with dedicated specifications that uses 8-core, 32 GB compute nodes and the PSL5 storage class. If this cluster contains one read/write node and three read-only nodes, the total maximum storage performance is 4 × 96,000 IOPS and 4 × 8 Gbps.
In a PolarDB for MySQL Enterprise Edition cluster, nodes that use PSL4 or PSL5 storage have independent storage specifications. Therefore, the nodes do not interfere with each other.
In a cluster that uses the PSL4 or PSL5 storage class, each node has independent storage specifications and does not interfere with other nodes. For example, if you purchase a cluster with storage specifications of 96,000 IOPS and 8 Gbps of bandwidth, and the cluster has four nodes (one read/write node and three read-only nodes), each node has 96,000 IOPS and 8 Gbps of bandwidth.
PolarStore (PSL4/PSL5) supports petabyte-scale storage. If you have such requirements, contact us to reserve the required resources.
Default maximum connections1
The table shows the default maximum connections. You can change the maximum number of connections for a cluster by modifying the max_connections parameter in the console. The value of this parameter can range from 1 to 200,000. For more information, see Set cluster parameters.
Maximum file system inodes2 and Maximum file system blktags3
PolarDB accesses the underlying storage through its self-developed distributed file system, PolarFileSystem (PolarFS). Similar to traditional file systems, PolarFS uses the concepts of inodes and blktags. An inode corresponds to a file. A blktag corresponds to a 4 MB logical space in block storage. The number of available inodes and blktags is linearly proportional to the disk capacity. For example, a 10 GB disk has a maximum of 2,048 inodes and 2,560 blktags. If the capacity, number of inodes, or number of blktags reaches the limit for the current specifications, you must upgrade the specifications.
Capacity unit conversions:
1 TB = 1,024 GB
1 GB = 1,024 MB
1 MB = 1,024 KB
1 KB = 1,024 Bytes
Maximum IOPS4
The maximum IOPS is a theoretical maximum and is not guaranteed under all conditions.