ストリームデータ処理基盤 uCosminexus Stream Data Platform - Application Framework システム構築・運用ガイド
<FileInputConnectorDefinition>
<input readType="{BATCH|REAL_TIME}"
compositionType="{WRAP_AROUND|ANTI_WRAP_AROUND}"
interval="<監視時間間隔>"
retryCount="<監視リトライ回数>"
readOrder="{DEFINED|MODIFIED}"
readUnit="<読み込み単位>"/>
<file path="<入力パス名>"
name="<入力ファイル名>"
messageLog="{ON|OFF}"/>
</FileInputConnectorDefinition>
- FileInputConnectorDefinitionタグ(全体情報の定義)
- ファイル入力コネクター定義の全体情報を定義します。この定義は必ず1個だけ記述します。
- inputタグ(読み込み定義)
- 入力ファイルの読み込み処理,および入力ファイルの監視処理の情報を定義します。この定義は必ず1個だけ記述します。
- readType="{BATCH|REAL_TIME}"
- 入力ファイルの読み込み方式を指定します。省略した場合,REAL_TIMEが仮定されます。
- 指定できる値を次に示します。
- BATCH
バッチ処理モードで,入力ファイルを読み込みます。
- REAL_TIME
リアルタイム処理モードで,入力ファイルを読み込みます。
- compositionType="{WRAP_AROUND|ANTI_WRAP_AROUND}"
- 入力ファイルのファイル構成を指定します。省略した場合,ANTI_WRAP_AROUNDが仮定されます。
- 指定できる値を次に示します。
- WRAP_AROUND
ラップアラウンド構成の入力ファイルを読み込みます。
なお,readType属性にBATCHを指定する場合は,WRAP_AROUNDを指定できません。また,readType属性にREAL_TIME,およびreadOrder属性にDEFINEDを指定する場合も,WRAP_AROUNDを指定できません。
- ANTI_WRAP_AROUND
非ラップアラウンド構成の入力ファイルを読み込みます。
なお,readOrder属性にMODIFIEDを指定する場合は,ANTI_WRAP_AROUNDを指定できません。
- interval="<監視時間間隔>"
- readType属性でREAL_TIMEを指定した場合に,入力ファイル格納ディレクトリを監視して,入力対象のファイルが新規作成されているかどうかを確認する時間間隔(単位:ミリ秒)を0〜1000000の整数で指定します。0を指定した場合,監視処理を連続で実行します。省略した場合,1000が仮定されます。
- retryCount="<監視リトライ回数>"
- 入力ファイル格納ディレクトリの監視処理のリトライ回数を0〜1000の整数で指定します。省略した場合,100が仮定されます。
- リトライ回数がこの属性で指定した値を超えると,入力ファイル格納ディレクトリに入力対象のファイルが存在しないことを示す警告メッセージKFSP46203-Wが1回出力され,監視が継続されます。
- 監視処理のリトライは,その時点の入力対象ファイルごとに実行され,入力対象ファイルの読み込みが行われた時点でリトライ回数が0にリセットされます。このため,リトライ回数のしきい値判定は入力ファイルごとに実行され,警告メッセージは入力ファイルごとに1回出力されます。
- readOrder="{DEFINED|MODIFIED}"
- 入力ファイルを読み込む順番を指定します。省略した場合,DEFINEDが仮定されます。
- DEFINED
fileタグのname属性で指定した順番で,入力ファイルを読み込みます。
- MODIFIED
入力ファイルの更新時刻の順番で,入力ファイルを読み込みます。
- readUnit="<読み込み単位>"
- ファイル入力コネクターが一度に読み込むレコード数(単位:行数)を1〜10000の整数で指定します。省略した場合,1が仮定されます。
- fileタグ(入力ファイルの定義)
- 入力ファイルの情報を定義します。この定義は必ず1個だけ記述します。
- path="<入力パス名>"
- 入力ファイル格納ディレクトリのパス名を1〜160文字の半角文字で指定します。この属性は省略できません。
- この属性に指定できる文字を次に示します。
- 半角英数字,「!」,「#」,「$」,「%」,「&」,「’」,「(」,「)」,「=」,「~」,「`」,「{」,「}」,「+」,「-」,「^」,「.」,「_」,「@」,「\」,「/」,「:」,半角スペース
- name="<入力ファイル名>"
- 入力対象のファイル名をファイル名,または通番で指定します。この属性は省略できません。
- ファイル名で指定する場合
ファイル名は,path属性で指定した入力ファイル格納ディレクトリからの相対パスで指定します。複数指定する場合は,コンマ(,)で区切って指定してください。ただし,サブディレクトリは指定できません。入力ファイル名一つにつき,半角文字で1〜60文字以内となるように指定してください。
なお,予約デバイス名(NULなど)をファイル名に指定しないでください。予約デバイス名を指定した場合,動作は保証されません。
- 通番で指定する場合
path属性で指定した入力ファイル格納ディレクトリに格納されているファイルを通番で指定します。指定方法については,「(4) 入力ファイル名の通番での指定」を参照してください。
- 入力ファイル名は,1〜1,024文字の半角文字で指定します。「\」,「/」,および「:」は指定できません。
- この属性に指定できる文字を次に示します。
- 半角英数字,「!」,「#」,「$」,「%」,「&」,「’」,「(」,「)」,「=」,「~」,「`」,「{」,「}」,「+」,「-」,「^」,「.」,「_」,「@」,半角スペース
- messageLog="{ON|OFF}"
- 入力ファイルの読み込み開始時に,開始時刻と入力ファイル名をメッセージログに出力するかどうかを指定します。省略した場合,OFFが仮定されます。
- 指定できる値を次に示します。
- ON
メッセージログに出力します。
- OFF
メッセージログに出力しません。
<?xml version="1.0" encoding="UTF-8"?>
<root:AdaptorCompositionDefinition
xmlns:ficon="http://www.hitachi.co.jp/soft/xml/sdp/adaptor/definition/callback/FileInputConnectorDefinition">
<!-- 途中略 -->
<!-- 入力用CB定義 -->
<cb:InputCBDefinition
class="jp.co.Hitachi.soft.sdp.adaptor.callback.io.FileInputCBImpl" name="inputer1">
<!-- ファイル入力コネクター定義 -->
<ficon:FileInputConnectorDefinition>
<!-- 読み込み定義 -->
<ficon:input readType="REAL_TIME" interval="600000"
retryCount="100" readUnit="1"/>
<!-- 入力ファイルの定義 -->
<ficon:file path="C:\tmp\" name="a[1-100].txt"/>
</ficon:FileInputConnectorDefinition>
</cb:InputCBDefinition>
fileタグのname属性で,入力ファイル名を通番で指定する場合の記述形式について説明します。
- 通番の記述形式
<接頭文字列><通番指定1><中間文字列><通番指定2><接尾文字列>
指定値について説明します。
- <接頭文字列>,<中間文字列>,<接尾文字列>
- 半角文字列で指定します。
- <通番指定1>,<通番指定2>
- 「[」と「]」で囲まれた「下限値-上限値」,または「下限値-」で,通番を指定します。下限値,および上限値は,8けた以下の半角数字で指定します。
- 通番の記述規則
- 通番指定ができるファイルは一つだけです。
- 接頭文字列,中間文字列,および接尾文字列には,「[」または「]」を指定できません。
- 通番指定の下限値は省略できません。上限値を省略した場合は,上限値として最大値(99999999)が仮定されます。
- 通番は,「下限値≦上限値」,かつ「上限値のけた数≧下限値のけた数」となるように指定してください。
- 通番指定のファイルを入力する際の優先順位は,次のとおりです。
1. 通番指定1の値が小さいもの
2. 通番指定2の値が小さいもの
例えば,「a1b2.txt,a2b1.txt」では「a1b2.txt」が先に入力されて,「a2b2.txt,a2b1.txt」では「a2b1.txt」が先に入力されます。
- 中間文字列には,数字でない文字を一つ以上含めてください。
- ファイル入力コネクターは,下限値から上限値までのファイル名を順番に入力します。入力ファイルの通番が不連続な場合も,通番の順序に従って入力します。例えば,通番が「1,2,4」となっていて3が抜けている場合,1と2に続いて4を入力します。
- 通番の指定例
通番の指定例を次の表に示します。
指定例 |
処理結果 |
正常時の入力対象のファイルの並び順 |
a[1-100].txt |
○ |
a1.txt,a2.txt,…(省略)…,a9.txt,a10.txt,a11.txt,a12.txt,…(省略)…,a99.txt,a100.txt |
a[01-100].txt |
○ |
a01.txt,a02.txt,…(省略)…,a09.txt,a10.txt,a11.txt,a12.txt,…(省略)…,a99.txt,a100.txt |
a[001-100].txt |
○ |
a001.txt,a002.txt,…(省略)…,a009.txt,a010.txt,a011.txt,a012.txt,…(省略)…,a099.txt,a100.txt |
a[01-10]_[1-100].txt |
○ |
a01_1.txt,a01_2.txt,…(省略)…,a01_9.txt,a01_10.txt,a01_a11.txt,…(省略)…,a01_99.txt,a01_100.txt,a02_1.txt,a02_2.txt,…(省略)…,a02_9.txt,a01_10.txt,a02_a11.txt,…(省略)…,a02_99.txt,a02_100.txt,…(省略)…,a10_1.txt,a10_2.txt,…(省略)…,a10_9.txt,a10_10.txt,a10_a11.txt,…(省略)…,a10_99.txt,a10_100.txt |
a[5-3].txt |
×※1 |
− |
a[001-9].txt |
×※2 |
− |
a[1-005].txt |
○ |
a1.txt,a2.txt,a3.txt,a4.txt,a5.txt |
a.txt,b[1-3].txt |
×※3 |
− |
a[1-3].txt,b[4-6].txt |
×※3 |
− |
- (凡例)
- ○:正常に処理されます。
- ×:エラーとなります。
- −:該当しません。
- 注※1
- 下限値が上限値よりも大きいため,エラーとなります。
- 注※2
- 下限値のけた数が上限値よりも大きいため,エラーとなります。
- 注※3
- 通番指定がある場合,複数ファイルは指定できないため,エラーとなります。
All Rights Reserved. Copyright (C) 2010, 2014, Hitachi, Ltd.