Types of JOIN

록스블로그·2023년 10월 21일
0

이번 정리는 NL JOIN, Sort Merge Join, Hash Join을 내마음데로 설명하고자 한다.
참고는 훈님의 https://hoon93.tistory.com/46 포스트를 참고하였다.

Nested Loop Join


간단하게 생각하면 For Loop을 수행하는 것이며 선행 테이블의 조인 키를 가지고 후행 테이블에 서 찾아 (인덱스가 있으면 더 빨라지겠다) 추출버퍼에 넣으며 해당 과정을 반복적으로 수행한다.
특징 : 랜덤 엑세스를 통해 데이터에 접근함으로 작은 데이터를 빠르게 조인하기 위해 많이 사용되며 실제 훈님의 말에 따라 결과를 가능한 빨리 화면에 보여줘야 하는 프로그램에 좋은 기법이라 한다.

Sort Merge Join

선행 테이블 정렬, 후행 테이블 정렬 -> JOIN 수행
특 징 : 전체 테이블 스캔 (정렬) 이 이루어 지며 그부분에서 부하가 발생할 수 있다. BUT 범위 조인이 가능하다는 큰 장점이 있다

Hash Join

선행 테이블 조인 키 해시 테이블 생성후 후행 테이블 해싱 적용
특징 : 동등 조인만 가능하며 해시 테이블의 크기로 인한 메모리 cost가 증가할 수 있다.

profile
어려움에 성장하는 데이터 엔지니어

0개의 댓글