[pgsql-jp: 38135] Re: COPYによるデータ取り込みでの警告(?)メッセージ

YuGo yu.gotou @ gtec-ni.com
2007年 3月 14日 (水) 10:56:24 JST


こんにちは、千葉さん。
#vacuum verbose
とやって出るメッセージの最後のあたりpage slots are requiredの数値はいく
つですか。
現在max_fsm_pages = 30000にしたら警告は出ませんか。


> Norio Suzuki wrote:
>> 問題になるのは、ページサイズがこの値を超えていると VACUUM を実行しても
>> ゴミ掃除をしてくれないことです。
> 
> max_fsm_pages とページサイズ、取り込むデータとの関係が
> イマイチ把握出来ていません。
> 
>> どのくらいデータが大きくなりそうかを見積もって max_fsm_pages のサイズを
>> 決めるのがより良いとは思います。
> 
> 取り込むデータサイズは
> % ls -l
> -rwxr--r--    1 postgres postgres  7961723 Mar  7 12:56 data1.csv
> -rwxr--r--    1 postgres postgres  8608347 Mar  7 13:01 data2.csv
> -rwxr--r--    1 postgres postgres 12207823 Mar  7 12:59 data3.csv
> % wc -l ./*.csv
>   10842 ./data1.csv
>    9992 ./data2.csv
>   12724 ./data3.csv
> となっていて、毎回大きな変動はありません。
> 
> これらのデータを同一データベース内のそれぞれのデーブルに対し
> truncate table tbl1;
> truncate table tbl2;
> truncate table tbl3;
> copy tbl1 from 'data1.csv' delimiters ',' null as '';
> copy tbl2 from 'data2.csv' delimiters ',' null as '';
> copy tbl3 from 'data3.csv' delimiters ',' null as '';
> のように毎月1回処理をしていますが、VACUUMはその都度実行していません。
> 
> これらによって、max_fsm_pagesをどの程度の値にするのが良いのでしょうか。
> 



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