AnalyticDB for PostgreSQL enforces the following limits to maintain instance stability and security.
Operational behavior
AnalyticDB for PostgreSQL manages high availability and security patches for you. Two operational events can briefly interrupt connections:
Minor version updates: The instance is read-only during minor version updates. A transient connection interruption of up to 30 seconds may occur after the update completes. Configure your application with a connection pool or automatic reconnection policy to handle this.
Failover: The coordinator and compute nodes each run in a primary/secondary high-availability architecture. If the primary node fails, the service switches to the secondary node within 30 seconds. A transient connection interruption of about 30 seconds may occur during the switch. Configure your application with a connection pool or automatic reconnection policy to handle this.
Connection limits
The maximum number of connections depends on your instance mode and compute node specifications.
Elastic storage mode — High-availability Edition
| Specification | Max connections |
|---|---|
| 2 cores, 16 GB | 300 |
| 4 cores, 32 GB | 600 |
| 8 cores, 64 GB | 1,200 |
| 16 cores, 128 GB | 2,433 |
Elastic storage mode — High-performance Edition (Basic Edition)
| Specification | Max connections |
|---|---|
| 2 cores, 8 GB | 133 |
| 4 cores, 16 GB | 300 |
| 8 cores, 32 GB | 600 |
| 16 cores, 64 GB | 1,200 |
Serverless mode
| Specification | Max connections |
|---|---|
| 4 cores, 16 GB | 375 |
| 8 cores, 32 GB | 750 |
| 16 cores, 64 GB | 1,500 |
Storage limits
| Metric | Limit |
|---|---|
| Maximum data volume in a column | 1 GB |
| Maximum data volume of a database | Varies based on instance specifications |
| Maximum data volume of a table | 128 TB per partition |
| Maximum volume of Binary Large Object (BLOB) data | 1 GB |
| Maximum number of rows in a table | 2^48 |
AnalyticDB for PostgreSQL uses the BYTEA data type in place of the BLOB data type.
Schema limits
| Metric | Limit |
|---|---|
| Maximum number of columns in a table | 1,600 |
| Maximum number of tables in a database | 4.2 billion |
| Maximum number of columns in a view | 1,664 |
| Maximum number of columns specified in a SELECT statement | 1,664 |
| Maximum number of columns in a primary or secondary index | 32 |
| Maximum number of characters in an object name (database, user, base table, view, index, stored procedure, UDF, UDT, constraint, or column) | 63 |
| Maximum number of characters in the name of a row, table, or database | 128 |
Unsupported features
| Feature | Status |
|---|---|
| Triggers | Not supported |
| LATERAL joins | Not supported |