Skip to content

Commit 158978c

Browse files
committed
join parallerl
1 parent f5df955 commit 158978c

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

_posts/2024-11-27-join_algorithms.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,22 +74,22 @@ end
7474
## Parallel Hash Join
7575

7676
단일 머신 해시 조인을 병렬로 수행.
77-
- 1. hash partitioning
77+
1. hash partitioning
7878
- S, R 이 여러 파티션으로 나뉘어지고 해시하여 동일한 키를 가진 레코드는 한 노드로 모인다.
7979
- shuffle 발생
80-
- 2. build - local hash table build
80+
2. build - local hash table build
8181
- 로컬에서 해시테이블 build 한다. - 병렬처리 가능.
82-
- 3. probe
82+
3. probe
8383
- probe가 수행되려면 build 단계가 완료되어야 한다. (즉 pipeline-break.)
8484
- 로컬에서 수행된다. - 병렬처리 가능.
8585
![](https://dt5vp8kor0orz.cloudfront.net/deb3b1023aa97d164a291e64032fa3f05d566a58/5-Figure4-1.png)
8686

8787
## Parallel Sort-Merge Join
88-
- 1. range partitioning - sort
88+
1. range partitioning - sort
8989
- S, R을 조인 키의 범위로 파티셔닝한다. 동일한 키를 가진 레코드는 한 노드로 모인다.
9090
- data skew가 발생할 수 있다. 이는 샘플링을 통해 해결할 수 있다.
9191
- shuffle 발생
92-
- 2. merge
92+
2. merge
9393
- 로컬에서 수행된다. - 병렬처리 가능.
9494
- spark 나 MapReduce에서는 input이 정렬되어있는(1번 단계가 완료된) 경우가 많아서 주로 사용한다.
9595

0 commit comments

Comments
 (0)