0

私は多数の小さなファイルを扱っており、結合ファイル入力フォーマットを使用して、多くのマップ タスクを回避しています。正常に動作していますが、問題は、各ファイルの ID を取得する必要があることです。このように、ファイルの ID はすべて 1 です。ファイルの ID を保持するにはどうすればよいですか?combineFileInputFormat にコードを追加する必要がありますか?

4

1 に答える 1

0

は、処理中の現在のファイルの構成プロパティを構成するため、プロパティCombineFileRecordReaderから現在のファイル名を取得できるはずです。map.input.file

@Override
protected void map(Longwritable key, Text value, Context context) {
    String filePath = context.getConfiguration().get("map.input.file");
}

古い API (mapred) を使用している場合、プロパティ名は同じです。

于 2013-02-07T11:58:39.050 に答える