1

マップフェーズで生成される特定のキーで、reduceが開始する前にフィルターで除外する必要があるユースケースがあります。このようなことは実行可能ですか?私にお知らせください。

4

2 に答える 2

1

頭に浮かぶいくつかのオプション:

  • フィルタリングしたい値を出力しないようにマッパーを変更します
  • 不要な値を除外するレデューサーを作成し、そのレデューサーの出力を別の MapReduce ジョブにフィードします

@100gods が言及しているように、コンバイナーの実行は保証されていないため、コンバイナーの使用はこのタスクには適していません。

于 2012-09-16T01:19:12.323 に答える
1

入力をフィルタリングするように Mapper クラスを変更すると、より正確になります。これは、コンバイナーの実行が保証されておらず、Hadoop がコンバイナーを実行する場合と実行しない場合があるためです。また、必要に応じて複数回実行することもできます。したがって、MapReduce ジョブはコンバイナーの実行に依存するべきではありません。

于 2012-09-17T09:08:32.483 に答える