Japan
サイト内の現在位置
PostgreSQL
周辺OSSツール紹介
pg_repack 機能概要
pg_repack は 肥大化したテーブルやインデックスを再編成し、さらに指定したインデックスに従ってレコードを並び替えることができるツールです。
PostgreSQLは追記型のアーキテクチャを採用しているため、UPDATEやDELETEを実行すると、変更(削除)前データは物理ファイル上に残り続けます。
この不要領域が増加することで、性能劣化を引き起こす要因となりえます。
そのような場合には CLUSTER コマンドやVACUUM FULL コマンドを使ってテーブルの再編成をすることができますが、このコマンドは最も排他的なロックがかかるためサービス中の適用判断が難しいという課題がありました。
pg_repackは排他的なロックを瞬間的にしか取得しないため、サービス提供中の実行が可能です。※
- ※サービスの処理特性によっては、瞬間的な排他ロック取得であっても動作に影響が出る可能性もございますので、サービス提供中に実行する場合は、十分に検証を行った上で実行をご検討ください。

お問い合わせ