PolarDB for PostgreSQL provides the cross-node parallel execution feature. If this feature is enabled, an SQL query can be run on multiple compute nodes in a distributed manner. This improves the query performance of PolarDB for PostgreSQL, increases the I/O throughput of Polar File System (PolarFS) and the CPU utilization of the compute nodes, and improves the memory usage of the compute nodes.
The cross-node parallel execution feature provides the following benefits:
- Some hybrid transaction/analytical processing (HTAP) capabilities:
- Analytical queries on transaction processing (TP) data can be run in real time.
- The read-only nodes on which analytical queries are run are physically isolated from the read-only nodes on which transactional queries are run. This eliminates the impact on TP services.
- Elastic scaling enabled by the compute-storage separation architecture of PolarDB for PostgreSQL:
- Read-only nodes can be added based on your business requirements to increase computing resources. The added nodes are automatically included in the list of read-only nodes on which parallel execution is performed in a distributed manner. This way, the system does not need to perform resharding on data.
- No data skew occurs.
This feature is suitable for business scenarios that require simple analysis, such as reconciliation.
You can use the cross-node parallel execution feature to run analytical queries. This way, you can use specific HTAP capabilities based on your business requirements. For more information, see Use the cross-node parallel execution feature to run analytical queries.
- You can use the cross-node parallel execution feature to accelerate the process of creating indexes. For more information, see Use cross-node parallel execution to accelerate index creation.
- You can use the cross-node parallel execution feature to scan BRIN indexes. To enable the cross-node parallel execution feature, set the polar_enable_px parameter to on. This way, you can use BRIN indexes to improve query performance.