新しいチューニング方法を試してみよう

EnterpriseZine / 2013年2月19日 0時0分

最初の2回で、最適な実行計画を作成するためには、どのような情報を「与える」必要があるか、ということを説明しました。次の2回では、どのような性能試験を実施すれば、アップグレードをきっかけに性能が劣化した処理を確認することができるか、ということを説明しました。最終回の今回は、性能が劣化したSQLを効率良くチューニングする、新しいチューニング方法をお伝えします。

■新しいチューニング方法とは?

 性能試験をしてみたら、性能が劣化したSQLがあった!

 そんな時、皆さんはどのようにチューニングを行なっていますか?

 アップグレード前は、NESTED LOOPで動いていたのに、アップグレード後は、HASH JOINで動いているから、ヒント句で固めてみようかな…

 というように、ヒント句を埋め込むことにより、チューニングをしている人が多いと思います。

 しかし、数十個の表を結合しているような複雑なSQL文では、実行計画のステップ数が数百にも及ぶため、ヒント句をつけて試行錯誤してみても、なかなかアップグレード前の実行計画に戻せない!ということもあると思います。

 そのような時は、Oracle Database 11gR1 から登場した、SQL Plan Management(SPM)を使用することをお勧めします。

 SPMとは、オプティマイザが作成したSQL文の実行計画を内部的なヒント句として登録し、管理することが出来る機能です。

 SPMを使用することで、アップグレード前の実行計画を、新しい環境でも使用するように設定することが可能になります。

大村奈緒[著]

EnterpriseZine

トピックスRSS

ランキング