pg_reorg は PostgreSQL のテーブルを再編成するシェルコマンドです。 共有ロックや排他ロックを取得しないため、再編成中であっても行の参照や更新を行うことができます。 このモジュールは CLUSTER や VACUUM FULL コマンドのより良い代替になります。
pg_reorgの実行時間について検証結果を以下のグラフに示します。同じレコード数のテーブルに対して、断片化が発生していない場合と、断片化が発生して容量が2倍程度に肥大化している場合について複数回計測を行い、実行時間の平均値をグラフにしています。
大項目 | 小項目 | 環境 |
---|---|---|
ハードウェア | CPU | Xeon E5645 2.4GHz (12 core) * 2 |
メモリ | 32GB | |
HDD | SAS 10,000rpm 2TB * 4 | |
ソフトウェア | OS | RHEL 6.2 (64bit) |
DB | PostgreSQL 9.3.4 | |
pg_reorg | 1.1.10 | |
データ | スキーマ |
|