[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 メーリングリストの案内