von der Anzahl der Kerne abhängig oder wie wären die Sinnvolle Werte bei 8 Kerne CPU?
Mit der Anzahl der Kerne kann ich mir zwar nicht ganz vorstellen, denn laut Doku ist der Standardwert “8” bei den ersten beide. Wenn man also weniger Kerne hätte, wäre es auch ggf. Suboptimal. Somit denke ich eher - etwas anders spielt da eine Rolle wie man die Werte setzen soll. Aber was entweder verstehe ich es nicht, oder die Dokumentation schweigt darüber (OK es gibt noch die Möglichkeit, dass es da steht und ich sehe es nicht oder den Zusammenhang nicht erkenne)
workload, also wie stark sind die Abfragen parallel ausführbar?
Tabellengrößen
Es gibt auch grundlegende Unterschiede der Nutzung:
postgres=# select name, short_desc from pg_settings where name in ('max_parallel_workers','max_parallel_maintenance_workers');
name | short_desc
----------------------------------+-----------------------------------------------------------------------------
max_parallel_maintenance_workers | Sets the maximum number of parallel processes per maintenance operation.
max_parallel_workers | Sets the maximum number of parallel workers that can be active at one time.
(2 rows)
Die max_parallel_workers sollten nicht höher sein als die tatsächlichen Cores. Andererseits ist es auch so, daß ein Prozess auf Daten aus dem Speicher wartet - damit könnten auch wieder mehr als reine Cores da sind gleichzeitig laufen.