쿼리의 해시 조인 실행 단계를 분석합니다.
STL_HASHJOIN은 모든 사용자에게 표시됩니다. 수퍼유저는 모든 행을 볼 수 있지만 일반 사용자는 자체 데이터만 볼 수 있습니다. 자세한 내용은 시스템 테이블 및 뷰에 있는 데이터의 가시성 섹션을 참조하세요.
참고
STL_HASHJOIN에는 기본 프로비저닝된 클러스터에서 실행되는 쿼리만 포함됩니다. 동시성 크기 조정 클러스터 또는 서버리스 네임스페이스에서 실행되는 쿼리는 포함되지 않습니다. 기본 클러스터, 동시성 크기 조정 클러스터, 서버리스 네임스페이스 모두에서 실행되는 쿼리에 대한 설명 계획에 액세스하려면 SYS 모니터링 뷰인 SYS_QUERY_DETAIL을 사용하는 것이 좋습니다. SYS 모니터링 뷰의 데이터는 사용 및 이해가 더 쉽도록 형식이 지정되어 있습니다.
테이블 열
열 명칭 | 데이터 유형 | 설명 |
---|---|---|
userid | 정수 | 항목을 생성한 사용자의 ID. |
쿼리 | 정수 | 쿼리 ID. 쿼리 열을 사용하여 다른 시스템 테이블 및 보기를 조인할 수 있습니다. |
slice | 정수 | 쿼리가 실행 중인 슬라이스를 식별하는 번호. |
segment | 정수 | 쿼리 세그먼트를 식별할 수 있는 번호 |
step | 정수 | 실행된 쿼리 단계입니다. |
starttime | 타임스탬프 | 쿼리 시작 시간(UTC) 총 시간에는 대기 및 실행이 포함되며 소수점 이하 자릿수는 6자리입니다. 예를 들면 2009-06-12 11:29:19.131358 입니다. |
endtime | 타임스탬프 | 쿼리가 완료된 시간(UTC)입니다. 총 시간에는 대기 및 실행이 포함되며 소수점 이하 자릿수는 6자리입니다. 예를 들면 2009-06-12 11:29:19.131358 입니다. |
tasknum | 정수 | 단계 실행을 위해 할당된 쿼리 태스크 프로세스 수. |
rows | bigint | 처리된 총 행 수. |
tbl | 정수 | 테이블 ID. |
num_parts | 정수 | 해시 단계 도중 해시 테이블이 분할된 파티션의 총 수. |
join_type | 정수 | 단계별 조인 유형:
|
hash_looped | character(1) | 이 정보는 내부 전용입니다. |
switched_parts | character(1) | build(또는 외부) 측과 probe(또는 내부) 측의 전환 여부를 나타냅니다. |
used_prefetching | character(1) | 이 정보는 내부 전용입니다. |
hash_segment | 정수 | 해당 해시 단계의 세그먼트입니다. |
hash_step | 정수 | 해당 해시 단계의 단계 수입니다. |
checksum | bigint | 이 정보는 내부 전용입니다. |
배포 | 정수 | 이 정보는 내부 전용입니다. |
샘플 쿼리
다음은 쿼리 720의 해시 조인에 사용되는 파티션 수를 반환하는 예입니다.
select query, slice, tbl, num_parts
from stl_hashjoin
where query=720 limit 10;
query | slice | tbl | num_parts
-------+-------+-----+-----------
720 | 0 | 243 | 1
720 | 1 | 243 | 1
(2 rows)