This topic describes the specifications of compute nodes for PolarDB for PostgreSQL.
PolarDB for PostgreSQL supports the Dedicated and General-purpose specifications.
Dedicated: Each cluster does not share allocated compute resources such as CPUs with other clusters on the same server. This improves the reliability and stability of the cluster.
General-purpose: Idle compute resources such as CPUs are shared among clusters on the same server. This improves the cost-effectiveness of the cluster.
Specification | Node specification | CPU and memory | Maximum storage capacity | Maximum number of connections1 | Internal bandwidth | PSL4 maximum IOPS | PSL5 maximum IOPS | I/O bandwidth |
Dedicated | polar.pg.x4.medium | 2 cores, 8 GB memory | 5 TB | 800 | 1 Gbps | 8,000 | 16,000 | 1 Gbps |
polar.pg.x8.medium | 2 cores, 16 GB memory | 10 TB | 1600 | 5 Gbps | 8,000 | 16,000 | 1 Gbps | |
polar.pg.x4.large | 4 cores, 16 GB memory | 10 TB | 1600 | 10 Gbps | 32,000 | 64,000 | 4 Gbps | |
polar.pg.x8.large | 4 cores, 32 GB memory | 10 TB | 3200 | 10 Gbps | 32,000 | 64,000 | 4 Gbps | |
polar.pg.x4.xlarge | 8 cores, 32 GB memory | 10 TB | 3,200 | 10 Gbps | 64,000 | 128,000 | 8 Gbps | |
polar.pg.x8.xlarge | 8 cores, 64 GB memory | 30 TB | 3,200 | 10 Gbps | 80,000 | 160,000 | 10 Gbps | |
polar.pg.x4.2xlarge | 16 cores, 64 GB memory | 50 TB | 3200 | 10 Gbps | 128,000 | 256,000 | 16 Gbps | |
polar.pg.x8.2xlarge | 16 cores, 128 GB memory | 50 TB | 12,800 | 10 Gbps | 128,000 | 256,000 | 16 Gbps | |
polar.pg.x4.4xlarge | 32 cores, 128 GB memory | 50 TB | 12800 | 10 Gbps | 128,000 | 256,000 | 16 Gbps | |
polar.pg.x8.4xlarge | 32 cores, 256 GB memory | 50 TB | 25,600 | 10 Gbps | 192,000 | 384,000 | 24 Gbps | |
polar.pg.x4.8xlarge | 64 cores, 256 GB memory | 50 TB | 25600 | - | 192,000 | 384,000 | - | |
polar.pg.x8.8xlarge | 64 cores, 512 GB memory | 100 TB | 36,000 | 10 Gbps | 204,800 | 409,600 | 24 Gbps | |
polar.pg.x8.12xlarge | 88 cores, 710 GB memory | 100 TB | 36,000 | 25 Gbps | 256,000 | 512,000 | 32 Gbps | |
General-purpose | polar.pg.g2.medium | 2 cores, 4 GB memory | 5 TB | 500 | 1 Gbps | 5000 | 10000 | 1 Gbps |
polar.pg.g4.medium | 2 cores, 8 GB memory | 5 TB | 800 | 1 Gbps | 8000 | 16000 | 1 Gbps | |
polar.pg.g2.large | 4 cores, 8 GB memory | 10 TB | 1000 | 10 Gbps | 16000 | 32000 | 10 Gbps | |
polar.pg.g4.large | 4 cores, 16 GB memory | 10 TB | 1600 | 10 Gbps | 32000 | 64000 | 4 Gbps | |
polar.pg.g2.xlarge | 8 cores, 16 GB memory | 10 TB | 2000 | 10 Gbps | 48000 | 96000 | 4 Gbps | |
polar.pg.g4.xlarge | 8 cores, 32 GB memory | 10 TB | 3200 | 10 Gbps | 64000 | 128000 | 8 Gbps | |
polar.pg.g8.xlarge | 8 cores, 64 GB memory | 30 TB | 3200 | 10 Gbps | 80000 | 160000 | 10 Gbps | |
polar.pg.g2.2xlarge | 16 cores, 32 GB memory | 30 TB | 3200 | 10 Gbps | 96000 | 192000 | 10 Gbps |
Maximum number of connections 1: the limit on the number of connections, which is indicated by the value of the max_connections parameter. The actual number of connections supported by a compute node may vary based on your business. For more information, see Maximum number of connections.
In the minor version 1.1.7 that was released in December 2020, the maximum numbers of connections supported by some compute node specifications were changed. The latest specifications are listed in the preceding table. The changes apply to all clusters that are created after the minor version 1.1.7 was released. For existing clusters, you can use one of the following methods to modify the maximum number of connections:
Change the specifications of clusters.
Go to the Quota Center and click Apply in the Actions column of PolarDB PG adjusts the maximum number of connections to apply for a new maximum number of connections.
Maximum number of connections
If the number of concurrent connections in your PolarDB for PostgreSQL cluster exceeds the maximum number, new connections cannot be established, or existing connections will time out.
The amount of memory consumed by each connection varies in different business systems. As a result, the actual number of connections supported by your PolarDB cluster may be different from the maximum number in the specifications.
Query the maximum number of connections under the current system configurations.
show max_connections;
Query the current number of connections.
select count(1) from pg_stat_activity;
We recommend that you monitor the status of your cluster and make sure that the number of connections does not exceed the recommended value. You can calculate the recommended value based on following formula:
LEAST({DBInstanceClassMemory/11MB}, 5000)
.If your application requires a larger number of connections than the maximum number, you must use a PolarDB cluster with larger memory.