HSJOIN 노드

이 노드는 테이블에서 자격이 부여된 행이 해시된 해시 조인을 나타냅니다.

노드 이름: HSJOIN

의미: 테이블의 컨텐츠를 사전 순서 지정하지 않고 직접 조인을 허용하기 위한, 테이블에서 자격이 부여된 행이 해시된 해시 조인을 나타냅니다.

조인은 FROM절에서 참조된 둘 이상의 테이블이 있을 때마다 필요합니다. 두 개의 다른 테이블 컬럼을 동일시하는 Join 술어가 있을 때마다 해시 조인을 사용할 수 있습니다. Join 술어는 정확히 동일한 데이터 유형이 되어야 합니다. NLJOIN 의 경우와 마찬가지로 해시 조인은 다시 쓴 서브쿼리에서도 발생할 수 있습니다.

해시 조인에서는 입력 테이블이 순서 지정될 필요가 없습니다. 조인은 해시 조인의 내부 테이블을 스캔하고 조인 컬럼 값을 해시하여 찾아보기 테이블을 생성하여 수행됩니다. 그런 다음 조인 컬럼 값을 해시하고 내부 테이블에 대해 생성된 찾아보기 테이블을 검사하여 외부 테이블을 읽습니다.

성능 제안:
  • 로컬 술어(즉, 하나의 테이블을 참조하는 술어)를 사용하여 조인할 행 수를 줄이십시오.
  • 메모리에서 해시 찾아보기 테이블을 보유할 수 있을 만큼 충분히 정렬 힙 크기를 늘리십시오.
  • 통계가 최신이 아닌 경우 runstats 명령을 사용하여 갱신하십시오.

피드백