6.12.6 adbmergechunkコマンド実行時に出力されるユーザログ容量(変数max_user_log)の求め方
adbmergechunkコマンド実行時に出力されるユーザログ容量は,次に示す計算式から求めてください。
計算式(単位:バイト)
変数の説明
- MERPRGLOG
-
マージチャンク対象表に定義されているインデクスデータの削除ログ
「(1) 変数MERPRGLOGの求め方」を参照してください。
- MERMAKELOG
-
マージチャンク対象表に定義されているインデクスデータの作成ログ
「(2) 変数MERMAKELOGの求め方」を参照してください。
- MERLOCLOG
-
ロケーション表の更新ログ
「(3) 変数MERLOCLOGの求め方」を参照してください。
(1) 変数MERPRGLOGの求め方
変数MERPRGLOGは次に示す計算式から求めてください。
計算式(単位:バイト)
変数の説明
- idx_num
-
マージチャンク対象表に定義されているインデクスの数
- dbarea_file_num(i)
-
各インデクスを格納するデータ用DBエリアのDBエリアファイル数
- SGIDX(i)
-
各インデクスを格納するセグメント数
- SEGBF(i)
-
各インデクスを格納するデータ用DBエリアのセグメントブロック化係数
- page_size(i)
-
各インデクスを格納するデータ用DBエリアのページサイズ(単位:バイト)
- usrlog_file_num
-
次に示す計算式から求めてください。
データ用DBエリアのセグメント数,およびセグメントブロック化係数については,「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」を参照してください。
adbmergechunkコマンド実行時に必要なユーザログファイル数は,「6.12.15 ユーザログファイル数の求め方」の「(2) ユーザログファイル数を見積もる必要があるコマンド」を参照してください。
(2) 変数MERMAKELOGの求め方
変数MERMAKELOGは次に示す計算式から求めてください。
計算式(単位:バイト)
変数の説明
- n
-
マージチャンク対象表に定義されているインデクスの数
- MERMAKE(i)LOG
-
マージチャンク対象表に定義されているi番目のインデクスのログサイズ
次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
- page_size(i)
-
マージチャンク対象表に定義されているi番目のインデクスを格納するデータ用DBエリアのページサイズ(単位:バイト)
- merc_dividx_rthd
-
次に示す計算式から求めてください。
↓(マージチャンクオプションadb_mergechunk_rthd_numの指定値-1)÷2↓
マージチャンクオプションadb_mergechunk_rthd_numを省略した場合は,マージチャンクオプションadb_mergechunk_rthd_numを省略したときに使用されるスレッド数の値を代入してください。詳細については,マニュアルHADB コマンドリファレンスのadbmergechunk(チャンクのマージ)を参照してください。
- DIRPGNO(i)
-
マージチャンク対象表に定義されているi番目のインデクスの管理部のページ数
次に示す計算式から求めてください。
計算式
- dbarea_file_num(i)
-
インデクスを格納するデータ用DBエリアのDBエリアファイル数
- SGIDX(i)
-
マージチャンク処理(インデクス再作成時)でチャンクごとに確保するインデクスのセグメント数の最大値
次に示す計算式から求めてください。
計算式
-
m
マージチャンク対象のチャンク数
-
CHUNKSGIDX(j)
再作成対象となるインデクスのチャンクごとに確保するインデクスのセグメント数
-
- SEGBF(i)
-
インデクスを格納するデータ用DBエリアのセグメントブロック化係数
データ用DBエリアのセグメント数,およびセグメントブロック化係数については,「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」を参照してください。
(3) 変数MERLOCLOGの求め方
変数MERLOCLOGは,次に示す計算式から求めてください。
なお,処理対象表がアーカイブマルチチャンク表以外の表である場合は,0を代入してください。また,処理対象のチャンクがアーカイブ状態ではない場合も,0を代入してください。
計算式(単位:バイト)
変数の説明
- UPDLOG
-
「6.12.7 データベースの更新時に出力されるユーザログ容量(変数max_user_log)の求め方」のUPDATE文(行の更新)を実行した場合に出力されるユーザログ容量の計算式から求めてください。ただし,次に示す変数については,代入する値が異なります。対象の変数と代入する値を次に示します。
- VRWLOG
-
0を代入してください。
- TIXSLOG
-
0を代入してください。
- IDXSLOG
-
変数IDXSLOGを求める場合,「6.12.7 データベースの更新時に出力されるユーザログ容量(変数max_user_log)の求め方」の「(3) B-treeインデクスユーザログ容量の求め方」を参照してください。ただし,次に示す変数については,代入する値が異なります。対象の変数と代入する値を次に示します。
-
idx_num
1を代入してください。
-
IDXLOG(i)
次に示す計算式から求めてください。
計算式
-
SPLITLOG(i)
「6.12.7 データベースの更新時に出力されるユーザログ容量(変数max_user_log)の求め方」の「(3) B-treeインデクスユーザログ容量の求め方」の変数「SPLITLOG(i)」の計算式(更新対象行のインデクスキーの重複数が256以上の場合)を参照して求めてください。
-
- LROWNUM
-
adbarchivechunkコマンドで作成されるアーカイブファイル数(単位:個)
「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」の「(f) 変数SGROWTBLの求め方(マルチチャンク表の場合)」にある変数LROWNUMの計算式から求めてください。ただし,次に示す変数については,代入する値が異なります。対象の変数と代入する値を次に示します。
-
archive_chunk_num
0を代入してください。
-
merge_chunk_num
1を代入してください。
-
- upd_row_num
-
上記の変数LROWNUMで求めた値を代入してください。
- SGMTLOG
-
次に示す計算式から求めてください。
計算式
- LBP
-
「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」の「(f) 変数SGROWTBLの求め方(マルチチャンク表の場合)」にある変数LBP(i)の計算式から求めてください。ただし,次に示す変数については,代入する値が異なります。対象の変数と代入する値を次に示します。
-
LROWNUM
上記の変数LROWNUMで求めた値を代入してください。
-
- SEGSIZE
-
アーカイブマルチチャンク表を格納したデータ用DBエリアのセグメントサイズ
次に示す計算式から求めてください。
計算式(単位:ページ数)
SEGSIZE= 1セグメントの容量(単位:バイト)÷page_size
- page_size
-
アーカイブマルチチャンク表を格納するデータ用DBエリアのページサイズ(単位:バイト)