Hadoop入力データファイルが0バイトである場合、ユーザーが指定したMapアプリケーションは通常起動されません。Hadoop入力データファイルが0バイトである場合でも、このプロパティを有効化する(trueを指定する)と、Mapアプリケーションを起動することができます。
設定内容 | 設定名 | 設定値 | 備考 |
---|---|---|---|
Hadoop入力データファイルが0バイトの場合のアプリケーション起動の指定 | extjoiner.map.alwaysRun | true false | 省略可 デフォルトはfalseです |
注意
このプロパティが有効で、かつHadoop入力データファイルが0バイトの場合、以下の動作となります。
Hadoopジョブ実行中にHadoopファイルシステム上に一時ファイルが作成されます。この一時ファイルは、ジョブ終了後も削除されません。
一時ファイルは、ジョブ実行ユーザーのHadoopファイルシステムホームディレクトリ直下のextjoiner_dummyディレクトリ内に生成されます。ジョブ終了時に一時ファイルを削除する必要がある場合、上記ディレクトリを手動で削除してください。(一時ファイルが存在していても、ジョブの実行に影響はありません)
作成される一時ファイルのサイズは、最大で64バイトです。
HadoopのログではMapタスクに1件のレコードが渡されたかのように表示されます。例えば、extjoiner.map.input.getRecordCountプロパティが有効な場合、ログに表示されるMapタスクの入力レコード数には、1件のレコードが渡されたかのように表示されますが、Mapアプリケーションにレコードが渡されることはありません