6.3.3 HADBサーバ開始時のメモリ所要量の求め方
adbstartコマンドでHADBサーバを開始する場合,HADBサーバは次に示すメモリを使用します。各メモリの所要量を求めてください。
- ■共有メモリ
-
-
共有メモリ管理
-
グローバルバッファページ
-
プロセス共通メモリ
-
リアルスレッド固有メモリ
-
- ■プロセスメモリ
-
-
ヒープメモリ
-
それぞれのメモリ所要量の計算式を次に示します。
- 〈この項の構成〉
(1) 共有メモリ管理の所要量の求め方(HADBサーバ開始時)
HADBサーバ開始時の共有メモリ管理(SHMMAN)の所要量は,次に示す計算式から求めてください。
計算式(単位:キロバイト)
SHMMAN= 245,150+1,232×(rthd_num+max_users+10+multi_num+worker_num+cloud_num) +(3,207×max_users)+SHM_LSGBUF+SHM_LSLBUF
変数の説明
- rthd_num
-
サーバ定義adb_sys_rthd_numオペランドの指定値
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- multi_num
-
次に示す計算式から求めてください。
計算式
- worker_num
-
サーバ定義adb_sys_multi_max_worker_nodesオペランドの指定値×2
- cloud_num
-
-
クラウドストレージ機能を使用する場合
1を代入してください。
-
クラウドストレージ機能を使用しない場合
0を代入してください。
-
- SHM_LSGBUF
-
adbls -d gbufコマンドの表示内容が格納される共有メモリ
次に示す値を代入してください。
値(単位:キロバイト)
SHM_LSGBUF= 337
- SHM_LSLBUF
-
adbls -d lbufコマンドの表示内容が格納される共有メモリ
次に示す値を代入してください。
値(単位:キロバイト)
SHM_LSLBUF= 33
(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)
HADBサーバ開始時のグローバルバッファページ(SHM_BUFGLOBAL)の所要量は,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- MSTPAGES:マスタディレクトリ用DBエリアのページ
-
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
RTHNUM:「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- WRKPAGES:作業表用DBエリアのページ
-
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
WRKPAGES= (wrk_page_num+1)×wrk_page_size
-
wrk_page_num
サーバ定義adb_dbbuff_wrktbl_glb_blk_numオペランドの指定値
-
wrk_page_size
「表6‒3 DBエリアのページサイズ」の作業表用DBエリアのページサイズを参照して,バイト単位で求めてください。
-
- Σ(BUFPAGES+SCANPAGES):指定したすべてのadbbuffオペランドについて,BUFPAGESとSCANPAGESを計算した結果の合計値
-
この合計値には次に示すadbbuffオペランドも含まれます。
-
-oオプションを指定したadbbuffオペランド
-
-nオプションおよび-oオプションを指定しなかったadbbuffオペランド
それぞれの詳細について説明します。
- -oオプションを指定したadbbuffオペランド
-
-oオプションを指定した場合,adbbuffオペランドの-nオプションに指定しなかったDBエリアはページサイズごとに分類されて自動的にadbbuffオペランドが定義されます。それを踏まえて,BUFPAGESを求めてください。例を次に示します。
- 例:次に示す4つのDBエリアを-nオプションで指定しなかった場合
-
■対象のDBエリア
-
ADBDIC,ADBSTBL,ADBUTBL01,ADBUTBL02(ページサイズ:4キロバイト)
-
ADBUTBL03(ページサイズ:32キロバイト)
■サーバ定義の指定例
adbbuff -g SAMPLEBUF -o -p 100
この場合,4つのDBエリアはページサイズごとに分類されて自動的に定義されます。-oオプションを指定したadbbuffオペランドに各オプション(-p,-a)を指定した場合,オプションの指定値も自動的に定義されます。
■自動的に定義された例
adbbuff -g SAMPLEBUF#0000004096 -n ADBDIC, ADBSTBL, ADBUTBL01, ADBUTBL02 -p 100 adbbuff -g SAMPLEBUF#0000032768 -n ADBUTBL03 -p 100
注 下線部分は自動的に定義されたときに追加されたグローバルバッファ名です。
-
- -nオプションおよび-oオプションを指定しなかったadbbuffオペランド
-
adbbuffオペランドの-nオプションに指定しなかったDBエリアがあり,-oオプションも指定しなかった場合,-oオプションを指定したときと同じように,DBエリアはページサイズごとに分類されて自動的にadbbuffオペランドが定義されます。それを踏まえて,BUFPAGESを求めてください。例を次に示します。
- 例:次に示す4つのDBエリアを-nオプションに指定しないで,-oオプションも指定しなかった場合
-
■対象のDBエリア
-
ADBDIC,ADBSTBL,ADBUTBL01,ADBUTBL02(ページサイズ:4キロバイト)
-
ADBUTBL03(ページサイズ:32キロバイト)
■サーバ定義の指定例
-
指定なし
この場合,4つのDBエリアはページサイズごとに分類されて自動的に定義されます。-pオプションを省略した場合に仮定される値が定義されます。
■自動的に定義された例
adbbuff -g ##ADBOTHER#0000004096 -n ADBDIC, ADBSTBL, ADBUTBL01, ADBUTBL02 adbbuff -g ##ADBOTHER#0000032768 -n ADBUTBL03
注 下線部分は自動的に定義されたグローバルバッファ名です。
-
-
- BUFPAGES:ページ領域
-
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
BUFPAGES= (GLBPAGES+OPTTYPES)×page_size
- GLBPAGES:
-
サーバ定義adbbuffオペランドの各オプション(-p,-a)の指定値の合計値
- OPTTYPES:
-
サーバ定義adbbuffオペランドの各オプション(-p,-a)の指定数
すべてのオプションを省略した場合,OPTTYPESは1としてください。例えば,次に示す指定例の場合,-pおよび-aの2つのオプションが指定されているため,OPTTYPESは2となります。
指定例
adbbuff -g SAMPLEBUF -n ADBUTBL01 -p 10 -a 10
- page_size:
-
サーバ定義adbbuffオペランドの-nオプションに指定したDBエリアのページサイズ(単位:バイト)
「表6‒3 DBエリアのページサイズ」のデータ用DBエリアのページサイズを参照して求めてください。
- SCANPAGES:テーブルスキャンページ
-
次に示す計算式から求めてください。ただし,サーバ定義adbbuffオペランドの-vオプション,および-kオプションを省略した場合,SCANPAGESに0を代入してください。
- 計算式(単位:バイト)
-
SCANPAGES= SCANBLOCKS × 4,194,304
- SCANBLOCKS:
-
テーブルスキャンバッファのブロック数
次に示す計算式から求めてください。
- adbbuff_opt_v:
-
サーバ定義adbbuffオペランドの-vオプションのテーブルスキャンバッファに使用するメモリサイズの指定値
サーバ定義adbbuffオペランドの-kオプションを指定した場合は次の計算式から求めてください。
adbbuffオペランドの-kオプションの指定値 × 4
- page_size:
-
サーバ定義adbbuffオペランドの-nオプションに指定したDBエリアのページサイズ(単位:バイト)
「表6‒3 DBエリアのページサイズ」のデータ用DBエリアのページサイズを参照して求めてください。
表6‒3 DBエリアのページサイズ 項番
DBエリアの種類
ページサイズ(単位:バイト)
1
マスタディレクトリ用DBエリア
4,096
2
ディクショナリ用DBエリア
3
システム表用DBエリア
4
作業表用DBエリア
↑work_page_size÷32↑×32×1,024
work_page_sizeには次の値を指定してください。
- サーバ定義にadb_dbarea_wrk_page_sizeオペランドを指定している場合
-
サーバ定義のadb_dbarea_wrk_page_sizeオペランドの指定値
- サーバ定義にadb_dbarea_wrk_page_sizeオペランドを指定していない場合
-
adbinitコマンドの初期設定オプションのadb_init_wrk_page_sizeオペランドの指定値
5
データ用DBエリア
- 対象のDBエリアをadbinitコマンドで作成した場合
-
次に示す計算式から求めてください。
初期設定オプションadbinitdbareaに指定した -pオプションの指定値×1,024
- 対象のDBエリアをadbmodareaコマンドで作成した場合
-
次に示す計算式から求めてください。
DBエリア追加・変更オプションadbaddareaに指定した -pオプションの指定値×1,024
- メモ
-
データベースを構築していれば,次に示すコマンドでDBエリアのページサイズを調べることもできます。
- 作業表用DBエリアの場合
-
-
adbls -d gbufコマンドで,グローバルバッファの情報を取得する
-
adbls -d lbufコマンドで,ローカル作業表用バッファの情報を取得する
-
- データ用DBエリアの場合
-
-
adbdbstatus -d summary -c dbareaコマンドで,DBエリアのサマリ情報を取得する
-
adbls -d gbufコマンドで,グローバルバッファの情報を取得する
-
- rthd_num:
-
サーバ定義adb_sys_rthd_numオペランドの指定値
(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)
HADBサーバ開始時のプロセス共通メモリ(PROC_STARTSZ)の所要量は,次の計算式から求めてください。
計算式(単位:キロバイト)
PROC_STARTSZ = SCI+RPCS+DICS+BUFGLOBAL+BUFENCRYPTION+DBAREAINF+DBSYSINF +RECCTL+DBUPDINFMNG+RNGPREREADINF+RNGPREREADHANDLE+MODA +PROC_CNCTSZ+LSINF+DBHTRC+LSTCMNINF+LSTRTHDINF+CLDSTGINF +PROC_STAINF+SYNDICTINF+AUDINF+CLMNZ+CHACINF
- 変数の説明
-
-
SCI
システム管理制御情報
「(a) 変数SCIの求め方」を参照してください。
-
RPCS
通信サービス管理情報
「(b) 変数RPCSの求め方」を参照してください。
-
DICS
ディクショナリ表,およびシステム表の検索用領域
「(c) 変数DICSの求め方」を参照してください。
-
BUFGLOBAL
グローバルバッファ
「(d) 変数BUFGLOBALの求め方」を参照してください。
-
BUFENCRYPTION
DBエリア暗号化機能領域
「(e) 変数BUFENCRYPTIONの求め方」を参照してください。
-
DBAREAINF
DBエリア情報
「(f) 変数DBAREAINFの求め方」を参照してください。
-
DBSYSINF
HADBサーバ起動用システム情報
「(g) 変数DBSYSINFの求め方」を参照してください。
-
RECCTL
回復制御領域
「(h) 変数RECCTLの求め方」を参照してください。
-
DBUPDINFMNG
DBエリア,表,インデクス,およびチャンク更新情報管理領域
「(i) 変数DBUPDINFMNGの求め方」を参照してください。
-
RNGPREREADINF
レンジインデクスの先読み
「(j) 変数RNGPREREADINFの求め方」を参照してください。
-
RNGPREREADHANDLE
レンジインデクス先読み開始処理
「(k) 変数RNGPREREADHANDLEの求め方」を参照してください。
-
MODA
DBエリア変更制御情報
「(l) 変数MODAの求め方」を参照してください。
-
PROC_CNCTSZ
データベース接続時
「6.3.4 通常運用時のメモリ所要量の求め方」の「(1) プロセス共通メモリの所要量の求め方(通常運用時)」の「(a) 変数PROC_CNCTSZの求め方」を参照してください。
-
LSINF
adblsコマンドの管理情報
「(m) 変数LSINFの求め方」を参照してください。
-
DBHTRC
バッファ,ディスクI/O,HADBサーバ間通信トレース,および作業表の状態遷移トレースで使用する格納領域
「(n) 変数DBHTRCの求め方」を参照してください。
-
LSTCMNINF
作業表の共通管理情報
「(o) 変数LSTCMNINFの求め方」を参照してください。
-
LSTRTHDINF
ローカル作業表の管理情報
「(p) 変数LSTRTHDINFの求め方」を参照してください。
-
CLDSTGINF
クラウドストレージ機能の管理情報
「(q) 変数CLDSTGINFの求め方」を参照してください。
-
PROC_STAINF
統計情報の制御情報
「(r) 変数PROC_STAINFの求め方」を参照してください。
-
SYNDICTINF
同義語辞書へのアクセス情報
「(s) 変数SYNDICTINFの求め方」を参照してください。
-
AUDINF
監査証跡の管理情報
「(t) 変数AUDINFの求め方」を参照してください。
-
CLMNZ
更新行のカラム化機能を有効にする場合に必要なメモリ
「(u) 変数CLMNZの求め方」を参照してください。
-
CHACINF
チャンクへのアクセス情報
「(v) 変数CHACINFの求め方」を参照してください。
-
(a) 変数SCIの求め方
変数SCIは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
SCI=↑(35,168+CON+RTH+UTH+TRN+DEF+MLT※1+CGR※2+CMI※3+CLD※4)÷1,024↑
- 注※1
-
マルチノード機能を使用する場合に加算してください。
- 注※2
-
クライアントグループ機能を使用する場合に加算してください。
- 注※3
-
クライアント定義の集中管理機能を使用する場合に加算してください。
- 注※4
-
クラウドストレージ機能を使用する場合に加算してください。
変数の説明
- CON:コネクション制御情報
-
次に示す計算式から求めてください。
計算式(単位:バイト)
CON=11,008×max_users
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- RTH:リアルスレッド制御情報
-
次に示す計算式から求めてください。
計算式(単位:バイト)
RTH= RTHNUM×1,776
- RTHNUM:総リアルスレッド数
-
計算式
RTHNUM= 7+rthd_num+CTHNUM+MLTNUM※+cloud_num
- 注※
-
マルチノード機能を使用する場合に加算してください。
- rthd_num
-
サーバ定義adb_sys_rthd_numオペランドの指定値
- CTHNUM:コネクションスレッド数
-
計算式
CTHNUM= 3+max_users
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- MLTNUM:マルチノード機能専用スレッド数
-
マルチノード機能を使用する場合に求めてください。
計算式
MLTNUM=(multi_node_num+worker_node_num)×2+3
- multi_node_num
-
サーバ定義adb_sys_multi_node_infoオペランドに指定したホスト名の数
- worker_node_num
-
サーバ定義adb_sys_multi_max_worker_nodesオペランドの指定値
- cloud_num
-
-
クラウドストレージ機能を使用する場合
1を代入してください。
-
クラウドストレージ機能を使用しない場合
0を代入してください。
-
- UTH:擬似リアルスレッド制御情報
-
次に示す計算式から求めてください。
計算式(単位:バイト)
UTH=UTHNUM×RTHNUM×1,776
- UTHNUM:総擬似スレッド数
-
計算式
UTHNUM= 2+uthd_num
uthd_num:サーバ定義adb_sys_uthd_numオペランドの指定値
- RTHNUM
-
変数RTHの変数RTHNUMを参照してください。
- TRN:トランザクション管理情報
-
次に示す計算式から求めてください。
計算式(単位:バイト)
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- DEF:定義解析結果情報
-
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
DEF= 3,701+475×dbbuff_defnum
dbbuff_defnum:サーバ定義に指定されたadbbuffオペランドの数
- MLT:マルチノード制御情報
-
マルチノード機能を使用する場合に求めてください。
計算式(単位:バイト)
MLT=23,616 +{23,184+792×RTHNUM +(RNGPREREADINF×1,024+BUFDEF+BUFINT+200+40×cltgrp_num+105,528※1)※2 }×(multi_node_num+worker_node_num)
- 注※1
-
クラウドストレージ機能を使用する場合に加算してください。
- 注※2
-
サーバ定義adb_sys_max_parallel_exec_numオペランドに1以上が指定された場合に加算してください。
- RTHNUM
-
変数RTHの変数RTHNUMを参照してください。
- RNGPREREADINF
-
「(j) 変数RNGPREREADINFの求め方」を参照してください。
- BUFDEF
-
「(d) 変数BUFGLOBALの求め方」の変数BUFDEFを参照してください。
- BUFINT
-
「(d) 変数BUFGLOBALの求め方」の変数BUFINTを参照してください。
- cltgrp_num
-
サーバ定義adbcltgrpオペランドに指定したクライアントグループの数
- multi_node_num
-
サーバ定義adb_sys_multi_node_infoオペランドに指定したホスト名の数
- worker_node_num
-
サーバ定義adb_sys_multi_max_worker_nodesオペランドの指定値
- CGR:クライアントグループ制御情報
-
クライアントグループ機能を使用する場合に求めてください。
計算式(単位:バイト)
- cltgrp_num
-
サーバ定義adbcltgrpオペランドに指定したクライアントグループの数
- CMI:クライアント定義の集中管理情報
-
クライアント定義の集中管理機能を使用する場合に求めてください。
計算式(単位:バイト)
CMI=(↑(50,384+768×(cltmng_num-1))÷32↑×32+64)+224×authid_num
- cltmng_num
-
クライアント管理定義ファイルに指定された,クライアント管理定義のadbclientmangオペランドの総数
- authid_num
-
クライアント管理定義のadbclientmangオペランドに指定された,認可識別子の総数
- CLD:クラウドストレージ機能の制御情報
-
クラウドストレージ機能を使用する場合に次の値を代入してください。
値(単位:バイト)
CLD=360
(b) 変数RPCSの求め方
変数RPCSは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- CTHNUM
-
「(a) 変数SCIの求め方」の変数CTHNUMを参照してください。
- MLTNUM
-
「(a) 変数SCIの求め方」の変数MLTNUMを参照してください。
- ipv4_num
-
自ノードの有効なIPv4アドレスの数(単位:個)
(c) 変数DICSの求め方
変数DICSは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
DICS= tbldef_cache_size + 84
- 変数の説明
-
tbldef_cache_size:サーバ定義adb_sql_tbldef_cache_sizeオペランドの指定値
(d) 変数BUFGLOBALの求め方
変数BUFGLOBALは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
- 注※
-
マルチノード機能を使用する場合に加算してください。
変数の説明
- BUFDEF:adbbuffオペランド解析
-
次に示す計算式から求めてください。
計算式(単位:バイト)
BUFDEF= 3,640+608×BUFOPE_NUM
- BUFOPE_NUM:サーバ定義adbbuffオペランドの定義数
-
この合計値には次に示すadbbuffオペランドも含まれます。
-
-oオプションを指定したadbbuffオペランド
-
-nオプションおよび-oオプションを指定しなかったadbbuffオペランド
-
それぞれの詳細について説明します。
- -oオプションを指定したadbbuffオペランド
-
-oオプションを指定した場合,adbbuffオペランドの-nオプションに指定しなかったDBエリアはページサイズごとに分類されて自動的にadbbuffオペランドが定義されます。それを踏まえて,BUFOPE_NUMを求めてください。例を次に示します。
- 例:次に示す4つのDBエリアを-nオプションで指定しなかった場合
-
■対象のDBエリア
-
ADBDIC,ADBSTBL,ADBUTBL01,ADBUTBL02(ページサイズ:4キロバイト)
-
ADBUTBL03(ページサイズ:32キロバイト)
■サーバ定義の指定例
adbbuff -g SAMPLEBUF -o
この場合,4つのDBエリアはページサイズごとに分類されて自動的に定義されます。そのため,BUFOPE_NUMは2となります。
■自動的に定義された例
adbbuff -g SAMPLEBUF#0000004096 -n ADBDIC, ADBSTBL, ADBUTBL01, ADBUTBL02 adbbuff -g SAMPLEBUF#0000032768 -n ADBUTBL03
注 下線部分は自動的に定義されたときに追加されたグローバルバッファ名です。
-
- -nオプションおよび-oオプションを指定しなかったadbbuffオペランド
-
adbbuffオペランドの-nオプションに指定しなかったDBエリアがあり,-oオプションも指定しなかった場合,-oオプションを指定したときと同じように,DBエリアはページサイズごとに分類されて自動的にadbbuffオペランドが定義されます。それを踏まえて,BUFOPE_NUMを求めてください。例を次に示します。
- 例:DBエリア(ADBDIC,ADBSTBL)を-nオプションに指定しないで,-oオプションも指定しなかった場合
-
■対象のDBエリア
-
ADBDIC,ADBUTBL01,ADBUTBL02(ページサイズ:4キロバイト)
-
ADBUTBL03(ページサイズ:32キロバイト)
■サーバ定義の指定例
adbbuff -g SAMPLEBUF01 -n ADBUTBL01, ADBUTBL02 adbbuff -g SAMPLEBUF02 -n ADBUTBL03
この場合,指定されていないADBDICおよびADBSTBLは自動的に定義されます。そのため,BUFOPE_NUMは指定した2つと合わせて4となります。
■自動的に定義された例
adbbuff -g ##ADBOTHER#0000004096 -n ADBDIC, ADBSTBL
注 下線部分は自動的に定義されたグローバルバッファ名です。
-
- BUFCTL:グローバルバッファ管理領域
-
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
- ΣOPTTYPES:各adbbuffオペランドに指定したオプション(-p,-a)の指定数の合計値
-
この合計値には次に示すadbbuffオペランドも含まれます。
-
-oオプションを指定したadbbuffオペランド
-
-nオプションおよび-oオプションを指定しなかったadbbuffオペランド
詳細については,「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」の変数Σ(BUFPAGES+SCANPAGES)を参照してください。
オプションの指定数の求め方について,例を次に示します。
-
- 例
-
adbbuffオペランドを次に示すとおりに定義した場合,ADBDICおよびADBSTBLへの自動定義を含め,オプションの指定数は合計5(1+2+1+1)となります。
■サーバ定義の指定例
adbbuff -g SAMPLEBUF1 -n ADBUTBL01 -p 100 adbbuff -g SAMPLEBUF2 -n ADBUTBL02 -p 100 -a 100 adbbuff -g SAMPLEBUF3 -n ADBUTBL03※
注※ -pオプションが仮定されます。
■自動的に定義された例
adbbuff -g ##ADBOTHER#0000004096 -n ADBDIC, ADBSTBL※
注 下線部分は自動的に定義されたグローバルバッファ名です。
注※ -pオプションが仮定されます。
- DBAREA_NUM:
-
DBエリアの総数
- BUFOPT_V_NUM:
-
-vオプション,または-kオプションが指定されているadbbuffオペランドの定義数
- RTHNUM:
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- BUFINT:多重初期化用一時領域
-
次に示す計算式から求めてください。
計算式(単位:バイト)
BUFINT= 480+80×ΣBUFWRK_NUM+8×rthd_num+INITQUE
- rthd_num:
-
サーバ定義adb_sys_rthd_numオペランドの指定値
- INITQUE:初期化処理待ちキュー
-
次に示す計算式から求めてください。
計算式(単位:バイト)
INITQUE= 80×RTHNUM×RTHNUM+632×RTHNUM+960+64×ΣBUFWRK_NUM
RTHNUM:「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- ΣBUFWRK_NUM:adbbuffオペランドごとに計算した変数BUFWRK_NUMの合計値
-
この合計値には次に示すadbbuffオペランドも含まれます。
-
-oオプションを指定したadbbuffオペランド
-
-nオプションおよび-oオプションを指定しなかったadbbuffオペランド
詳細については,「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」の変数Σ(BUFPAGES+SCANPAGES)を参照してください。
-
- BUFWRK_NUM:次に示す計算式から求めてください。
-
計算式(単位:個)
- OPTTYPES:
-
「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」の変数OPTTYPESを参照してください。
- adbbuff_opt_p:
-
adbbuffオペランドの-pオプションの指定値
- adbbuff_opt_a:
-
adbbuffオペランドの-aオプションの指定値
- BUFOPT_V:adbbuffオペランドの-vオプション,または-kオプションの指定有無
-
-vオプション,または-kオプションが指定されている場合は1,それ以外の場合は0を代入してください。
- SCAN_INIT:テーブルスキャンバッファのマルチ初期化用領域
-
adbbuffオペランドの-vオプション,または-kオプションが指定されている場合は,サーバ定義adb_sys_rthd_numオペランドの指定値を代入してください。-vオプション,および-kオプションが指定されていない場合は0を代入してください。
- BUFPGE:ページ管理領域
-
次に示す計算式から求めてください。
計算式(単位:バイト)
BUFPGE= ΣTYPEBUF+MSTBUF+WRKBUF
- ΣTYPEBUF:各adbbuffオペランドに指定したオプション(-p,-a)ごとに求めた変数TYPEBUFの合計値
-
この合計値には次に示すadbbuffオペランドも含まれます。
-
-oオプションを指定したadbbuffオペランド
-
-nオプションおよび-oオプションを指定しなかったadbbuffオペランド
詳細については,「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」の変数Σ(BUFPAGES+SCANPAGES)を参照してください。
-
- TYPEBUF:次に示す計算式から求めてください。
-
計算式(単位:バイト)
TYPEBUF= GCLBUF(page_num)+BUFMEM(page_num)
- page_num:
-
サーバ定義adbbuffオペランドに指定した各オプション(-p,-a)のどれかの指定値
- GCLBUF:次に示す計算式から求めてください。
-
計算式(単位:バイト)
GCLBUF(X)= 192×RTHNUM+192+X×(176+BUFLOG)
- RTHNUM:
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- X:
-
対象となるページ数
- BUFLOG:ログ領域
-
次に示す計算式から求めてください。
計算式(単位:バイト)
BUFLOG= ↓(((16+((RTHNUM−6)÷8+1))+15)÷16)↓×16
- BUFMEM:次に示す計算式から求めてください。
-
計算式(単位:バイト)
BUFMEM(X)= 480×RTHNUM×RTHNUM+(584+24×UTHNUM)×RTHNUM +(352+16×RTHNUM)×HASHTBL_NUM+80×X+24×UTHNUM+368
- RTHNUM:
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- UTHNUM:
-
「(a) 変数SCIの求め方」の変数UTHNUMを参照してください。
- X:
-
対象となるページ数
- HASHTBL_NUM:次に示す計算式から求めてください。
-
計算式
HASHTBL_NUM= X÷4
- MSTBUF:次に示す計算式から求めてください。
-
計算式(単位:バイト)
MSTBUF= RTHNUM×2
- RTHNUM:
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
- WRKBUF:
-
サーバ定義adb_dbbuff_wrktbl_glb_blk_numオペランドの指定値
- BUFTBL:テーブルスキャンバッファ
-
次に示す計算式から求めてください。
計算式(単位:バイト)
BUFTBL= ΣSCANBUF
- ΣSCANBUF:各adbbuffオペランドに指定したテーブルスキャン用一括読み込みバッファの数
-
adbbuffオペランドに指定した-vオプション,または-kオプションごとに計算した変数SCANBUFの合計値になります。
- SCANBUF:次に示す計算式から求めてください。
-
計算式(単位:バイト)
なお,-vオプション,および-kオプションを指定しなかったadbbuffオペランドについては,SCANBUFを0としてください。
-
SCANBLOCKS
テーブルスキャンバッファのブロック数
「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」の変数SCANBLOCKSを参照して求めてください。
-
page_size
-vオプション,または-kオプションを指定したadbbuffオペランドの-nオプションに指定したDBエリアのページサイズ(単位:バイト)
「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」にある「表6‒3 DBエリアのページサイズ」を参照して求めてください。
-
rthd_num
サーバ定義adb_sys_rthd_numオペランドの指定値
-
- BUFUPDLISTCTL
-
ノード間更新リスト管理領域
次に示す値を代入してください。
値(単位:バイト)
(e) 変数BUFENCRYPTIONの求め方
変数BUFENCRYPTIONは,次に示す計算式から求めてください。サーバ定義adb_crypto_dmkey_pathオペランドを指定しているときに加算してください。
計算式(単位:キロバイト)
BUFENCRYPTION= rthd_num × 32
- 変数の説明
-
rthd_num:サーバ定義adb_sys_rthd_numオペランドの指定値
(f) 変数DBAREAINFの求め方
変数DBAREAINFは,次に示す計算式から求めてください。
- 計算式(単位:キロバイト)
-
- 変数の説明
-
- dbarea_num
-
すべてのDBエリア数
- dbarea_file_num
-
すべてのDBエリアファイル数
- cloud_storage_coefficient
-
クラウドストレージ機能を使用している場合は64を,クラウドストレージ機能を使用していない場合は1を代入してください。
- table_num
-
ユーザが定義した実表の総数
- column_table_num
-
ユーザが定義したカラムストア表の実表の総数
- index_num
-
ユーザが定義したインデクスの総数
- SEGSIZE
-
DBエリアファイルを定義したDBエリアのセグメントサイズ(単位:ページ数)
次に示す計算式から求めてください。クラウドストレージ機能を使用する場合は,1,024になります。
SEGSIZE= 1セグメントの容量(単位:バイト)÷page_size
-
page_size
DBエリアファイルを定義したDBエリアのページサイズ(単位:バイト)
「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」にある「表6‒3 DBエリアのページサイズ」を参照して求めてください。
-
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- rthd_num
-
サーバ定義adb_sys_rthd_numオペランドの指定値
(g) 変数DBSYSINFの求め方
変数DBSYSINFには,次に示す値を代入してください。
- 値(単位:キロバイト)
-
DBSYSINF= 1,308
(h) 変数RECCTLの求め方
変数RECCTLは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
RECCTL = 2,177 +(65+64×log_usrbuf_num×log_usrbuf_crypto)×(log_usrfile_num) +max_users
- 変数の説明
-
log_usrbuf_num:サーバ定義adb_log_usrbuf_numオペランドの指定値
log_usrbuf_crypto:サーバ定義adb_crypto_dmkey_pathオペランドを指定してない場合は1を,サーバ定義adb_crypto_dmkey_pathオペランドを指定している場合は2を代入してください。
log_usrfile_num:サーバ定義adb_log_usrfile_numオペランドの指定値
max_users:サーバ定義adb_sys_max_usersオペランドの指定値
(i) 変数DBUPDINFMNGの求め方
変数DBUPDINFMNGには,次に示す値を代入してください。
なお,マルチノード機能を使用するかどうかで,値が異なります。
値(単位:キロバイト)
|
(j) 変数RNGPREREADINFの求め方
変数RNGPREREADINFは,次に示す計算式から求めてください。サーバ定義adb_sql_rngidx_prereadオペランドに指定した項目によって計算式が異なります。
なお,adb_sql_rngidx_prereadオペランドにNOを指定した場合は,変数RNGPREREADINFは0になります。
- ■adb_sql_rngidx_prereadオペランドにALLを指定した場合
-
計算式(単位:キロバイト)
- 変数の説明
-
uthd_num:サーバ定義adb_sys_uthd_numオペランドの指定値
- ■adb_sql_rngidx_prereadオペランドにレンジインデクス名を指定した場合
-
計算式(単位:キロバイト)
- 変数の説明
-
preread_rng_num:adb_sql_rngidx_prereadオペランドに指定したレンジインデクス名の数
uthd_num:サーバ定義adb_sys_uthd_numオペランドの指定値
(k) 変数RNGPREREADHANDLEの求め方
変数RNGPREREADHANDLEは,次に示す値を代入してください。
- 値(単位:キロバイト)
-
RNGPREREADHANDLE= 1
(l) 変数MODAの求め方
変数MODAは,次に示す計算式から求めてください。
- 計算式(単位:キロバイト)
-
MODA= 9,216+262,144※+↑wrk_page_size÷1,024↑
- 注※
-
クラウドストレージ機能を使用する場合に加算してください。
変数の説明
- wrk_page_size
-
作業表用DBエリアのページサイズ(単位:バイト)
「(2) グローバルバッファページの所要量の求め方(HADBサーバ開始時)」にある「表6‒3 DBエリアのページサイズ」を参照して求めてください。
(m) 変数LSINFの求め方
変数LSINFは,次に示す値を代入してください。
- 値(単位:キロバイト)
-
LSINF= 1
(n) 変数DBHTRCの求め方
変数DBHTRCは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- RTHNUM
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
(o) 変数LSTCMNINFの求め方
変数LSTCMNINFは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
(p) 変数LSTRTHDINFの求め方
変数LSTRTHDINFは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- RTHNUM
-
「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。
(q) 変数CLDSTGINFの求め方
変数CLDSTGINFは,次に示す計算式から求めてください。クラウドストレージ機能を使用する場合に加算してください。
計算式(単位:キロバイト)
CLDSTGINF=CLDSTGCACHE+CLDSTGACSREQ+CLDSTGACSMEM
変数の説明
- CLDSTGCACHE:キャッシュファイルの管理
-
次に示す計算式から求めてください。
計算式(単位:キロバイト)
CLDSTGCACHE=↑(3,136+384×(cachegrp_grpnum+1)+68×cachegrp_areanum +192×(max_users+1)+64×CACHEENTNUM÷10 +(1,408+72×(max_users+1))×CACHEENTNUM)÷1,024↑
- cachegrp_grpnum
-
サーバ定義のadbcachegrpオペランドの指定数(指定していない場合は1)
- cachegrp_areanum
-
サーバ定義の全adbcachegrpオペランドの-nオプションに指定したデータ用DBエリアの総数
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
- CACHEENTNUM
-
キャッシュエントリ数
次に示す計算式から求めてください。
CACHEENTNUM=MAX(20,000 , cache_total_size×64)
- cache_total_size
-
次のどちらかの値
-
サーバ定義の全adbcachegrpオペランドの-sオプションの指定値の合計(単位:ギガバイト)
-
サーバ定義adb_sys_cld_cache_total_sizeオペランドの指定値(単位:ギガバイト)
-
- CLDSTGACSREQ:クラウドストレージへのアクセス要求の管理
-
次に示す値を代入してください。
値(単位:キロバイト)
CLDSTGACSREQ= 1
- CLDSTGACSMEM:クラウドストレージへのアクセス用メモリの管理
-
次に示す計算式から求めてください。
計算式(単位:キロバイト)
CLDSTGACSMEM=↑(↑(access_area_size÷32)↑×33,554,624+226,624)÷1,024↑
- access_area_size
-
サーバ定義adb_sys_cld_access_area_sizeオペランドの指定値(単位:メガバイト)
(r) 変数PROC_STAINFの求め方
変数PROC_STAINFは,次に示す計算式から求めてください。
計算式(単位:キロバイト)
|
変数の説明
- max_users
-
サーバ定義adb_sys_max_usersオペランドの指定値
(s) 変数SYNDICTINFの求め方
変数SYNDICTINFは,次に示す値を代入してください。
値(単位:キロバイト)
|
(t) 変数AUDINFの求め方
変数AUDINFは,次に示す計算式から求めてください。監査証跡機能が有効な場合に加算してください。監査証跡機能を無効にすると,変数AUDINFで求めた値は解放されます。
計算式(単位:キロバイト)
AUDINF= 1+PROC_AUDINFSZ
変数の説明
- PROC_AUDINFSZ:監査証跡の情報
-
次に示す計算式から求めてください。
計算式(単位:キロバイト)
PROC_AUDINFSZ= 2+(↑sql_text_size÷1,024↑)※1 +(↑PARAM_INFO_SIZE÷1,024↑)※2 +OBJECT_INFO_SIZE※3 +system_info_size
- 注※1
-
SQL文の実行時に加算してください。
- 注※2
-
?パラメタを含むSQL文の実行時に加算してください。
- 注※3
-
SQL文,またはコマンドの実行時に加算してください。
- sql_text_size
-
SQLテキスト長(単位:バイト)
- PARAM_INFO_SIZE
-
パラメタ格納領域(単位:バイト)
「6.3.4 通常運用時のメモリ所要量の求め方」の「(2) リアルスレッド固有メモリの所要量の求め方(通常運用時)」の「(c) 変数RTHD_EXESQLSZの求め方」にある変数PARAM_INFO_SIZEを参照してください。
- OBJECT_INFO_SIZE
-
オブジェクト情報(単位:キロバイト)
次に示す計算式から求めてください。
OBJECT_INFO_SIZE= 1×obj_num×user_num
- obj_num
-
SQL文,またはコマンドに指定したオブジェクト数
GRANT文やREVOKE文にALL TABLESを指定した場合は,ALL TABLESの対象となる表数となります。
- user_num
-
GRANT文やREVOKE文に指定した権限受領者数
権限受領者を指定しないSQL文やコマンドの場合は,1になります。
- system_info_size
-
システム情報(単位:キロバイト)
HADBサーバ開始時のメモリ所要量を求める場合は,次の計算式で求めてください。
system_info_size = ↑サーバ定義ファイルのファイルサイズ※÷1,024↑
- 注※
-
サーバ定義ファイルのファイルサイズの単位はバイトです。
HADBサーバ開始時以外のメモリ所要量を求める場合は,次のどちらかで求めてください。
-
adbclientdefmangコマンド実行時
system_info_size = 2×↑クライアント管理定義ファイルのファイルサイズ※÷1,024↑
- 注※
-
クライアント管理定義ファイルのファイルサイズの単位はバイトです。
-
adbclientdefmangコマンド実行時以外
system_info_size = 0
(u) 変数CLMNZの求め方
変数CLMNZは,次に示す値を代入してください。
- 値(単位:キロバイト)
-
CLMNZ = 5,120+1
(v) 変数CHACINFの求め方
変数CHACINFは,次に示す値を代入してください。
値(単位:キロバイト)
CHACINF=224
(4) リアルスレッド固有メモリの所要量の求め方(HADBサーバ開始時)
HADBサーバ開始時のリアルスレッド固有メモリ(RTHD_STARTSZ)の所要量は,次に示す計算式から求めてください。
計算式(単位:キロバイト)
RTHD_STARTSZ = RTI+BUFINF+DICL+DICL2※1+RTHD_STAINF+MLTMNG※2 +TRCMON+AUDTHDINF※3+CACHEINF※4
- 注※1
-
HADBサーバのバージョンアップを実施するときに加算してください。
- 注※2
-
マルチノード機能を使用するときに加算してください。
- 注※3
-
監査証跡機能が有効なときに加算してください。
- 注※4
-
クラウドストレージ機能を使用するときに加算してください。
変数の説明
- RTI
-
リアルスレッド管理情報
次に示す計算式で求めてください。
計算式(単位:キロバイト)
- AIO
-
非同期I/O管理情報
次に示す計算式で求めてください。
計算式(単位:バイト)
AIO= 32×UTHNUM
- UTHNUM
-
「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(a) 変数SCIの求め方」の変数UTHNUMを参照してください。
- DBI
-
次に示す計算式で求めてください。
計算式(単位:バイト)
DBI= 336×UTHNUM
- BUFINF
-
バッファ定義の解析用領域
次に示す計算式で求めてください。
計算式(単位:キロバイト)
BUFINF= ↑(48×adbbuff_num)÷1,024↑
adbbuff_num:サーバ定義のadbbuffオペランドの指定数
- DICL
-
次に示す値を代入してください。
値(単位:キロバイト)
- DICL2
-
次に示す値を代入してください。
値(単位:キロバイト)
- RTHD_STAINF
-
統計情報の制御情報
次に示す計算式で求めてください。
計算式(単位:キロバイト)
- tables
-
1トランザクション内で実行するSQL文に出現する表の延べ数の合計
- max_sql_concurrent_exec_num
-
1トランザクション内で同時に実行するSQL文の数の最大値
- MLTMNG
-
マルチノード機能管理情報
次に示す計算式で求めてください。
計算式(単位:キロバイト)
MLTMNG= ↑{2,120+↑(1,216×authid_num)÷4,096↑×4,096 +(8,536+760×UTHNUM)×(multi_node_num+worker_node_num) }÷1,024↑
- authid_num
-
クライアント管理定義のadbclientmangオペランドに指定した認可識別子の総数
- multi_node_num
-
サーバ定義adb_sys_multi_node_infoオペランドに指定したホスト名の数
- worker_node_num
-
サーバ定義adb_sys_multi_max_worker_nodesオペランドの指定値
- TRCMON
-
SQLトレース機能のモニタアウトスレッド管理情報
次に示す計算式で求めてください。
計算式(単位:キロバイト)
- 注※
-
SQLトレースバッファ拡張時に確保されるメモリです。
- RTHD_EXPSQLTRCSZ
-
SQLトレースバッファの拡張時に使用するリアルスレッド固有メモリ
「6.3.4 通常運用時のメモリ所要量の求め方」の「(2) リアルスレッド固有メモリの所要量の求め方(通常運用時)」の「(i) 変数RTHD_EXPSQLTRCSZの求め方」を参照して求めてください。
- AUDTHDINF
-
監査証跡の管理情報
次に示す計算式で求めてください。監査証跡機能を無効にすると,変数AUDTHDINFで求めた値は解放されます。
計算式(単位:キロバイト)
AUDTHDINF=↑(272,631,408+CTHNUM×260,000)÷1,024↑
- CTHNUM
-
「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(a) 変数SCIの求め方」の変数CTHNUMを参照してください。
- CACHEINF
-
クラウドストレージ機能のキャッシュ管理情報
値(単位:キロバイト)
CACHEINF = 104
(5) ヒープメモリの所要量の求め方(HADBサーバ開始時)
HADBサーバ開始時のヒープメモリ(HEAP_STARTSZ)の所要量は,次に示す計算式から求めてください。
計算式(単位:キロバイト)
HEAP_STARTSZ = 161 × UTHNUM × RTHNUM |
変数の説明
- UTHNUM
-
「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(a) 変数SCIの求め方」の変数UTHNUMを参照してください。
- RTHNUM
-
「(3) プロセス共通メモリの所要量の求め方(HADBサーバ開始時)」の「(a) 変数SCIの求め方」の変数RTHNUMを参照してください。