PolarDB for PostgreSQL provides the cross-node parallel execution feature that allows an SQL query to 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.

Prerequisites

  • To use the cross-node parallel execution feature on a cluster that uses a minor kernel version earlier than V1.1.20 (released in January 2022), go to the Quota Center. Click Apply in the Actions column corresponding to polardb_pg_epq_usage.
  • The minor version of the PolarDB for PostgreSQL kernel is V1.1.11 or later. For more information about how to upgrade the minor version of the kernel, see Version Management.

Benefits

The cross-node parallel execution feature provides the following benefits:

  • Hybrid transaction/analytical processing (HTAP) capabilities:
    • Run real-time analytical queries on transaction processing (TP) data.
    • Isolate the read-only nodes on which analytical queries are run from the read-only nodes on which transactional queries are run without impacting 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.

Scenarios

This feature is suitable for business scenarios that require simple analysis, such as reconciliation.

Feature overview

  • 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.