Chapter 11. Planning the Scalability of Compute Resources

In Postgres Pro AXE, compute resources are isolated from storage resources, and you can scale them independently.

Analytical queries are not distributed across servers. To reduce the query execution time, provide more compute resources on the server. To increase the number of queries processed per second, provide more compute resources on the server or add standby servers to a cluster. For example, a server with 256 CPU cores, 2 TB of RAM, and an array of NVMe disks is sufficient for fast execution of analytical queries on up to 100 TB of data.

The total storage volume is virtually unlimited and, if required, can be scaled to tens of petabytes. However, the query execution time on each server is limited by CPU and RAM.

For more information about estimating required compute resources, refer to Section 8.2.

When working with large volumes of data, it is recommended to use Hive partitioning, which allows partitioning the data automatically by time periods (e.g., by year) or by a key (e.g., by region ID or category). In this case, Postgres Pro AXE manages partitions itself and reads only the required data, thereby minimizing the load on server compute resources.

You can start with a single server and monitor the response time and workload. If it does not meet your requirements, provide more compute resources or add standby servers. For more information about deployment scenarios, refer to Chapter 6.