STV_TBL_TRANS
STV_TBL_TRANS 테이블은 현재 메모리에 저장 중인 임시 데이터베이스 테이블에 대한 정보를 검색하는 데 사용됩니다.
임시 테이블이란 일반적으로 쿼리 실행 시 중간 결과로 사용되는 임시 행 집합을 의미합니다. STV_TBL_TRANS는 STV_TBL_PERM과 다릅니다. STV_TBL_PERM에는 영구 데이터베이스 테이블에 대한 정보가 저장됩니다.
STV_TBL_TRANS는 슈퍼 사용자에게만 표시됩니다. 자세한 내용은 시스템 테이블 및 뷰에 있는 데이터의 가시성 단원을 참조하십시오.
테이블 열
열 명칭 | 데이터 유형 | 설명 |
---|---|---|
slice | 정수 | 테이블에 할당되는 노드 조각 |
id | 정수 | 테이블 ID. |
rows | bigint | 테이블에 포함된 데이터 행의 수 |
size | bigint | 테이블에 할당된 바이트 수 |
query_id | bigint | 쿼리 ID. |
ref_cnt | 정수 | 참조 수 |
from_suspended | 정수 | 현재는 중단된 쿼리 실행 시 이 테이블의 생성 여부 |
prep_swap | 정수 | 필요한 경우 임시 테이블의 디스크 전환 준비 여부. 전환은 메모리가 낮은 상황에서만 일어납니다. |
샘플 쿼리
쿼리 ID가 90인 쿼리의 임시 테이블 정보를 보려면 다음과 같이 명령을 입력합니다.
select slice, id, rows, size, query_id, ref_cnt from stv_tbl_trans where query_id = 90;
위 쿼리는 다음 샘플 출력과 같이 쿼리 90의 임시 테이블 정보를 반환합니다.
slice | id | rows | size | query_ | ref_ | from_ | prep_ | | | | id | cnt | suspended | swap ------+----+------+------+--------+------+-----------+------- 1013 | 95 | 0 | 0 | 90 | 4 | 0 | 0 7 | 96 | 0 | 0 | 90 | 4 | 0 | 0 10 | 96 | 0 | 0 | 90 | 4 | 0 | 0 17 | 96 | 0 | 0 | 90 | 4 | 0 | 0 14 | 96 | 0 | 0 | 90 | 4 | 0 | 0 3 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 99 | 0 | 0 | 90 | 4 | 0 | 0 9 | 96 | 0 | 0 | 90 | 4 | 0 | 0 5 | 96 | 0 | 0 | 90 | 4 | 0 | 0 19 | 96 | 0 | 0 | 90 | 4 | 0 | 0 2 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 98 | 0 | 0 | 90 | 4 | 0 | 0 13 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 96 | 0 | 0 | 90 | 4 | 0 | 0 6 | 96 | 0 | 0 | 90 | 4 | 0 | 0 11 | 96 | 0 | 0 | 90 | 4 | 0 | 0 15 | 96 | 0 | 0 | 90 | 4 | 0 | 0 18 | 96 | 0 | 0 | 90 | 4 | 0 | 0
위 예를 보면 쿼리 데이터에 테이블 95, 96 및 98이 포함되어 있는 것을 알 수 있습니다. 이 테이블에 0바이트가 할당되어 있기 때문에 이러한 쿼리를 메모리에서 실행할 수 있습니다.