ジョブ ファイルの場所のオーバーライド

Job Executor または管理ユーティリティを使用してコマンド ラインでジョブを実行する際に、データフローのソース ステージ (Read from File など) で指定された入力ファイル、およびデータフローのシンク ステージ (Write to File など) で指定された出力ファイルをオーバーライドできます。

Job Executor でこれを行うには、Job Executor コマンド ライン コマンドの終わりに以下を指定します。

StageName=Protocol:FileName

管理ユーティリティでは、job execute コマンドで次のように --l 引数を使用します。

--l StageName=Protocol:FileName

WHERE:

StageName

Enterprise Designer で、データフローのステージのアイコンの下に表示されるステージ ラベル。例えば、ステージのラベルが "Read from File" の場合は、ステージ名として Read from Fileと指定します。

埋め込まれたデータフローまたはサブフロー内のステージを指定するには、ステージ名の前に埋め込まれたデータフローまたはサブフローの名前とピリオドを付けて、次のようにします。

EmbeddedOrSubflowName.StageName

例えば、"Subflow1" という名前のサブフローの中の "Write to File" という名前のステージを指定するには、次のようにします。

Subflow1.Write to File

別の埋め込まれたデータフローの中にある埋め込まれたデータフロー内のステージを指定するには、親データフローをそれぞれピリオドで区切って追加します。例えば、Embedded Dataflow 2 が Embedded Dataflow 1 の中にあり、Embedded Dataflow 2 内の Write to File ステージを指定する場合は、次のようにします。

Embedded Dataflow 1.Embedded Dataflow 2.Write to File

Protocol

通信プロトコル。次のいずれかです。

file
ファイルが Spectrum™ Technology Platformサーバーと同じコンピュータ上にある場合は、file プロトコルを使用します。例えば、Windows では、

"file:C:/myfile.txt"

と指定し、Unix または Linux では、

"file:/testfiles/myfile.txt" と指定します

esclient
ファイルがジョブを実行するコンピュータ上にあり、そのコンピュータがSpectrum™ Technology Platformサーバーを実行するコンピュータと異なる場合は、esclient プロトコルを使用します。次の形式を使用します。

esclient:コンピュータ名/ファイルへのパス

例を次に示します。

esclient:mycomputer/testfiles/myfile.txt

注: ジョブをサーバー自体で実行している場合は、fileプロトコルを使用しても esclient プロトコルを使用しても構いませんが、file プロトコルを使用した方がパフォーマンスが高くなる可能性があります。
Job Executor を実行しているコンピュータがSpectrum™ Technology Platformサーバーのホスト名を解決できない場合、"ファイルのアクセスでエラーが発生しました" というエラーが表示される可能性があります。この問題を解決するには、サーバー上で次のファイルを開きます:SpectrumLocation/server/app/conf/spectrum-container.properties。プロパティ spectrum.runtime.hostname にサーバーの IP アドレスを設定します。
esfile
ファイルが ファイル サーバー上にある場合は、esfile プロトコルを使用します。このファイル サーバーは Management Console でリソースとして定義する必要があります。次の形式を使用します。

esfile://ファイル サーバー/ファイルへのパス

例を次に示します。

esfile://myserver/testfiles/myfile.txt

ここで、myserver は、Management Console で定義された FTP ファイル サーバー リソースです。
webhdfs
ファイルが Hadoop Distributed File Server 上にある場合は、webhdfs プロトコルを使用します。HDFS サーバーは Management Console でリソースとして定義する必要があります。次の形式を使用します。

webhdfs://ファイル サーバー/ファイルへのパス

例を次に示します。

webhdfs://myserver/testfiles/myfile.txt

ここで、myserver は、Management Console で定義された HDFS ファイル サーバー リソースです。
FileName

入力または出力として使用するファイルへのフル パス。

注: ファイルのパスには、バックスラッシュではなくスラッシュ (/) を使用する必要があります。

複数のオーバーライドを指定する場合は、カンマで区切ってください。

ファイルのオーバーライドの例

以下の Job Executor コマンドでは、ファイル C:/myfile_input.txtを Read from File ステージの入力ファイルとして使用し、ファイル C:/myfile_output.txt を Write to File ステージの出力ファイルとして使用します。

java -jar jobexecutor.jar -j Job1 -u Bob1234 -p "" "Read from File"="file:C:/myfile_input.txt" "Write to File"="file:C:/myfile_output.txt"