コンテンツへスキップ
uencoder

MapReduce Join

MapReduce 結合は分散計算フレームワーク上で結合(ジョイン)を実現する。Map がソースにタグを付け、Shuffle が結合キーごとに集め、Reduce が統合する。

目的

分散結合の実行モデルを理解し、ビッグデータ結合のシャッフルコストを分析する。

メカニズム

Map は各行から (結合キー, (タグ, 行)) を出力する。Shuffle で同じキーの行が 1 つの Reducer に集まる。Reduce はタグごとにグループ化し、入れ子ループまたはハッシュ結合を行う。Reduce 側結合は汎用的だがシャッフルが重く、Map 側結合には小表のブロードキャストが必要である。

ユースケース

  • ビッグデータの結合処理
  • MapReduceの最適化
  • シャッフルコストの分析

関連ツール

References