반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- MSA
- 코딩테스트
- SQL
- fastapi
- 은행IT
- 모놀리식
- 컴퓨터공학학사취득
- 채널계
- 코어뱅킹
- jdk17
- oracleapex
- 개인프로필스튜디오창업
- 맥북
- jdk
- 맥북환경설정
- 렌탈스튜디오창업
- 프로그래머스
- Homebrew
- Pass By Value
- 학점은행제무료강의
- DB
- 의사결정나무모형
- it자격증
- 오라클
- python
- 계정계
- union
- 맥북셋팅
- 학점은행제
- 디렉토리계층구조
Archives
- Today
- Total
개발머해니
[DB] Oracle Join 중에서 가장 성능이 좋은 쿼리는? 본문
728x90
반응형
* 현재글은 임시로 궁금한 내용만 급하게 작성해놔서 추후 수정 예정입니다…
Nested Loops Join
* 다른 필터 조건이 없는 상황에서는 작은 쪽(=1쪽) 집합을 드라이빙하는 것이 유리
* JOIN 조건 외에 필터 조건이 있을 때는 인덱스 구성에 따라 유·불리가 결정
인덱스 구성이 잘 된 경우 작은 쪽(=1쪽) 집합을 드라이빙하는 것이 유리
Nested Loops Join 의 원리와 성능 최적화의 조건
= "구동테이블이 작고, 내부테이블에 인덱스가 존재한다."
Sort Merge JOIN
- PGA상에 정렬된 집합을 통해 JOIN access가 일어나기 때문에 Random access 발생량보다는 Sort 부하에 의해 성능이 결정
- 디스크 소트(to-disk sort)가 발생할 정도의 큰 테이블을 포함할 때는 큰 테이블을 드라이빙하는 것이 유리
- 메모리 소트(in-memory sort) 방식으로 JOIN할 때는 작은 쪽 테이블을 드라이빙 하는 것이 유리
Hash JOIN
- Hash Area에 Build Input을 모두 채울 수 있느냐가 관건이므로 무조건 작은 쪽 테이블을 드라이빙하는 것이 유리
728x90
반응형
'백엔드' 카테고리의 다른 글
[IT] 장애 대처 방안 (온라인 서비스, 배치 잡) (1) | 2023.09.10 |
---|---|
[DB] 유량제어 개발 시 Redis를 통해 어떻게 대기열 큐를 구현할 수 있을까? (0) | 2023.09.01 |
[DB] 오라클에 이모지(Emoji)를 저장할 수 있을까? (0) | 2023.08.31 |
[스프링] 클라이언트가 에러났을때도 ResponseDTO를 내려달라고 하면 어떻게 해야할까? (0) | 2023.08.30 |
[스프링] 예외처리 종류과 효과적인 사용 방법 (0) | 2023.08.29 |