削減大別コピー、並べ替え、削減に重点を置いて、3段階に分けて最初の2つのステージ。コピーフェーズが含まれているeventFetcherを完了取得するには、マップでリストをフェッチャスレッド化にコピーデータを、2つのが開始されます。このプロセスマージスレッド、それぞれinMemoryMergerとonDiskMergerは、それぞれ、メモリ内のデータをマージし、ディスクとディスクへデータがマージ。するデータコピー完了後、コピーフェーズが完了すると、起動ソート、ステージをソートメインステージでの実装であるfinalMergeの純粋な、操作ソートその完了後、ステージ減らすユーザー定義を呼び出すために、ステージを下げます処理のための機能。
詳細な手順:
- コピーフェーズは、単にデータを引き出します。削減プロセスは、いくつかのデータが開始コピースレッド(Fetcherの)を経由して、HTTPのモード要求maptask 自分が所有するファイルを取得します。
- マージステージ。ここでマージとしてマップ端マージ動作をするが、配列が異なるに格納された地図側コピー値が来ます。コピーデータに対するメモリ・バッファに最初になり、ここでよりバッファサイズは、マップより柔軟な端を。マージメモリにメモリ、ディスクへのメモリ、ディスクへのディスク:3つの形式が。ディレクトリのデフォルトのフォームが有効になっていません。メモリ内のデータの量が一定の閾値に達したときに、ディスクにブートメモリをマージ。そして、マップ執筆のプロセスのオーバーフローで同様の端に、あなたが設定している場合は、このプロセスコンバイナ、その後も、有効にし、ディスク上のオーバーフロー書き込み多数のファイルを生成します。第マージモードが全く存在しなくなるまで、実行されたマップ端のデータ側は、その後、第三のディスクツーディスク開始マージ方法の最終文書を生成します。
- データは、また、後にマージされ、大規模なデータの分散液中に合成された後にデータがソート。
- キー値のソート方法を減らすの呼び出し、一度呼び出さ等しいキーと値のペアを減らす方法を、各呼び出しは、ゼロ以上のキーと値のペアを持つことになり、最終的にこれらのキーの出力が書き込まHDFSのファイル。