Hitachi

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


13.4.2 グローバルバッファの見直しによるメモリ使用量の削減

使用していないグローバルバッファの割り当てを解除したり,グローバルバッファに指定したページ数を見直したりすることで,HADBサーバが使用するメモリ量を削減できます。

〈この項の構成〉

(1) 使用していないグローバルバッファの割り当て解除

ここでは,レンジインデクス専用のグローバルバッファ,およびテーブルスキャンバッファを割り当てている場合のチューニング方法を次に示します。

adbbuffオペランドに-aオプションを指定している場合

  1. レンジインデクスバッファのページ要求回数を確認する

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

    • DBbuff_page_rng_request_cnt(レンジインデクスバッファのページ要求回数)

    DBbuff_page_rng_request_cntに出力される値が0の場合,レンジインデクスが定義されていない,またはレンジインデクスを使用しないDBエリアにレンジインデクス専用のグローバルバッファを割り当てているおそれがあります。

    この場合は,adbbuffオペランドの-aオプションを削除してください。HADBサーバが使用するメモリ量を削減できます。

  2. HADBサーバを終了する

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

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

    サーバ定義のadbbuffオペランドの-aオプションを削除してください。

  4. HADBサーバを開始する

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

adbbuffオペランドに-vオプションを指定している場合

  1. テーブルスキャンバッファのページ要求回数を確認する

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

    • DBbuff_tblscan_request_cnt(テーブルスキャンバッファのページ要求回数)

    DBbuff_tblscan_request_cntに出力される値が0の場合,テーブルスキャンを実行するSQL文を実行しないDBエリアにテーブルスキャンバッファを割り当てているおそれがあります。

    この場合は,adbbuffオペランドの-vオプションを削除してください。HADBサーバが使用するメモリ量を削減できます。

  2. HADBサーバを終了する

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

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

    サーバ定義のadbbuffオペランドの-vオプションを削除してください。

  4. HADBサーバを開始する

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

メモ

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

(2) グローバルバッファに指定したページ数の見直し

ここでは,グローバルバッファに指定したページ数が多過ぎる場合のチューニング方法を次に示します。

adbbuffオペランドに-pオプションを指定している場合

  1. グローバルバッファ面数を確認する

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

    • DBbuff_page_use_cnt(割り当て済みのグローバルバッファ面数)

    • DBbuff_page_num(総グローバルバッファ面数)

    DBbuff_page_use_cntに出力された値が,DBbuff_page_numに出力された値よりも小さい場合,adbbuffオペランドの-pオプションに指定した値が大き過ぎるおそれがあります。該当する場合は,手順2.に進んでください。

  2. HADBサーバを終了する

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

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

    サーバ定義のadbbuffオペランドの-pオプションの指定値を,次の計算式で求めた値に変更してください。HADBサーバが使用するメモリ量を削減できます。

    [図データ]

  4. HADBサーバを開始する

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

adbbuffオペランドに-aオプションを指定している場合

  1. レンジインデクスバッファ面数を確認する

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

    • DBbuff_page_rng_use_cnt(割り当て済みのレンジインデクスバッファ面数)

    • DBbuff_page_rng_num(総レンジインデクスバッファ面数)

    DBbuff_page_rng_use_cntに出力された値が,DBbuff_page_rng_numに出力された値よりも小さい場合,adbbuffオペランドの-aオプションに指定した値が大き過ぎるおそれがあります。該当する場合は,手順2.に進んでください。

  2. HADBサーバを終了する

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

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

    サーバ定義のadbbuffオペランドの-aオプションの指定値を,次の計算式で求めた値に変更してください。HADBサーバが使用するメモリ量を削減できます。

    [図データ]

  4. HADBサーバを開始する

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

メモ

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