[pgsql-jp: 30262] Re: VACUUMされない?
sugita @ sra.co.jp
sugita @ sra.co.jp
2003年 6月 29日 (日) 14:57:57 JST
杉田です。
From: 小野 心 <shin-ono @ mdsnet.co.jp>
Subject: [pgsql-jp: 30261] Re: VACUUMされない?
Date: Sun, 29 Jun 2003 14:32:43 +0900
;;; 作業ごとにディレクトリーのサイズを測定したところを以下となりました。
;;;
;;; +--------------------------+------------------------+------------------------+
;;; | | du -sk $PGDATA | du -sk $PGDATA/pg_xlog |
;;; +--------------------------+------------------------+------------------------+
;;; | テスト開始前 | 861,456Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;; | データ書き込み後 | 1,418,004Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;; | データ削除後 | 1,418,004Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;; | VACUME後 | 1,417,820Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;; | テーブル削除後 | 861,500Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;; | テーブル削除後のVACUME後 | 861,500Kbyte | 114,832Kbyte |
;;; +--------------------------+------------------------+------------------------+
;;;
;;; 結果としては、$PGDATA/pg_xlogの変化は無い様です。
ランダムな内容のテキストでなく同じ内容のテキストです。データ削除後の VACUUM
でほぼ元に戻りました。
==== DROP TABLE、VACUUM 後 ====
psql -c "DROP TABLE StatementTest"
DROP TABLE
vacuumdb -f -a
Vacuuming sugita
VACUUM
Vacuuming template1
VACUUM
du -sk $PGDATA
125556 /opt/pgsql/7.3.3/data
du $PGDATA/pg_xlog
114688 /opt/pgsql/7.3.3/data/pg_xlog
==== CREATE TABLE、2KB の文字列を 20 万投入 (ランダムな内容ではない) ====
psql -c 'CREATE TABLE StatementTest ( data character( 2048 ))'
CREATE TABLE
psql -c "INSERT INTO StatementTest SELECT rpad('a', 2000, 'b') FROM (SELECT iterate (200000)) AS i"
INSERT 0 200000
du -sk $PGDATA
139792 /opt/pgsql/7.3.3/data
du $PGDATA/pg_xlog
114688 /opt/pgsql/7.3.3/data/pg_xlog
===== DELETE 後 ====
psql -c 'DELETE FROM StatementTest'
DELETE 200000
du -sk $PGDATA
139792 /opt/pgsql/7.3.3/data
du $PGDATA/pg_xlog
114688 /opt/pgsql/7.3.3/data/pg_xlog
==== VACUUM 後 ====
vacuumdb -f -a
Vacuuming sugita
VACUUM
Vacuuming template1
VACUUM
du -sk $PGDATA
125564 /opt/pgsql/7.3.3/data
du $PGDATA/pg_xlog
114688 /opt/pgsql/7.3.3/data/pg_xlog
Kenji Sugita
pgsql-jp メーリングリストの案内