[pgsql-jp: 41774] DB肥大化について

小沢 和也 (Kazuya Ozawa) ozawa @ nippa.co.jp
2015年 2月 9日 (月) 19:41:49 JST


お世話になります。小澤と申します。

Posgresの9.3を使っていますが、
データベースのテーブルの肥大化について
以下の対策を行っています。

① AUTO VACUUM
② テーブルにFILL FACTORを指定(90に設定)
③ テーブル指定のVACUUMとANALYZEを実行
④ インデックスの再構築(新規作成・コピー・リネーム)
⑤ ③④を毎日実行

海外の客先で、Posgres 8.0を使っているところが
ありますが、バージョンアップを推奨しても、
リスクを恐れてなかなかバージョンアップに
踏み切ってもらえません。そこで、バージョンを変えずに
肥大化を防ごうと、パッチでも作って当ててもらうかとお
思ったのですが、①~④のほとんどが8.0には
ない機能のようです。

VACUUMとANALYZEだけだと、インデックスの肥大化が
防げず、VACUUM FULLやREINDEXはDBへのアクセスを
ブロックしてしまうので、一旦実行すると、どのくらいで
抜けてくるのかがわからず、迂闊に実行できません。

8.0でDBをブロックせずに最適化をかけ、肥大化を
防止する方法はありますでしょうか。

どこかのファイルを削除して再起動すれば良い、
みたいな方法でもかまいません。

解決策をご存知の方、ご教授お願いいたします。

Windows 7/8/2008Server/2012Server

小澤 和也 



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