14.1.7 ユーザログバッファ面数の拡張
ここでは,サーバ定義のadb_log_usrbuf_numオペランドの見直しによる処理性能の向上について説明します。
ユーザログバッファ面数が満杯となった場合,ユーザログバッファからユーザログファイルに,ユーザログが掃き出されます。ユーザログバッファの掃き出し時に,ユーザログファイルへのI/Oが発生するため,更新性能が低下するおそれがあります。そのため,確保するユーザログバッファ面数が適切かどうかを確認してください。
手順
-
ユーザログバッファの満杯による掃き出し回数を確認する
adbstatコマンドを実行して出力される情報のうち,次に示す情報を確認してください。
-
Log_usrbuf_out_cnt(ユーザログバッファの満杯による掃き出し回数)
- メモ
-
adbstatコマンドについては,マニュアルHADB コマンドリファレンスのadbstat(HADBサーバの統計解析)を参照してください。
-
-
adb_log_usrbuf_numオペランドの指定値を見直す
手順1.で確認したLog_usrbuf_out_cntに出力された値が1以上の場合,ユーザログバッファの掃き出しが発生しています。この場合,サーバ定義のadb_log_usrbuf_numオペランドの指定値を大きくして,ユーザログバッファ面数を拡張してください。ユーザログバッファ面数を拡張することで,更新処理時に,ユーザログバッファの満杯による掃き出しが発生しなくなります。
- 重要
-
ユーザログバッファ面数を拡張した場合,HADBサーバ開始時のプロセス共通メモリの所要量が増加します。「6.3.3 HADBサーバ開始時のメモリ所要量の求め方」の「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(h) 変数RECCTLの求め方」を参照して,再見積もりをしてください。
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadb_log_usrbuf_numオペランドの指定値を大きくしてください。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
- メモ
-
サーバ定義のadb_log_usrbuf_numオペランドについては,「7.2.3 システムログに関するオペランド(set形式)」のadb_log_usrbuf_numオペランドを参照してください。