IT 기술/DB

Nested Loop Join과 Hash Join 비교

gooooooood 2025. 4. 9. 10:31
반응형

1. Nested Loop Join, Hash Join 개념 비교

Nested Loop Join Hash Join
- 두 테이블을 중첩 반복문 방식으로 조인, 외부 루프의 각 튜플마다 내부 루프를 순차적으로 검색하는 방법 - 해시 테이블을 생성한 뒤, 해시 값을 기준으로 매칭하여 조인하는 일반적으로 등가 조인에 적합한 방법

 

 

2. Nested Loop Join, Hash Join 상세 비교

항목 Nested Loop Join Hash Join
개념도
SQL /* USE_NL() */ /* USE_HASH() */
기본 방식 중첩 반복 해시 테이블 구성
조인 조건 등가/비등가 조인 등가 조인
성능 소규모 테이블에 유리 대용량 데이터에 유리
비용 O(n*m) O(n+m)
인덱스 활용 인덱스로 성능 향상 인덱스 필요 없음
메모리 사용 상대적으로 적음 해시 테이블 구성 메모리
실행 시점 옵티마이저가 선택 메모리 상황 고려
블로킹 유무 비블로킹(바로 결과 반환) 블로킹(해시 테이블 구성 후 결과 반환)
병렬 처리 어려움 쉬움
주요 활용 - 소규모 테이블 조인
- 인덱스 기반 처리
- 대규모 테이블 조인
- 등가 조건일 때
문제점 대용량 테이블 성능 저하 메모리 사용량 과다
해결 방법 인덱스 활용 최적화 해시 파티셔닝, 병렬 처리

- RDBMS 옵티마이저에 의해 방식이 선정되지만, 통계정보 최신화 및 인덱스 설계를 통해 성능 최적화 유도 중요

반응형

'IT 기술 > DB' 카테고리의 다른 글

그래프 데이터베이스와 벡터 데이터베이스  (0) 2025.04.09
쿼리 오프로딩  (0) 2025.04.09
빅데이터 통합 관리  (0) 2024.12.04
대용량 데이터베이스의 인덱스  (0) 2024.12.04
데이터 독립성  (0) 2024.12.04