ページの先頭行へ戻る
Interstage Big Data Parallel Processing Server V1.2.0 ユーザーズガイド
FUJITSU Software

11.5.4 外部プログラムの指定

Mapタスクとして実行する外部プログラムは、利用するファイルごとに指定します。

Reduceタスクとして実行する外部プログラムは、利用するファイル数に関わらず一つだけ指定します。

設定内容

設定名
(NAME要素)

設定値
(VALUE要素)

備考

Mapタスクとして実行する外部プログラム

extjoiner.map.streamprocessor.nn

外部プログラム実行のコマンドラインを指定します

Map/Reduceタスクのいずれか片方を省略可

Reduceタスクとして実行する外部プログラム

extjoiner.reduce.streamprocessor


外部プログラムの入出力データファイルを外部プログラム実行のコマンドライン引数で指定する必要があります。引数で指定する値は以下の通りです。

ファイル種別

引数で指定する値

外部プログラムに渡される実際の値

Map入力データファイル

%innn

Hadoop入力データファイルが分割された、Map入力データファイルのパス

Map出力データファイル

%outnn

Hadoopによって用意された、Map出力データファイルのパス。Mapタスク終了後、Shuffle&sortへの入力ファイルとなる

Reduce入力データファイル

%innn

Map出力データファイルに対してShuffle&sortの処理が行われた、Reduce入力データファイルのパス

Reduce出力データファイル

%outmm

Hadoopによって用意された、Reduce出力データファイルのパス

表中の「nn」は、Hadoop入力データファイルの個数(ファイルの種類の数)に対応します。また、表中の「mm」は、Hadoop出力データファイルの個数(ファイルの種類の数)に対応します。「nn」と「mm」には、それぞれ01~64の数値を指定します。

Reduceタスクとして実行する外部プログラムを省略する場合、Apache Hadoopのプロパティ「mapred.reduce.tasks」に0を指定してください。


外部プログラムとしてJavaアプリケーションを実行する場合の指定例

外部プログラムとしてJavaアプリケーションを実行する場合は、外部プログラムの指定として以下の値を指定します。

■Mapタスクとして実行する外部プログラム

/usr/lib/jre-fj/bin/java -cp /mnt/pdfs/hadoop/work/sample.jar TestMap %in01 %out01

■Reduceタスクとして実行する外部プログラム

/usr/lib/jre-fj/bin/java -cp /mnt/pdfs/hadoop/work/sample.jar TestReduce %in01 %in02 %out01

javaコマンド実行時のクラスパスとして、外部プログラムを含んだjarファイルのパスをDFSのマウントディレクトリの絶対パスで指定します。