第7回:Oracle RACのパフォーマンスチューニング (2/3)

最大限の可用性とスケーラビリティを実現する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サイズ・アドバイス
最大限の可用性とスケーラビリティを実現するOracle RAC
第1回 Linux上で利用するOracle RACのメリット
第2回 押さえておくべき基本設定
第3回 Oracle Clusterwareのインストール
第4回 Oracle Clusterwareインストール後の設定と確認
第5回 Oracleソフトウェアのインストールと設定
第6回 サーバダウン時のOracle RACの可用性
第7回 Oracle RACのパフォーマンスチューニング
第8回 Oracle RACコンポーネントの管理
第9回 Oracle RACのノード追加手順
第10回 Oracle RACの拡張機能と更なる進化

人気記事トップ10

人気記事ランキングをもっと見る