2.3.2 ワークファイル出力先ディレクトリの作成
実行者 HiRDB管理者
HiRDBが出力するワークファイルの出力先となるディレクトリを作成してください。コマンドやユティリティの実行時に生成される様々なワークファイルの出力先として,ここで作成したディレクトリを指定します。これによって,出力先がユニット単位で1か所になるため,煩雑になりやすいワークファイルの管理が容易になります。ワークファイル出力先ディレクトリを作成しない運用もできますが,その場合はワークファイルの出力先が一定にならないため,pdcspoolコマンドによるワークファイルの削除ができなくなります。そのため,ワークファイル出力先ディレクトリを作成しておくことをお勧めします。
(1) ワークファイル出力先ディレクトリの容量の見積もり
ワークファイル出力先ディレクトリ下の空き領域は,次の値以上に設定してください。ワークファイル出力中にHiRDB又はコマンドが異常終了した場合,ワークファイルは削除されません。そのため,pdcspoolコマンドを実行する前にディスク容量が不足しないように,ワークファイル出力先ディレクトリの空き領域には十分に余裕のある値を設定してください。
- ワークファイル出力先ディレクトリの容量(単位:キロバイト)=
-
178224+a+b+c+d+e+f+g+h
変数
説明
計算式,又は計算式の参照箇所
a
pdconstck実行時の処理結果ファイルの容量
b
pddbst実行時の次のファイルの容量
-
ワーク用ファイル
-
ソート用ワークファイル
c
pdload実行時の次のファイルの容量
-
インデクス情報ファイル
-
エラー情報ファイル
-
エラー情報ファイル作成用一時ファイル
-
LOB中間ファイル
-
ソート用ワークファイル
d
pdorend実行時
2400×マッピングキー列数×スキップしたSQL件数+100
e
pdrbal実行時の次のファイルの容量
-
インデクス情報ファイル
-
ソート用ワークファイル
f
pdrorg実行時の次のファイルの容量
-
インデクス情報ファイル
-
ソート用ワークファイル
g
pdrstr -w実行時のソート用ワークディレクトリの容量
マニュアル「HiRDB コマンドリファレンス」
h
pdstedit実行時の次のファイルの容量
-
ワーク用ファイル
-
ソート用ワークファイル
-
DAT形式ファイル
-
(2) ワークファイル出力先ディレクトリの指定
ワークファイルの出力先を1か所にするには,pd_tmp_directoryオペランドに作成したディレクトリを指定します。
pd_tmp_directoryオペランドを指定していない場合,HiRDBは各コマンド及びユティリティによって決められたディレクトリにワークファイルを出力します。なお,ワークファイル出力先は次の順番で決定されます。
-
コマンドのオプション,又はユティリティの制御文で指定した出力先
-
1.の指定がない場合,pd_tmp_directoryオペランドで指定した出力先
-
2.の指定がない場合,環境変数TMPDIRで指定した出力先※
-
3.の指定がない場合,/tmpディレクトリ
- 注※
-
コマンドがサーバ側で動作する場合はプロセスサーバプロセス(pdprcd)に設定される環境変数TMPDIRになります。
(3) ワークファイルの削除
HiRDBは通常,24時間ごとにワークファイルを削除します。この削除間隔をpd_spool_cleanup_intervalオペランドで変更できます。また,pd_spool_cleanup_interval_levelオペランドで指定した日より前に出力されたファイルだけを削除するという指定ができます。このとき,pd_tmp_directoryオペランドで指定したワークファイル出力先ディレクトリ下のファイルを削除します。
また,コマンド又はユティリティが出力したワークファイルのうち,HiRDBが削除しないものについては,pdcspoolコマンドによって定期的に削除する必要があります。この場合にも,pd_tmp_directoryオペランドで指定したワークファイル出力先ディレクトリ下のファイルを削除します。
ワークファイルの削除については,「HiRDB運用ディレクトリ下のファイルの削除」を参照してください。