Hud*_*nPH 6 postgresql postgresql-10
有4种配置可以启用并行并进行优化,但PostgreSQL 的文档没有说明有关值或计算的任何信息.我的问题是:
1 -如何计算的值
max_parallel_workers,max_parallel_workers_per_gather和max_worker_processes?2-
work_mem可以根据连接和内存(RAM)计算,但是work_mem如果启用并行,需要改变一些东西吗?
我的假设是:如果机器有8个核心the max_parallel_workers是8并且工作进程和每个聚集的值是32(8*4),那么我从原始配置中获得的数字4是每1个并行工作4个收集.
经过一番搜索,我找到了一些答案,这可以帮助想要启用并拥有基本配置的人,如果您有 4 个内核(CPU):
您的最大工作进程将是核心数量,而最大并行需要具有相同数量:
max_worker_processes = 4
max_parallel_workers = 4
Run Code Online (Sandbox Code Playgroud)
收集更复杂,因为可以根据您的需要和资源操作此值,有必要进行测试以获得最佳值,但对于启动值,您可以使用 cores/2。
max_parallel_workers_per_gather = 2
Run Code Online (Sandbox Code Playgroud)
这不是最终答案,有一些遗漏点......我仍在搜索和更新这个答案或等待更好的答案。