14.4.2 グローバルバッファの見直しによるメモリ使用量の削減
使用していないグローバルバッファの割り当てを解除したり,グローバルバッファに指定したページ数を見直したりすることで,HADBサーバが使用するメモリ量を削減できます。
(1) 使用していないグローバルバッファの割り当て解除
ここでは,レンジインデクス専用のグローバルバッファ,およびテーブルスキャンバッファを割り当てている場合のチューニング方法を次に示します。
■adbbuffオペランドに-aオプションを指定している場合
-
レンジインデクスバッファのページ要求回数を確認する
adbstatコマンドを実行して出力される「グローバルバッファの統計情報」のうち,次に示す情報に出力された値が0かどうかを確認してください。
-
DBbuff_page_rng_request_cnt(レンジインデクスバッファのページ要求回数)
DBbuff_page_rng_request_cntに出力される値が0の場合,レンジインデクスが定義されていない,またはレンジインデクスを使用しないDBエリアにレンジインデクス専用のグローバルバッファを割り当てているおそれがあります。
この場合は,adbbuffオペランドの-aオプションを削除してください。HADBサーバが使用するメモリ量を削減できます。
-
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadbbuffオペランドの-aオプションを削除してください。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
■adbbuffオペランドに-vオプションを指定している場合
-
テーブルスキャンバッファのページ要求回数を確認する
adbstatコマンドを実行して出力される「グローバルバッファの統計情報」のうち,次に示す情報に出力された値が0かどうかを確認してください。
-
DBbuff_tblscan_request_cnt(テーブルスキャンバッファのページ要求回数)
DBbuff_tblscan_request_cntに出力される値が0の場合,テーブルスキャンを実行するSQL文を実行しないDBエリアにテーブルスキャンバッファを割り当てているおそれがあります。
この場合は,adbbuffオペランドの-vオプションを削除してください。HADBサーバが使用するメモリ量を削減できます。
-
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadbbuffオペランドの-vオプションを削除してください。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
- メモ
-
サーバ定義のadbbuffオペランドについては,「7.2.17 グローバルバッファに関するオペランドおよびオプション(コマンド形式)」のadbbuffオペランドを参照してください。
(2) グローバルバッファに指定したページ数の見直し
ここでは,グローバルバッファに指定したページ数が多過ぎる場合のチューニング方法を次に示します。
■adbbuffオペランドに-pオプションを指定している場合
-
グローバルバッファ面数を確認する
adbstatコマンドを実行して出力される「グローバルバッファの統計情報」のうち,次に示す2つの情報に出力された値を確認してください。
-
DBbuff_page_use_cnt(割り当て済みのグローバルバッファ面数)
-
DBbuff_page_num(総グローバルバッファ面数)
DBbuff_page_use_cntに出力された値が,DBbuff_page_numに出力された値よりも小さい場合,adbbuffオペランドの-pオプションに指定した値が大き過ぎるおそれがあります。該当する場合は,手順2.に進んでください。
-
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadbbuffオペランドの-pオプションの指定値を,次の計算式で求めた値に変更してください。HADBサーバが使用するメモリ量を削減できます。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
■adbbuffオペランドに-aオプションを指定している場合
-
レンジインデクスバッファ面数を確認する
adbstatコマンドを実行して出力される「グローバルバッファの統計情報」のうち,次に示す2つの情報に出力された値を確認してください。
-
DBbuff_page_rng_use_cnt(割り当て済みのレンジインデクスバッファ面数)
-
DBbuff_page_rng_num(総レンジインデクスバッファ面数)
DBbuff_page_rng_use_cntに出力された値が,DBbuff_page_rng_numに出力された値よりも小さい場合,adbbuffオペランドの-aオプションに指定した値が大き過ぎるおそれがあります。該当する場合は,手順2.に進んでください。
-
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadbbuffオペランドの-aオプションの指定値を,次の計算式で求めた値に変更してください。HADBサーバが使用するメモリ量を削減できます。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
- メモ
-
サーバ定義のadbbuffオペランドについては,「7.2.17 グローバルバッファに関するオペランドおよびオプション(コマンド形式)」のadbbuffオペランドを参照してください。