반응형
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 |