- Mastering PostgreSQL 9.6
- Hans Jurgen Schonig
- 221字
- 2021-07-09 19:57:11
Introducing parallel queries
Traditionally, a query had to run on a single CPU. While this was just fine in the OLTP world, it started to be a problem for analytical applications, which were bound to the speed provided by a single core. With PostgreSQL 9.6, parallel queries were introduced. Of course, implementing parallel queries was hard and so a lot of infrastructure has already been implemented over the years. All this infrastructure is now available to provide the end user with parallel sequential scans. The idea is to make many CPUs work on complicated WHERE conditions during a sequential scan. Version 9.6 also allowed for parallel aggregates and parallel joins. Of course, there is a lot of work left, but we are already looking at a major leap forward.
To control parallelism, there are two essential settings:
test=# SHOW max_worker_processes;
max_worker_processes
----------------------
8
(1 row)
test=# SHOW max_parallel_workers_per_gather ;
max_parallel_workers_per_gather
---------------------------------
2
(1 row)
The first one limits the overall number of worker processes available. The second one controls the number of workers allowed per gather node.
In addition to those fundamental settings, there are a couple of new optimizer parameters to adjust the cost of parallel queries.
- 智能傳感器技術與應用
- 平面設計初步
- 工業機器人產品應用實戰
- Mastering Salesforce CRM Administration
- 空間傳感器網絡復雜區域智能監測技術
- 控制系統計算機仿真
- Nginx高性能Web服務器詳解
- The Python Workshop
- PostgreSQL 10 Administration Cookbook
- Windows Server 2003系統安全管理
- Working with Linux:Quick Hacks for the Command Line
- 簡明學中文版Flash動畫制作
- Kubernetes on AWS
- Mastering Android Game Development with Unity
- 軟件需求最佳實踐