TOPサーバ構築・運用> モニタリングで利用するツール
Linux+DB2
Linux+DB2のパフォーマンスチューニング

第11回:SQLの実行状態をモニタリングせよ
著者:日本アイ・ビー・エム  中坪 宏明   2007/3/7
1   2  3  次のページ
モニタリングで利用するツール

   今回からは、SQLチューニングについて解説していきますが、まずはSQLの実行状態のモニタリングについて説明します。モニタリングの際に使うツールは、「第8回:DB2をチューニングするツール群」で解説したツールの中から以下のものを取り上げます。
  • 動的SQLスナップショット
  • アクティビティー・モニター
  • db2batchベンチマーク・ツール
  • ステートメント・イベント・モニター
  • Performance Expert

表1:モニタリングの際に用いるツール

   表1にあげたツールは、取得できる内容から次のように大きく2種類に分類できます。

確認ツール/
コマンド
確認項目 確認のポイント
動的SQLスナップショット    
アクティビティー・モニター SQLごとの実行合計
での特徴
過去の実行記録からCPU時間、ソート処理状況、バッファープールのヒット率、読み込み行数、更新行数などの合計値を確認
Performance Expert    
   
db2batch 個々のSQL実行処理の特徴 1つ1つのSQLの実行ごとに、同上の内容を確認
ステートメント・イベント・モニター    

表2:ツールの分類

   今回は、「動的SQLスナップショト」および「アクティビティー・モニター」について説明します。


動的SQLスナップショット

   DB2は動的なSQLを処理する際に、作成したアクセス・プランをパッケージ・キャッシュという内部メモリに保管します。その際に、SQLの実行状況についての様々な情報を記録し、これもパッケージ・キャッシュに保管します。動的SQLスナップショットは、パッケージ・キャッシュからそれらの情報を取り出すツールです。

   取得したい情報に応じて、あらかじめモニター・スイッチ(STATEMENT、BUFFERPOOLなど)をONにしておく必要があります。また、パッケージ・キャッシュはサイズおよびSQL数によっては、すべての情報を保管することができません。

   できるだけ多くのSQL情報を得るには、パッケージ・キャッシュ・サイズを大きくする、あるいは動的SQLスナップショットの取得頻度をあげることを検討しなければなりません。パッケージ・キャッシュがどれだけ効率的に利用されているかは、データベース・スナップショットにて、パッケージ・キャッシュ・ヒット率を計算することで確認できます。

   では実際に情報を取得してみます。情報を取得するには次のようにコマンドを入力します。

db2 "connect to データベース名"
db2 "get snapshot for dynamic sql on データベース名"

   上記のコマンドを実行すると、次のような結果があらわれます。


(画像をクリックすると別ウィンドウに拡大図を表示します)

1   2  3  次のページ


日本アイ・ビー・エム  中坪 宏明
著者プロフィール
日本アイ・ビー・エム株式会社  中坪 宏明
インフォメーション・マネジメント・テクニカル・セールス所属
DB2の技術支援(設計支援、パフォーマンス・チューニング、障害解決支援、案件サポートなど)を10年以上実施している。Linuxをはじめとして各オペレーティングシステムおよびハードウェアとの組み合わせでの機能検証および性能検証も実施している。


INDEX
第11回:SQLの実行状態をモニタリングせよ
モニタリングで利用するツール
  確認ポイントおよび対応
  標準レポート利用例(GUIのケース)