6.13.2 コマンドの実行時に使用する処理リアルスレッド数に関する考慮点
- 〈この項の構成〉
(1) コマンドの実行時に使用する処理リアルスレッド数の最大値
「表6-18 コマンドの実行時に使用する処理リアルスレッド数を指定するオペランドとコマンドオプションの一覧」に記載しているコマンドを実行する場合,次の計算式で求める「コマンドの実行時に使用する処理リアルスレッド数」が確保できるようにしてください。
- 計算式
コマンドの実行時に使用する処理リアルスレッド数の最大値= SYS_RTHD_NUM − AP_USE_RTHD_NUM複数のコマンドを同時実行する場合,同時実行するすべてのコマンドで必要な処理リアルスレッド数の合計値となります。
変数の説明
- SYS_RTHD_NUM
-
サーバ定義adb_sys_rthd_numオペランドの指定値
adb_sys_rthd_numオペランドには,SQL文およびコマンドの処理を行う際に使用する処理リアルスレッド数の最大値を指定します。adb_sys_rthd_numオペランドについては,「7.6.2(2) 性能に関するオペランド(set形式)」のadb_sys_rthd_numオペランドを参照してください。
- AP_USE_RTHD_NUM
-
APの実行時に使用する処理リアルスレッド数の合計
APの実行時に使用する処理リアルスレッド数については,次に示すオペランドを参照してください。
-
サーバ定義adb_sql_exe_max_rthd_numオペランド
「7.6.2(2) 性能に関するオペランド(set形式)」のadb_sql_exe_max_rthd_numオペランドを参照してください。
-
クライアント定義adb_sql_exe_max_rthd_numオペランド
マニュアル「HADB AP開発ガイド」の「HADBクライアントの環境設定」の「クライアント定義の作成」の「クライアント定義のオペランドの説明」を参照してください。
-
(2) コマンドの実行時に使用する処理リアルスレッド数を指定するオペランドとコマンドオプション
コマンドの実行時に使用する処理リアルスレッド数は,次の表に示すオペランドおよびコマンドオプションで指定できます。
|
項番 |
コマンド名 |
オペランド名 |
コマンドオプション名 |
|---|---|---|---|
|
1 |
adbarchivechunkコマンド |
サーバ定義adb_cmd_rthd_numオペランド |
次に示すアーカイブチャンクオプション
|
|
2 |
adbexportコマンド |
次に示すエクスポートオプション
|
|
|
3 |
adbgetcstコマンド |
次に示すコスト情報収集オプション
|
|
|
4 |
adbidxrebuildコマンド |
次に示すインデクス再作成オプション
|
|
|
5 |
adbimportコマンド |
次に示すインポートオプション
|
|
|
6 |
adbmergechunkコマンド |
次に示すマージチャンクオプション
|
|
|
7 |
adbunarchivechunkコマンド |
次に示すアンアーカイブチャンクオプション
|
|
|
8 |
adbsqlコマンド |
|
なし |
adb_cmd_rthd_numオペランドには,コマンドの実行時にHADBサーバが使用する処理リアルスレッド数の仮定値(デフォルト値)を指定します。adb_cmd_rthd_numオペランドとコマンドオプションの指定は,コマンドオプションの指定が優先されます。
コマンドを同時実行する場合,「6.13.2(1) コマンドの実行時に使用する処理リアルスレッド数の最大値」で求めたコマンドの実行時に使用する処理リアルスレッド数の最大値を超えると,処理リアルスレッドの確保待ちが発生するおそれがあります。発生した場合,ほかのコマンドやAPが終了して必要な処理リアルスレッド数を確保したあとに,コマンドの処理を続行します。
そのため,表6-18で説明したコマンドを同時実行する場合,表6-18で説明したオペランドおよびコマンドオプションで,適切な処理リアルスレッド数を指定するようにしてください。
- 参考
-
処理リアルスレッドの確保待ち状態になったコマンドについては,adbls -d cnctコマンドで確認できます。adbls -d cnctコマンドについては,マニュアル「HADB コマンドリファレンス」の「adbls -d cnct(コネクションの状態表示)」を参照してください。
(3) コマンドを同時実行するときの処理リアルスレッド数の目安
コマンドの実行時に使用する処理リアルスレッド数を適切に見積もらないと,コマンドの実行性能に影響を及ぼします。処理リアルスレッド数の目安を次に示します。
-
コマンドの同時実行数が少ない期間
「6.13.2(1) コマンドの実行時に使用する処理リアルスレッド数の最大値」で求めたコマンドの実行時に使用する処理リアルスレッド数の最大値の8割程度を使用するようにしてください。
-
コマンドの同時実行数が多い期間
コマンドの同時実行時,処理リアルスレッドの確保待ちが発生しても,運用上問題とならないように,処理リアルスレッド数を使用するようにしてください。
(4) 注意事項
表6-18で説明したオペランドおよびコマンドオプションを省略した場合,システムで使用できる処理リアルスレッド数を最大限使用するように自動計算されます。最初に実行したコマンドが処理リアルスレッド数を多く使用するため,ほかのコマンドを同時に実行すると,処理リアルスレッドの確保待ちが発生するおそれがあります。
表6-18に示すコマンドを同時に実行する場合は,処理リアルスレッドの確保待ちが発生しないようにするために,adb_cmd_rthd_numオペランドに1以上を指定してください。または,コマンドオプションを指定してください。
adb_cmd_rthd_numオペランドの指定値の目安については,「7.6.2(7) コマンドに関するオペランド(set形式)」のadb_cmd_rthd_numオペランドを参照してください。