Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


13.2.2 SQL文の実行時間を短縮する方法

adbbuffオペランドの指定値を見直すことで,SQL文の実行時間を短縮できる場合があります。

adbstatコマンドで出力される情報によって,チューニング方法が異なります。

まずは,グローバルバッファの統計情報を確認して,チューニングを行ってください。そのあとで,特定のSQL文の実行時間を短縮したい場合は,SQL文の統計情報を確認して,チューニングを行ってください。

〈この項の構成〉

(1) グローバルバッファの統計情報によるSQL文の実行時間の短縮

手順

  1. グローバルバッファのヒット率を確認する

    adbstatコマンドを実行して出力される「グローバルバッファの統計情報」のうち,次に示す情報を確認してください。

    • DBbuff_page_hit_rate(グローバルバッファのページヒット率)

  2. グローバルバッファの割り当て方を見直す

    手順1.で確認したDBbuff_page_hit_rateに出力された値が50以下の場合,次の3点を見直してください。

    • グローバルバッファのページ数を大きくする

      DBエリアに割り当てるグローバルバッファのページ数が少な過ぎることが考えられます。adbbuffオペランドの-pオプションに指定した値を大きくしてください。

    • 専用のグローバルバッファを割り当てる

      複数のDBエリアに対して,1つのグローバルバッファを割り当てている場合,adbbuffオペランドで,各DBエリアに専用のグローバルバッファを割り当ててください。

    • テーブルスキャンバッファを確保する

      テーブルスキャンを実行するSQL文がある場合は,adbbuffオペランドの-vオプションを指定して,テーブルスキャンバッファを確保してください。

  3. HADBサーバを終了する

    adbstopコマンドを実行して,HADBサーバを終了してください。

  4. サーバ定義を変更する

    サーバ定義のadbbuffオペランドの指定を,手順2.で決めた方針で変更してください。

  5. HADBサーバを開始する

    adbstartコマンドを実行して,HADBサーバを開始してください。

メモ

サーバ定義のadbbuffオペランドについては,「7.2.11 グローバルバッファに関するオペランドおよびオプション(コマンド形式)」のadbbuffオペランドを参照してください。

(2) SQL文の統計情報によるSQL文の実行時間の短縮

手順

  1. グローバルバッファのヒット率を確認する

    adbstatコマンドを実行して出力される「SQL文の統計情報」のうち,次に示す情報を確認してください。

    • DBbuff_page_hit_rate(グローバルバッファのページヒット率)

  2. グローバルバッファの割り当て方を見直す

    手順1.で確認したDBbuff_page_hit_rateに出力された値が50以下の場合,次の3点を見直してください。

    • グローバルバッファのページ数を大きくする

      DBエリアに割り当てるグローバルバッファのページ数が少な過ぎることが考えられます。adbbuffオペランドの-pオプションに指定した値を大きくしてください。

    • 専用のグローバルバッファを割り当てる

      複数のDBエリアに対して,1つのグローバルバッファを割り当てている場合,「SQL文の統計情報」のDBbuff_page_request_cnt(グローバルバッファのページ要求回数)を確認してください。そして,ページ要求回数が多いDBエリアに,adbbuffオペランドで専用のグローバルバッファを割り当ててください。

    • テーブルスキャンバッファを確保する

      テーブルスキャンを実行するSQL文がある場合は,adbbuffオペランドの-vオプションを指定して,テーブルスキャンバッファを確保してください。

  3. HADBサーバを終了する

    adbstopコマンドを実行して,HADBサーバを終了してください。

  4. サーバ定義を変更する

    サーバ定義のadbbuffオペランドの指定を,手順2.で決めた方針で変更してください。

  5. HADBサーバを開始する

    adbstartコマンドを実行して,HADBサーバを開始してください。

メモ

サーバ定義のadbbuffオペランドについては,「7.2.11 グローバルバッファに関するオペランドおよびオプション(コマンド形式)」のadbbuffオペランドを参照してください。