Take me away.
ジョインアルゴリズム
最終更新:
foreign_blue
-
view
Hashed loops join
- outer table を適当な大きさに分割する
- 1つの分割からメモリ上にハッシュ表を構築
- inner table のレコードをハッシュし、ハッシュ表にあるやつを結合
- つぎの分割ファイルについて繰り返す
各分割について、innser table の全レコードがスキャンされる
GRACE Hash-Join
2フェーズからなる (2種類のハッシュを使う)
- フェーズ1(分割フェーズ)
- R と S をハッシュ関数1で分割し、それぞれをディスクに書き込む
- フェーズ2(結合フェーズ)
- R の 分割ファイルをディスクから読み、各レコードに対してハッシュ関数2を適用し、メモリ上にハッシュ表を構築する
- 対応する S の 分割ファイルのレコードをハッシュ関数2でハッシュし、先のハッシュ表に見つかれば結果を生成する