[pgsql-jp: 41252] PostgreSQLが利用するメモリの見積もりについて

和田 伸一朗 wada.shinichiro @ jp.fujitsu.com
2012年 10月 17日 (水) 19:32:51 JST


お世話になります。
和田と申します。

PostgreSQLが利用するメモリの見積もり方法についてご存知の方が
いらっしゃいましたらご教示ください。

現在、RHEL6.1にバンドルされているPostgreSQL(8.4.7)を利用しています。

カーネルが利用するリソースは
http://www.postgresql.jp/document/8.4/html/kernel-resources.html
を参考に算出したのですが、下記の2箇所はページ数からByte数に
変更されているため

・共有ディスクバッファ (block_size + 208) * shared_buffers
 ⇒ (8192 + 208) * shared_buffers(MB) * 1024 / 8(BLCKSZ)

・WALバッファ (wal_block_size + 8) * wal_buffers
 ⇒ (8192 + 8) * wal_buffers(KB) / 8(BLCKSZ)

※block_sizeは8192
と解釈すればよいでしょうか?

また、共有メモリ以外のメモリ(各プロセスが利用するメモリなど)の算出方法などは
ございますでしょうか?

http://www.postgresql.jp/document/8.4/html/runtime-config-resource.html

を参考に

(temp_buffers * max_connections) +
(maintenance_work_mem * autovacuum_max_workers) +
(work_mem * max_connections) +
α	

程度になると想定していますが、考え方に誤りや+α部分の
考慮などありましたらご教示ください。

よろしくお願い致します。


pgsql-jp メーリングリストの案内