3

古いバージョンの Hadoop ライブラリ (つまり、org.apache.hadoop.mapred.lib) には、基本的にすべてのキーと値のペアを Reducer に渡すIdentityMapperと呼ばれる Mapper の基本的な実装があります。

ただし、新しいバージョンの Hadoop ライブラリ (org.apache.hadoop.mapreduce.lib) には、IdentityMapper と呼ばれるクラスがありません (Mapper のすべてのサブクラスは ここにあります)。

IdentityMapper が名前を変更したのか、新しいライブラリで消えたのかを知ることはできますか?

答えが2番目の場合、IdentityMapperが消える理由をさらに知ることができますか? これは、Mapper を介さずに複数の Reducer を連鎖できるということですか?

4

1 に答える 1

15

ふとデザインに気づく…

簡単に言えば、新しい Mapper は古い IdentityMapper です。

ここに長い答えがあります:

古いライブラリでは、Mapperはインターフェイスであり、その基本的な実装はIdentityMapperと呼ばれます。

ただし、新しいライブラリでは、マッパー用の基本インターフェイスがなくなりました。代わりに、 Mapperと呼ばれるマッパーの共通基本クラスがあり、その実装は以前の IdentityMapper です。

于 2013-10-29T19:00:22.490 に答える