ページの先頭行へ戻る
NetCOBOL V12.0 ユーザーズガイド(Hadoop連携機能編)
FUJITSU Software

2.11 シェルをMapReduceで実行する場合

MapReduceアプリケーションではCOBOLアプリケーションを指定して実行できますが、シェルを指定することもできます。シェルの利用により、複数のCOBOLアプリケーションを実行したり、コマンドと組み合わせてCOBOLアプリケーションを実行したりできます。

Hadoopでは、ジョブを実行するたびに分散処理のオーバヘッドが発生します。シェルを利用して、複数のCOBOLアプリケーションやコマンドをまとめて一度のジョブで実行すると、そのオーバヘッドの影響を小さくすることができます。

ただし、入出力データファイルはシェルで実行されるいずれかのアプリケーションで一度だけしか読み書きできません。

Mapアプリケーションとしてシェルを実行し、シェルの中でCOBOLアプリケーション(1)、(2)、(3)を実行しています。

COBOLアプリケーション(1)でMap入力データファイルを読み込み、COBOLアプリケーション(3)でMap出力データファイルを書き込んでいます。

COBOLアプリケーション(1)、(2)、(3)の間のデータ受け渡しは、カレントディレクトリに中間ファイルを出力して利用します。