[過去記事 元:2004-02-03 11:27:01]
OracleではテーブルにMONITORING属性をつけ監視モードにすることが出来る(CREATE、ALTERどちらでも可)。
では、監視モードとは何だろうか。
テーブルを監視モードにすると、そのテーブルに対する変更行をUSER_TAB_MODIFICATIONSに集計する(ただし集計は変更直後ではなく遅延処理)。
DBMS_STATSでは、OPTIONSパラメータに'GATHER STALE'と指定した場合(非デフォルト)にUSER_TAB_MODIFICATIONSを調べ、10%以上変更しているものは統計情報の再取得をする。
定期的に処理すれば、個々のテーブルを調査することなく、実データと乖離してきた統計情報を取得できる。
このOPTIONSが指定できるのは、DBMS_STATS.GATHER_SCHEMA_STATSかDBMS_STATS.GATHER_DATABASE_STATSのみ。
後日談
AUTO_SAMPLE_SIZEと同じく誘導率の高かったキーワード。
コメントする