2.20.2 サーバ定義のオペランドとの関係
HADBサーバが使用する各種メモリや領域のサイズを,サーバ定義のオペランドで指定します。ここでは,HADBサーバが使用するメモリとサーバ定義のオペランドの関係を説明します。
HADBサーバが使用するメモリの最大値をサーバ定義で指定する際,次に示すどちらかの方法があります。HADBでは,1の方法で指定することを推奨します。
-
HADBサーバが使用するメモリ所要量の最大値(共有メモリとプロセスメモリの合計値の上限)をadb_sys_memory_limitオペランドに指定する
-
プロセス共通メモリの最大値をadb_sys_proc_area_maxオペランドに指定し,リアルスレッド固有メモリの最大値をadb_sys_rthd_area_maxオペランドに指定する
上記のそれぞれの方法ごとに,HADBサーバが使用するメモリとサーバ定義のオペランドの関係を説明します。
- 〈この項の構成〉
(1) 1の方法の場合(adb_sys_memory_limitオペランドを指定する場合)
HADBサーバが使用するメモリとサーバ定義のオペランドの関係を次の図に示します。
- 注
-
上記の図のサーバ定義のオペランドの数値は例です。見積もった値を指定してください。
- 注※
-
マルチノード機能を使用する場合は,リアルスレッド固有メモリが次の計算式の分だけ確保されます。
-
ワーカーノードを使用しない場合
adb_sys_max_usersオペランドの値 +セカンダリノード数×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +15
-
ワーカーノードを使用する場合
-
プライマリノードまたはセカンダリノードの場合
adb_sys_max_usersオペランドの値 +(セカンダリノード数+adb_sys_multi_max_worker_nodesオペランドの値) ×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +15
-
ワーカーノードの場合
adb_sys_max_usersオペランドの値 +セカンダリノード数×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +adb_sys_multi_max_worker_nodesオペランドの値 ×adb_sys_max_parallel_exec_numオペランドの値×2 +17
-
-
- 重要
-
HADBサーバが使用するメモリ所要量の最大値(共有メモリとプロセスメモリの合計値の上限)をサーバ定義のadb_sys_memory_limitオペランドに指定します。
上記の図中の各メモリや領域とサーバ定義の関係を次の表に示します。
メモリまたは領域の種類 |
関係するサーバ定義のオペランド |
見積もり方法の記載個所 |
HADBサーバの稼働中にメモリの使用量を確認する方法 |
||
---|---|---|---|---|---|
共有メモリ |
プロセス共通メモリ |
− |
-aオプションを指定してadbls -d memコマンド※2を実行したときに出力されるPROCESS_USEの値で確認できます。 |
||
共有メモリ管理用のメモリ |
− |
-aオプションを指定してadbls -d memコマンド※2を実行したときに出力されるOTHER_USEの値で確認できます。 |
|||
グローバルバッファ用のメモリ |
|
-aオプションを指定してadbls -d memコマンド※2を実行したときに出力されるGBUFFER_USEの値で確認できます。 |
|||
リアルスレッド固有メモリ |
− |
|
-aオプションを指定してadbls -d memコマンド※2を実行したときに出力されるTHREAD_USEの値で確認できます。 |
||
ハッシュグループ化領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashgrp_area_sizeオペランド |
|||
ハッシュテーブル領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashtbl_area_sizeオペランド |
|||
ハッシュフィルタ領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashflt_area_sizeオペランド |
|||
ローカル作業表用バッファ |
|
||||
プロセスメモリ |
ヒープメモリ |
− |
-aオプションを指定してadbls -d memコマンド※2を実行したときに出力されるHEAP_USEの値で確認できます。 |
- (凡例)
-
−:該当なし
- 注※1
-
クライアント定義の同じオペランドで,サーバ定義で指定した値を変更できます。
- 注※2
-
-aオプションを指定して実行したadbls -d memコマンドの出力項目については,マニュアルHADB コマンドリファレンスのadbls -d mem(メモリの使用状況の表示)を参照してください。
- メモ
-
HADBサーバが使用するメモリ所要量の見積もり方法については,次の個所を参照してください。
(2) 2の方法の場合(adb_sys_proc_area_maxおよびadb_sys_rthd_area_maxオペランドを指定する場合)
HADBサーバが使用するメモリとサーバ定義のオペランドの関係を次の図に示します。
- 注
-
上記の図のサーバ定義のオペランドの数値は例です。見積もった値を指定してください。
- 注※
-
マルチノード機能を使用する場合は,リアルスレッド固有メモリが次の計算式の分だけ確保されます。
-
ワーカーノードを使用しない場合
adb_sys_max_usersオペランドの値 +セカンダリノード数×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +15
-
ワーカーノードを使用する場合
-
プライマリノードまたはセカンダリノードの場合
adb_sys_max_usersオペランドの値 +(セカンダリノード数+adb_sys_multi_max_worker_nodesオペランドの値) ×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +15
-
ワーカーノードの場合
adb_sys_max_usersオペランドの値 +セカンダリノード数×(adb_sys_max_parallel_exec_numオペランドの値×2+2) +adb_sys_multi_max_worker_nodesオペランドの値 ×adb_sys_max_parallel_exec_numオペランドの値×2 +17
-
-
上記の図中の各メモリや領域とサーバ定義の関係を次の表に示します。
メモリまたは領域の種類 |
関係するサーバ定義のオペランド |
見積もり方法の記載個所 |
HADBサーバの稼働中にメモリの使用量を確認する方法 |
||
---|---|---|---|---|---|
共有メモリ |
プロセス共通メモリ※1 |
|
-aオプションを指定してadbls -d memコマンド※3を実行したときに出力されるPROCESS_USEの値で確認できます。 |
||
共有メモリ管理用のメモリ |
− |
-aオプションを指定してadbls -d memコマンド※3を実行したときに出力されるOTHER_USEの値で確認できます。 |
|||
グローバルバッファ用のメモリ |
|
-aオプションを指定してadbls -d memコマンド※3を実行したときに出力されるGBUFFER_USEの値で確認できます。 |
|||
リアルスレッド固有メモリ※1 |
− |
|
-aオプションを指定してadbls -d memコマンド※3を実行したときに出力されるTHREAD_USEの値で確認できます。 |
||
ハッシュグループ化領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashgrp_area_sizeオペランド |
|||
ハッシュテーブル領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashtbl_area_sizeオペランド |
|||
ハッシュフィルタ領域 |
|
「7.2.2 性能に関するオペランド(set形式)」のadb_sql_exe_hashflt_area_sizeオペランド |
|||
ローカル作業表用バッファ |
|
||||
プロセスメモリ |
ヒープメモリ |
− |
-aオプションを指定してadbls -d memコマンド※3を実行したときに出力されるHEAP_USEの値で確認できます。 |
- (凡例)
-
−:該当なし
- 注※1
-
「(1) 1の方法の場合(adb_sys_memory_limitオペランドを指定する場合)」と差異がある個所です。
HADBサーバが使用するメモリ所要量の最大値を指定するadb_sys_memory_limitオペランドを指定しない場合,プロセス共通メモリの最大値(adb_sys_proc_area_maxオペランド)と,1つ当たりのリアルスレッド固有メモリの最大値(adb_sys_rthd_area_maxオペランド)を指定する必要があります。
- 注※2
-
クライアント定義の同じオペランドで,サーバ定義で指定した値を変更できます。
- 注※3
-
-aオプションを指定して実行したadbls -d memコマンドの出力項目については,マニュアルHADB コマンドリファレンスのadbls -d mem(メモリの使用状況の表示)を参照してください。
- メモ
-
HADBサーバが使用するメモリ所要量の見積もり方法については,次の個所を参照してください。