TOPサーバ構築・運用> SQLチューニング・アドバイザ
最大限の可用性とスケーラビリティを実現するOracle RAC
最大限の可用性とスケーラビリティを実現するOracle RAC

第7回:Oracle RACのパフォーマンスチューニング
著者:日立システムアンドサービス  竹村 浩二   2006/10/13
前のページ  1  2   3  次のページ
SQLチューニング・アドバイザ

   SQLチューニング・アドバイザは、オブジェクトの統計値を収集できるほか、新しい索引の作成やSQL文の構造変更など、SQLチューニングにおける全般的なアドバイスをしてくれるツールです。

   例として、作為的に次のSQLを発行してみました。
SELECT /*+ USE_NL(emp dept) */ * FROM emp, dept
WHERE emp.deptno = dept.deptno
AND dept.deptno = 20 ;

   この状況でSQLチューニング・アドバイザを実行すると、次の図のようにネステッド・ループ結合よりも、ハッシュ結合が推奨されていることがわかります。

SQLチューニング・アドバイザの推奨提示画面例
図1:SQLチューニング・アドバイザの推奨提示画面例
(画像をクリックすると別ウィンドウに拡大図を表示します)


SQLアクセス・アドバイザ

   SQLアクセス・アドバイザは、ワークロードのSQL文を評価し、ワークロード全体のパフォーマンスを向上させる索引やマテリアライズド・ビュー、マテリアライズド・ビュー・ログを提案してくれるツールです。

   前述のSQLチューニング・アドバイザもSQLアクセス・アドバイザと同様に「索引を作成したらどうか」というアドバイスを出力する機能を備えています。しかし、SQLチューニング・アドバイザでは「同時にSQLアクセス・アドバイザも実行することが望ましい(preferable)」という補足が付いています。

   つまり、索引を作成した場合の効果を判断するという点においては、SQLアクセス・アドバイザのほうがSQLチューニング・アドバイザより専門家ということになります。

   例として、次のSQLを発行してみましょう。

SELECT * FROM EMP WHERE EMPNO = 500000 ;

   emp表のempno列には索引は存在しないので、この状態でSQLアクセス・アドバイザを実行すると、図2のように、索引を作成することが推奨されるているとわかります。

SQLアクセス・アドバイザの推奨提示画面例
図2:SQLアクセス・アドバイザの推奨提示画面例
(画像をクリックすると別ウィンドウに拡大図を表示します)

前のページ  1  2   3  次のページ


日立システムアンドサービス 竹村 浩二氏
著者プロフィール
株式会社日立システムアンドサービス
オープンソリューション本部
プロフェッショナルサービス部   竹村 浩二

日立システムに転職し、8年目。Oracle Databaseの設計/構築/移行/技術支援などに携わっている。Oracle RACを使った高い信頼性と高可用性を備えたデータベース構築も手がける。2004年には、新資格でのORACLE MASTER Platinum Oracle9i Databaseを国内第一号にて取得したほか、本年、同Oracle Database 10g を同じく国内第一号にて取得している。


INDEX
第7回:Oracle RACのパフォーマンスチューニング
  はじめに
SQLチューニング・アドバイザ
  SGAサイズ・アドバイス