14.1.5 SQL文の実行待ち状態の発生防止
ここでは,サーバ定義のadb_sys_rthd_numオペランドに指定した処理リアルスレッド数の見直しによる処理性能の向上について説明します。
指定した処理リアルスレッド数が少ない場合,SQL文の実行待ち状態が発生することがあります。SQL文の実行待ち状態が発生すると,SQL文の処理に時間が掛かるおそれがあるため,指定した処理リアルスレッド数が適切かどうかを確認してください。
手順
-
SQL文の実行待ち状態を確認する
adbstatコマンドを実行して出力される「HADBサーバの統計情報」のうち,次に示す情報を確認してください。
-
SQL_execute_wait_total_time(SQL文の実行待ち状態の合計時間)
-
SQL_execute_wait_cnt(SQL文の実行待ち状態の発生回数)
SQL_execute_wait_total_timeおよびSQL_execute_wait_cntに出力された値が,どちらも0でない場合,SQL文の実行待ち状態が発生しています。この場合,adb_sys_rthd_numオペランドの指定値を大きくすることで,SQL文の実行待ち状態が発生しなくなり,処理性能が向上することがあります。
-
-
HADBサーバを終了する
adbstopコマンドを実行して,HADBサーバを終了してください。
-
サーバ定義を変更する
サーバ定義のadb_sys_rthd_numオペランドの指定値を大きくして,HADBサーバが使用する処理リアルスレッド数を多くしてください。
- 重要
-
adb_sys_rthd_numオペランドの指定値を変更した場合,必ずHADBサーバのメモリ所要量を再見積もりしてください。HADBサーバのメモリ所要量の見積もりについては,「6.3 HADBサーバのメモリ所要量の見積もり」を参照してください。
-
HADBサーバを開始する
adbstartコマンドを実行して,HADBサーバを開始してください。
- メモ
-
サーバ定義のadb_sys_rthd_numオペランドについては,「7.2.2 性能に関するオペランド(set形式)」のadb_sys_rthd_numオペランドを参照してください。