2012년 11월 26일 월요일

실행계획 데이터베이스 튜닝 - 실행계획분석 18

193P

소트 머지 조인

소트 머지 조인의 모든 장점을 제공하면서 소트 머지 조인의 단점까지 어느 정도 보완한 해쉬 조인 사용

소트 머지 조인은 중첩 루프 조인이나 해쉬 조인과 달리 어느 테이블이 먼저 엑세스되고 어느 테이블이 나중에 엑세스되는가는 큰 영향이 없다.

소트 머지 조인은 각 테이블에서 조건에 만족하는 데이터를 추출한 후 조인 조건으로 각 집합을 정렬한다.

정렬된 두 개의 집합에 대해 머지 조인을 수행하고 조인에 실패한 데이터는 버려진다.

정렬에 많은 비용이 발생.

머지 조인 알고리즘이 해쉬 함수에 비해 성능이 보장되지 않음.

대용량일 경우 해쉬 조인, 적은 데이터일 경우 중첩 루프 조인

소트 머지 조인은 조인 SQL의 조인 조건에 인덱스를 이용하지 못할 경우 자주 발생한다.

조인 조건에 인덱스가 없으면 오라클 옵티마이져는 중첩 루프 조인을 선택하지 않는 경우가 많다.


196P

카테시안 조인이 소트 머지 조인과 동일하지는 않으나 실행 계획이 소트 머지 조인 실행 계획의 형식으로 생성된다.

FROM 절의 테이블을 연결할 때 WHERE 절에서 테이블을 연결하는 조인 조건이 없을 경우 카테시안 조인이 발생한다.


199P


댓글 없음:

댓글 쓰기