4

Hadoop でタスクを減らすときに開始するときから、hadoop の減らすタスクには 3 つのステップが含まれていることを理解しています: シャッフル、並べ替え、並べ替え (およびその後の縮小) は、すべてのマッパーが完了した後にのみ開始できます。マッパーが終了するたびにソートを開始して削減する方法はありますか?

たとえば、マッパー mapperA と mapperB と 2 つのレデューサーを持つジョブを 1 つだけ持つとします。私がやりたいことは次のとおりです。

  1. mapperA の終了
  2. shuffles は mapperAs の適切なパーティションをコピーします出力はレデューサー 1 と 2 に伝えます
  3. レデューサー 1 と 2 での並べ替えは、並べ替えと削減を開始し、いくつかの中間出力を生成します
  4. これで mapperB が終了します
  5. shuffles は mapperBs 出力の適切なパーティションをレデューサー 1 と 2 にコピーします
  6. レデューサー 1 と 2 の並べ替えと削減が再び開始され、レデューサーは新しい出力を古い出力とマージします

これは可能ですか?ありがとう

4

3 に答える 3

2

これは、スロースタート プロパティを使用して構成できます。これは、リデューサーへのコピーが開始される前に終了する必要があるマッパーの割合を示します。通常のデフォルトは 0.9 ~ 0.95 (90 ~ 95%) ですが、必要に応じてオーバーライドして 0 にすることもできます。

`mapreduce.reduce.slowstart.completed.map`
于 2013-05-22T10:16:57.377 に答える