ジョブ実行の流れ

(https://imzye.com/BigData/Hadoop/MapReduce/ より)

  1. 入力ファイル群を読み取り、レコードに分割する
  2. mapper関数を呼び出し、各入力レコードからキーと値を取り出す
  3. キーでキーバリューペアをソートする
  4. reducer関数を呼び出し、キーバリューペアに対し計算処理を行う
  • mapper, reducer関数はアプリケーションプログラマが注入する
    • mapper (入力データの準備): 1つの入力レコードから任意の数のキーバリューペアを生み出す
    • reducer: 同じキーに属するすべての値を収集し、イテレーションを回して処理を実行し、出力レコードを生成する

Map-side join

  • Mapperだけで処理を完結させる。Reducerはナシ。