2017-11-14 3 views
0

私は自分のプロジェクトでSparkを学習していますが、Sparkのシャッフルプロセスに悩まされています。私はこの操作がどのように内部的に働くかを知りたい。 ShuffleMapStage、ShuffleMapTask、ShuffledRDD、シャッフル書く、シャッフル読む....スパークシャッフル操作の仕組みは?

私の質問は次のとおりです:

1) Why we need ShuffleMapStage? When this stage is created and how it works? 
2) When ShuffledRDD's compute method is called? 
3) What are Shuffle Read and Shuffle Write? 

答えて

1

suffle operation(労働者のコヒーレントデータを配信するために構成されて配分私は、この操作に関係するいくつかのキーワードが見つかりました)データキーのハッシュ関数を使用して(データlocaliltyの問題)。

この操作では、操作を実行する前にデータを整理してデータ転送を行い、操作の回数を減らしてパフォーマンスを向上させます。

シャッフル操作は、自動的にSparkによって2 transformationの間で呼び出され、最終的にactionを実行します。

一部スパーク変換が

一部スパーク変換が(ユニオン、地図のように削減し、フィルター、カウント)シャッフルを必要としない(ソート、グループによってのような参加)

をシャッフルする必要が