6.12.3 定義系SQL実行時に出力されるユーザログ容量(変数max_user_log)の求め方
ここでは,次に示す定義系SQLを実行したときに出力されるユーザログ容量の求め方について説明します。
-
CREATE TABLE文(実表の定義)
-
CREATE INDEX文(インデクスの定義)
-
ALTER TABLE文のCHANGE OPTION CHUNK(チャンク数の最大値の変更)
-
ALTER TABLE文(アーカイブマルチチャンク表をレギュラーマルチチャンク表に変更する場合)
-
DROP USER文(HADBユーザの削除)
-
DROP SCHEMA文(スキーマの削除)
-
DROP TABLE文(実表の削除)
-
DROP INDEX文(インデクスの削除)
-
REVOKE文のSCHEMA(スキーマ操作権限の取り消し)
なお,上記以外の定義系SQLについては,ユーザログファイルの容量を超えるユーザログは出力されないため,見積もりは不要です。
(1) CREATE TABLE文実行時に出力されるユーザログ容量の求め方
CREATE TABLE文実行時に出力されるユーザログ容量(変数CRTTBLLOG)は,次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
- 変数の説明
-
dbarea_file_num:定義対象表を格納するデータ用DBエリアのDBエリアファイル数
page_size:定義対象表を格納するデータ用DBエリアのページサイズ(単位:バイト)
(2) CREATE INDEX文実行時に出力されるユーザログ容量の求め方
CREATE INDEX文実行時に出力されるユーザログ容量(変数CRTIDXLOG)は,次に示す計算式から求めてください。
- 計算式(単位:バイト)
-
- 変数の説明
-
dbarea_file_num:定義対象インデクスを格納するデータ用DBエリアのDBエリアファイル数
page_size:定義対象インデクスを格納するデータ用DBエリアのページサイズ(単位:バイト)
(3) ALTER TABLE文のCHANGE OPTION CHUNK実行時に出力されるユーザログ容量の求め方
ALTER TABLE文のCHANGE OPTION CHUNK実行時に出力されるユーザログ容量は,「(7) DROP TABLE文実行時に出力されるユーザログ容量の求め方」を参照して求めてください。その際,変数SGDATAに0を仮定してください。
また,処理対象表にインデクスが定義されている場合は,定義されているインデクスの数だけ,「(8) DROP INDEX文実行時に出力されるユーザログ容量の求め方」を参照して求めてください。その際,変数SGIDXに0を仮定してください。
それぞれで求めた値の合計値が,ALTER TABLE文のCHANGE OPTION CHUNK実行時に出力されるユーザログ容量になります。
(4) ALTER TABLE文実行時に出力されるユーザログ容量の求め方(アーカイブマルチチャンク表をレギュラーマルチチャンク表に変更する場合)
ALTER TABLE文でアーカイブマルチチャンク表をレギュラーマルチチャンク表に変更すると,ロケーション表とロケーション表に定義されたインデクスが削除されます。そのため,ロケーション表とロケーション表に定義されたインデクスが削除されるときに出力されるユーザログ容量を求める必要があります。
なお,ロケーション表とロケーション表に定義されたインデクスは,処理対象のアーカイブマルチチャンク表と同じデータ用DBエリアに格納されています。
アーカイブマルチチャンク表をレギュラーマルチチャンク表に変更するために,ALTER TABLE文を実行する場合に出力されるユーザログ容量(変数ALTTBLLOG)は,次に示す計算式から求めてください。
計算式(単位:バイト)
ALTTBLLOG = DRPLTBLLOG + DRPLIDXLOG |
変数の説明
- DRPLTBLLOG
-
ロケーション表の削除ログ
次に示す計算式から求めてください。
計算式(単位:バイト)
- dbarea_file_num
-
削除対象のロケーション表を格納するデータ用DBエリアのデータ用DBエリアファイルの数
- SGDATA
-
削除対象のロケーション表を格納するデータ用DBエリアのセグメント数
- SEGBF
-
削除対象のロケーション表を格納するデータ用DBエリアのセグメントブロック化係数
- page_size
-
削除対象のロケーション表を格納するデータ用DBエリアのページサイズ(単位:バイト)
- usrlog_file_num
-
次に示す計算式から求めてください。
- DRPLIDXLOG
-
ロケーション表に定義されたインデクスの削除ログ
次に示す計算式から求めてください。
計算式(単位:バイト)
- dbarea_file_num
-
削除対象のロケーション表に定義されたインデクスを格納するデータ用DBエリアのデータ用DBエリアファイルの数
- SGIDX
-
削除対象のロケーション表に定義されたインデクスを格納するデータ用DBエリアのセグメント数
- SEGBF
-
削除対象のロケーション表に定義されたインデクスを格納するデータ用DBエリアのセグメントブロック化係数
- page_size
-
削除対象のロケーション表に定義されたインデクスを格納するデータ用DBエリアのページサイズ(単位:バイト)
- usrlog_file_num
-
次に示す計算式から求めてください。
データ用DBエリアのセグメント数,およびセグメントブロック化係数については,「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」を参照してください。
アーカイブマルチチャンク表をレギュラーマルチチャンク表に変更するために,ALTER TABLE文を実行する場合に必要なユーザログファイル数は,「6.12.15 ユーザログファイル数の求め方」の「(1) ユーザログファイル数を見積もる必要があるSQL文」を参照してください。
(5) DROP USER文実行時に出力されるユーザログ容量の求め方
削除対象のHADBユーザが所有するスキーマがある場合,「(6) DROP SCHEMA文実行時に出力されるユーザログ容量の求め方」を参照して,削除するスキーマについてユーザログ容量を求めてください。
(6) DROP SCHEMA文実行時に出力されるユーザログ容量の求め方
削除対象のスキーマに表を定義している場合は,「(7) DROP TABLE文実行時に出力されるユーザログ容量の求め方」を参照して,削除するすべての表について,それぞれユーザログ容量を求めてください。そのあとで,その合計値を求めてください。
削除対象のスキーマに表を定義していない場合は,ユーザログファイルの容量を超えるユーザログは出力されないため,見積もりは不要です。
(7) DROP TABLE文実行時に出力されるユーザログ容量の求め方
DROP TABLE文実行時に出力されるユーザログ容量(変数DRPTBLLOG)は,次に示す計算式から求めてください。
計算式(単位:バイト)
変数の説明
- dbarea_file_num
-
削除対象表を格納するデータ用DBエリアのDBエリアファイル数
- SGDATA
-
削除対象表を格納するデータ用DBエリアのセグメント数
- SEGBF
-
削除対象表を格納するデータ用DBエリアのセグメントブロック化係数
- page_size
-
削除対象表を格納するデータ用DBエリアのページサイズ(単位:バイト)
- usrlog_file_num
-
次に示す計算式から求めてください。
データ用DBエリアのセグメント数,およびセグメントブロック化係数については,「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」を参照してください。
DROP TABLE文実行時に必要なユーザログファイル数は,「6.12.15 ユーザログファイル数の求め方」の「(1) ユーザログファイル数を見積もる必要があるSQL文」を参照してください。
- 重要
-
削除対象の表にインデクスが定義されている場合は,「(8) DROP INDEX文実行時に出力されるユーザログ容量の求め方」で求めた値を加算してください。
また,削除対象の表がアーカイブマルチチャンク表の場合は,「(4) ALTER TABLE文実行時に出力されるユーザログ容量の求め方(アーカイブマルチチャンク表をレギュラーマルチチャンク表に変更する場合)」で求めた値を加算してください。
(8) DROP INDEX文実行時に出力されるユーザログ容量の求め方
DROP INDEX文実行時に出力されるユーザログ容量(変数DRPIDXLOG)は,次に示す計算式から求めてください。
計算式(単位:バイト)
変数の説明
- dbarea_file_num
-
削除対象インデクスを格納するデータ用DBエリアのDBエリアファイル数
- SGIDX
-
削除対象インデクスを格納するデータ用DBエリアのセグメント数
- SEGBF
-
削除対象インデクスを格納するデータ用DBエリアのセグメントブロック化係数
- page_size
-
削除対象インデクスを格納するデータ用DBエリアのページサイズ(単位:バイト)
- usrlog_file_num
-
次に示す計算式から求めてください。
データ用DBエリアのセグメント数,およびセグメントブロック化係数については,「5.8.1 データ用DBエリアの総ページ数の求め方」の「(2) 変数の説明」を参照してください。
DROP INDEX文実行時に必要なユーザログファイル数は,「6.12.15 ユーザログファイル数の求め方」の「(1) ユーザログファイル数を見積もる必要があるSQL文」を参照してください。
(9) REVOKE文のSCHEMA実行時に出力されるユーザログ容量の求め方
REVOKE文のSCHEMA実行時に出力されるユーザログ容量は,「(6) DROP SCHEMA文実行時に出力されるユーザログ容量の求め方」を参照して求めてください。