詳細MapReduceのワークフロー
A、MapTask作業メカニズム
次のように全体的なプロセスは、要約することができます。
1、クライアントは、スライス数nを指定、クラスタにジョブを送信します
図2に示すように、n個のmaptaskのクラスタを開始します
図3は、maptaskデータを読み出す(K、V)RecordReader、ラインによるデータラインのV担当者
4行マッパー論理処理によりデータ列を読んだ後
図5に示すように、新たな分配(K1、V1)に処理されたデータは、Context.writeによりリングバッファに送られます。
図6に示すように、異なるパーティションにリングバッファに書き込まれたデータ、およびゾーンをソートするためのキー
リングバッファは、ファイルへのバッファオーバーフローのデータを入れて、80%に達し、パーティション領域が発注される7、
8、合併、新しいファイルが分割され、秩序あるエリアの前に、各ファイルのパーティション
二、ReduceTask作業メカニズム
次のように全体のプロセスにまとめることができます
1、パーティションの数に応じてオーバークロールに応じて、最後の良好なファイルのマージパーティションをMapTask
一緒にファイルを超えるクロールする2、およびキーに従ってソート
図3に示すように、データは、新しい(K、V)を生成する論理演算を行うソート
4、出力
注意:
ディスクIOの数より少なく、バッファ大きく、より速く実行するためにリングバッファのサイズは、のMapReduceの実装の効率に影響を与えます。
三、シャッフル作業メカニズム
マップ法MapTask後、操作ReduceTask方法が低減する前にマップリデュースのコア動作ことをシャッフル、シャッフルと呼ばれます。