的Postgres 9.6並行查詢不走; Centos 6.7; 24芯的Postgres 9.6:max_parallel_workers_per_gather設置
BigTable1含有15億行;重量180GB。
max_worker_processes = 20
max_parallel_workers_per_gather = 12
1) 當運行
EXPLAIN
SELECT
date_id, id1, id2, id3, id4, topdomain, ftype, SUM(imps), SUM(cls)
FROM BigTable1
WHERE
date_id BETWEEN 2017021200 AND 2017022400
AND date_id BETWEEN 2017020000 AND 2017029999
GROUP BY
date_id, id1, id2, id3, id4, topdomain, ftype;
無「工人計劃:」在所有使用。爲什麼?
2) 當運行相同的查詢時在會話中定義
set max_parallel_workers_per_gather = 5;
「工人計劃:5」出現。執行時間僅提高了25%。
2.1)爲什麼「工人計劃:」只出現在這之後設置? 2.2)爲什麼我們在用max_parallel_workers_per_gather = 5運行時看不到更好的改進?
謝謝!
什麼樣的你有硬件嗎?多少個驅動器?什麼類型的驅動器?你的驅動器速度有多快?那麼RAM呢?等等。 –