IT用語集 › データベース › work_mem

work_mem

データベース Svenska → 更新: 2026-10-23

1回のソートやハッシュテーブルがディスクへ溢れる前に使えるメモリ量。PostgreSQLで最も誤解されている設定である。

よくある誤解は、この上限がクエリごと、あるいは接続ごとだというものだ。実際には演算ごとに適用される。ソート3回とハッシュ結合2回を含むクエリは設定値の5倍を使いうるし、並列ワーカーならさらに倍になる。既定の4MBを超えるソートはディスク上の外部マージに切り替わり、EXPLAIN ANALYZEにexternal merge Diskと出て、桁違いに遅くなることがある。そこで全体の値を大きく上げたくなるが、同時接続が100本もあるとカーネルのOOMキラーに仕留められる定番の道筋になる。全体では低く保ち、必要なクエリだけセッション単位で上げるのがよい。

← 用語集に戻る