エクスポートユーティリティのデータ退避およびデータ抽出の動作は、エクスポートユーティリティ定義ファイルに記述します。
以下にエクスポートユーティリティ定義ファイルの作成方法および記述例について説明します。
記述例
<?xml version="1.0" encoding="UTF-8"?> <exutyConf> <evacuate> <output_dir>/export/home0/exuty1</output_dir> <filename>evafile</filename> <extension>dat</extension> <date>on</date> </evacuate> <extract> <output_dir>/export/home0/exuty2</output_dir> <filename>extfile</filename> <extension>dat</extension> <serialnumber>on</serialnumber> <date>on</date> <condition> <transaction>commit</transaction> <sort>on</sort> </condition> <condition> <transaction>rollback</transaction> <sort>off</sort> </condition> <condition> <transaction>both</transaction> </condition> <destruction> <cond>time</cond> <value>24</value> <action>devide</action> </destruction> </extract> <post_processing> <post_evacuate> <command mode="async">/export/home0/eva_post.sh</command> </post_evacuate> <post_extract> <command mode="sync" limit="300">/export/home0/ext_post.sh</command> </post_extract> </post_processing> <common> <log_size>5</log_size> <tmp_dir>/export/home0/tmp</tmp_dir> </common> </exutyConf> |
ポイント
Interstage Studioでは、コンテキストメニューの[検証]を選択することによりエクスポートユーティリティ定義のXMLタグの構成をチェックすることができます。
検証の詳細については“Interstage Studio ユーザーズガイド”を参照してください。
なお、[検証]では規定値のチェックは行えません。
下記に設定可能なタグについて説明します。
定義を省略した項目については、デフォルト値で実行されます。
定義項目の詳細およびデフォルト値の詳細は、“Interstage Business Application Server リファレンス” の“エクスポートユーティリティ定義ファイルリファレンス”を参照してください。
タグ名 | 説明 | 省略可否 | デフォルト | |||
---|---|---|---|---|---|---|
exutyConf | evacuate | output_dir | 退避データファイルの出力ディレクトリを記述してください。 | ○ |
| |
filename | 退避データファイル名を記述してください。 | ○ | RDBシステム名_DB名_DSI名_日時_eva_通し番号 (注2)(注3)(注4)(注13) | |||
extension | 退避データファイルの拡張子を記述してください。 | ○ | - (注2)(注3) | |||
date | 退避データファイルにタイムスタンプを付加するかを記述してください。 on:付加する off:付加しない | ○ | on (注3) | |||
extract | output_dir | 抽出データファイルの出力ディレクトリを記述してください。 | ○ |
| ||
filename | 抽出データファイル名を記述してください。 | ○ | RDBシステム名_DB名_DSI名_日時_ext_通し番号 (注2)(注3)(注4)(注13) | |||
extension | 抽出データファイルの拡張子を記述してください。 | ○ | - (注2)(注3) | |||
serialnumber | 抽出処理実行回数番号を付加するかを記述してください。 on:付加する off:付加しない | ○ | on | |||
date | 抽出データファイルにタイムスタンプを付加するかを記述してください。 on:付加する off:付加しない | ○ | on (注3) | |||
file_type | バイナリ形式で出力する場合は以下を指定してください。 binary: バイナリ形式 seqfile: レコード順ファイル | ○ | binary | |||
data_type | レコード順ファイルで出力する場合に出力ファイル形式を指定します。 fixed: 固定長レコード形式 variable:可変長レコード形式 | ○ | fixed (注5) | |||
memory_size | 抽出処理で使用する作業域の大きさ(メモリサイズ)を指定します。
| ○ | システム自動設定 (注6) | |||
condition (注14) | transaction | 対象とするトランザクションを記述します。 commit:コミット rollback:ロールバック both:コミットとロールバック | ○ | commit | ||
sort(注12) | ユーザログレコードのSEQUENCE_NOによりソートするかどうかを指定します。 on: 抽出データをSEQUENCE_NOによりソートして出力します。 off: 抽出データをSEQUENCE_NOでソートされません。 | ○ | off | |||
destruction (注14) | cond | 破棄データとして扱う条件を記述してください。 count:振分回数 time:経過時間 | ○ (注9) | count | ||
value | 破棄データとして扱う条件値を記述してください。 (注10) 振分回数の場合 経過時間(分) | ○ (注9) | 3 | |||
action | 破棄データの扱いを記述してください。 devide:破棄データファイルへ出力します。 delete:削除します。 | ○ (注9) | devide | |||
post_processing | post_evacuate | command (注15) | 退避データファイルを扱うユーザ処理名を記述してください。 アトリビュート mode async sync limit 0~43200 | ○ | mode limit | |
post_extract | command (注15) | 抽出データファイルを扱うユーザ処理名を記述してください。 アトリビュート mode async sync limit 0~43200 | ○ | mode limit | ||
common | log_size | 出力される実行ログのファイルサイズを指定します。 1~2048(MB) | ○ | 5 | ||
tmp_dir | エクスポートユーティリティが抽出処理で利用する一時ファイルの出力先を指定します。 (注16) | ○ |
|
注1) 出力ディレクトリは絶対パスで指定してください。
注2) ファイル名および拡張子にスラッシュ(/)は指定できません。また、拡張子は、ピリオド(.)も指定できません。
注3) ディレクトリ、ファイル名、タイムスタンプ、および拡張子の組み合わせによるパス長が、256バイトを超過しないよう考慮する必要があります。
注4) Symfoware Serverを利用し、RDBシステム名を付加しない運用を行った場合、RDBシステム名に固定値“RDBII”が設定されます。
注5) 可変長レコード形式のCOBOLレコード順ファイルを出力する場合、抽出処理でユーザログ本文が 0バイトのデータを検出した時点でエラーになります。
可変長レコード形式のCOBOLレコード順ファイルを抽出する場合は、ユーザログ本文に必ずデータを設定してください。
注6) 使用可能な物理メモリ量を超えて作業域を指定すると、性能が劣化することがあります。
使用可能な物理メモリ量を超えないように指定してください。
指定されたメモリ量を超えた場合には、内部作業ファイルを使用します。
注7) Systemwalkerなどのスケジューラまたはシステム標準の管理機能を使用してエクスポートユーティリティの実行をタイマ監視する場合は、エクスポートユーティリティ後処理のユーザ処理監視時間(limit)に指定した値より長く設定してください。
注8) ユーザ処理と完全同期する場合は“0”を指定してください。limitを省略した場合は“300”が設定されます。
注9) destructionが持つcond、value、actionについては個別の省略は行えません。
注10) condおよびvalueに設定する設定値について“condおよびvalueに設定する値について”を参照してください。
注11)“/opt/”、“/var/opt/”、“/etc/opt/”から始まる出力先は指定できません。以下のメッセージが出力されます。
FSP_INTS-BAS_AP: エラー: 11056: エクスポートユーティリティ定義ファイルで指定したディレクトリは退避、抽出ファイル、または一時ファイル出力先に指定できません。(出力先ディレクトリ名 定義ファイル名) |
注12) ユーザログレコードのソートを行う場合抽出性能が劣化します。
注13) dateがoffの場合“日時”は付加されません。
注14) conditionは定義された順番で抽出データファイルの抽出番号が付加されます。
注15) ユーザ処理は絶対パスで指定する必要があります。
ディレクトリパスは半角英数字、スラッシュ(/)、およびアンダースコア(_)が使用できます。ファイル名は半角英数字、アンダースコア(_)、およびピリオド(.)が使用できます。
注16) 抽出処理で利用する一時ファイル出力先ディレクトリは絶対パスで最大128バイトになります。
注17) 指定したディレクトリに対し、所有者および所有グループをInterstage運用グループにしてください。また、ディレクトリのアクセス権は“770”に設定してください。
注意
各タグを重複して定義した場合、先に定義されたタグが有効になります。
conditionタグについては最大3個まで定義でき、3個以上定義された場合はエラーとなります。
エクスポートユーティリティ定義ファイルに2バイト文字、および半角カナは指定できません。指定された場合の動作は保障されません。
Systemwalkerなどのスケジューラおよびシステム標準の管理機能の詳細については、各製品のマニュアルを参照してください。
condおよびvalueに設定する値について
振分回数を指定した破棄データファイルへの振分け
トランザクション未完了データを抽出処理の入力として扱った回数が、定義ファイルに指定された振分回数を超過していた場合、ユーザログは破棄データファイルへ振分けられます。
ポイント
振分回数と破棄データファイルへの出力の関係は以下のようになります。
振分回数に“1”を指定した場合
トランザクション未完了と判断されたユーザログが、2度目のデータ抽出処理でもトランザクション完了が確認できなかった場合、破棄データファイルへ振分けられます。
経過時間を指定した破棄データファイルへの振分け
現在時刻が、初回起動時刻に定義ファイルで指定された経過時間を加算した時間を超過していた場合に、破棄データファイルへ出力されます。
現在時刻を取得するタイミングはエクスポートユーティリティ実行時となります。
ポイント
経過時間と破棄データファイルへの出力の関係は以下のようになります。
初回起動時刻に“12:00”が設定され、経過時間(分)に“119”を指定した場合、かつ“14:00”にエクスポートユーティリティの処理を実行した場合
トランザクション未完了と判断されたユーザログが、2度目のデータ抽出処理でもトランザクション完了が確認できなかった場合、破棄データファイルへ振分けられます。
初回起動時刻に“12:00”が設定され、経過時間(分)に“120”を指定した場合、かつ“14:00”にエクスポートユーティリティの処理を実行した場合
トランザクション未完了と判断されたユーザログが、2度目のデータ抽出処理でもトランザクション完了が確認できなかった場合、トランザクション未完了データファイルへ振分けられます。