1

map-reduce が、マップ側とリデュース側の両方で、シャッフルおよびソート フェーズ中に暗黙的なソートを行う理由を理解しようとしています。大規模なデータセットの場合、非常に高価になる可能性があります)。

私の懸念は、map-reduce ジョブを実行している間、パフォーマンスが重要な考慮事項であり、マッパーの出力をレデューサーにスローする前のキーに基づく暗黙的な並べ替えが、大量のデータ セットを処理するときにパフォーマンスに大きな影響を与えることです。

並べ替えが明示的に必要な特定のケースでは、並べ替えが有益であることが証明できることを理解していますが、これは常に正しいとは限りませんか? では、暗黙の並べ替えの概念が Hadoop Map-Reduce に存在するのはなぜでしょうか?

シャッフルとソートのフェーズについて言及しながら、私が話していることへのあらゆる種類の参照については、投稿を簡単に読んでください:Map-Reduce: Shuffle and Sort私のブログ: Hadoop-Some Salient Understandings

4

1 に答える 1

0

この質問を投稿した後、ずっと後に頭に浮かんだ上記の可能な説明の1つは次のとおりです。

並べ替えは、特定のキーに対応するすべてのレコードをまとめるためだけに行われるため、その単一のキーに対応するこれらすべてのレコードが単一のレデューサーに送信されます (Hadoop Map-Reduce のデフォルトのパーティショニング ロジック)。そのため、Mapper フェーズの後にすべてのレコードをキーでソートすることにより、単一のキーに対応するすべてのレコードをまとめて、ソートされた順序でのキーの順序が次のような特定のユースケースに使用される可能性があると言えます。大量のデータの並べ替え。

以上のことを同じように考えている人が検証できれば、それは素晴らしいことです。ありがとう。

于 2013-01-12T19:03:35.267 に答える