オブジェクト・チューニング Part 2
インデックスをはった後は必ず統計情報を確認しましょう。
近頃のOracleのオプティマイザはとても賢くなったし、
最適化してくれるツールもあって、港の出番も減ってきています。
しかし、オプティマイザでも意図する実行計画を立案してくれる
訳ではないので、統計情報を取得して内容をキチンと確認する事。
インデックスも種類によっては使い過ぎちゃダメなものもあります。
例えば、ビットマップインデックス!!
このインデックスは、0,1の値をもつカラムにはると効果てき面です。
※簡単に効果が出るので、安心して使えます。(NULLにも効果あり)
でも、頻繁に更新処理がなされる場合は、要注意です。
理由は、ロックする単位がビットマップセグメント単位になるからです。
なので、処理によってインデックスを検討する事も大切なのです。
ここで、仕様がわからないからチューニングできない!って声が
聞こえますが、そんな声は、無視しましょう。
(わかろうとしないからできないのです。)
とにかく、闇雲にインデックスをはらないこと。
とにかく、データの分布を確認し、有効なインデックスを利用する。
とにかく、インデックスに頼らないDB設計をする!!
インデックスは管理者がきちんとチェックし管理する。
これでいいのだ。
近頃のOracleのオプティマイザはとても賢くなったし、
最適化してくれるツールもあって、港の出番も減ってきています。
しかし、オプティマイザでも意図する実行計画を立案してくれる
訳ではないので、統計情報を取得して内容をキチンと確認する事。
インデックスも種類によっては使い過ぎちゃダメなものもあります。
例えば、ビットマップインデックス!!
このインデックスは、0,1の値をもつカラムにはると効果てき面です。
※簡単に効果が出るので、安心して使えます。(NULLにも効果あり)
でも、頻繁に更新処理がなされる場合は、要注意です。
理由は、ロックする単位がビットマップセグメント単位になるからです。
なので、処理によってインデックスを検討する事も大切なのです。
ここで、仕様がわからないからチューニングできない!って声が
聞こえますが、そんな声は、無視しましょう。
(わかろうとしないからできないのです。)
とにかく、闇雲にインデックスをはらないこと。
とにかく、データの分布を確認し、有効なインデックスを利用する。
とにかく、インデックスに頼らないDB設計をする!!
インデックスは管理者がきちんとチェックし管理する。
これでいいのだ。
コメント