[pgsql-jp: 26077] Re: 7.2 の vacuum
Tsunehisa Kazawa
kazawa @ sons.co.jp
2002年 5月 22日 (水) 18:38:37 JST
加澤です。
Tatsuo Ishii wrote:
> なるほど.ということは,仮に合計15GBとして,15*1024*1024*1024/8192 = 1966080
> ページですね.余裕を見て2000000位にmax_fsm_pagesを設定する必要がありそ
> うです.
とりあえず max_fsm_pages の値を 2621440 (切りのいいところで :-D) と
して backend を restart し、しばらく様子を見てみたいと思います。
この、15Gbytes という数字は、デフォルト設定で full でない vacuum を
毎日行い、それが2週間経って肥大化してしまった後のもので、その後 7.1
時代のログを調べてみると、daily の vacuum でだいたい 3Gbytes 程度の
領域が開放されていたようです。つまり、毎日生じるゴミ領域のサイズはだ
いたい 3Gbytes くらいである、と言えると思います (その時は DB 全体の
サイズはだいたい 12Gbytes 程度でした)。
この max_fsm_pages のサイズは、物理的なテーブル全体のサイズによるの
でしょうか?それとも、物理的なファイルに含まれる、日々 update や delete
によって生まれるゴミ領域のサイズによるのでしょうか。
> 問題はテーブルの物理的なサイズです.他のテーブルが,問題になっているテー
> ブルと比べて無視できるほど小さければ良いのですが,そうでなければもっと
> max_fsm_pageを増やす必要があります.
今現在全 table を合わせて物理的なファイルのサイズは 20Gbytes ほど
(今朝 5Gbytes あった table を vacuum full したところ 270Mbytes く
らいになりました。もう一つの肥大化した table を vacuum full してい
たところで時間切れとなり、処理を停止したためそちらはそのままです) で
すから、とりあえず上記設定で様子を見て、間に合わないようでしたら vacuum
回数を増やすようにしていきたいと思います。
新井さんお薦めの定期的な vacuum full の実行は、daily では運用上難し
いため、monthly に行われるシステムを停止させてのメンテナンス時に行う
ようにしたいと思います。ご助言感謝します。
結果は後日お知らせいたします。本当にありがとうございます。
--
加澤恒央
Tsunehisa KAZAWA
kazawa @ sons.co.jp
SONS,. Ltd. Programmer
pgsql-jp メーリングリストの案内