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