Amazon Redshift는 2025년 11월 1일부터 새 Python UDF 생성을 더 이상 지원하지 않습니다. Python UDF를 사용하려면 이 날짜 이전에 UDF를 생성하세요. 기존 Python UDF는 정상적으로 계속 작동합니다. 자세한 내용은 블로그 게시물
SVL_QLOG
SVL_QLOG 뷰에는 데이터베이스에 대해 실행된 모든 쿼리의 로그가 포함됩니다.
Amazon Redshift는 STL_QUERY 테이블에서 읽을 수 있는 정보 하위 집합으로 SVL_QLOG 뷰를 생성합니다. 최근에 실행된 쿼리의 쿼리 ID를 찾거나 쿼리 완료까지 걸린 시간을 보려면 이 테이블을 사용합니다.
SVL_QLOG는 모든 사용자에게 표시됩니다. 수퍼유저는 모든 행을 볼 수 있지만 일반 사용자는 자체 데이터만 볼 수 있습니다. 자세한 내용은 시스템 테이블 및 뷰에 있는 데이터의 가시성 섹션을 참조하세요.
이 테이블의 데이터 중 일부 또는 전부는 SYS 모니터링 뷰인 SYS_QUERY_HISTORY에서도 찾아볼 수 있습니다. SYS 모니터링 뷰의 데이터는 사용 및 이해가 더 쉽도록 형식이 지정되어 있습니다. 쿼리에 SYS 모니터링 뷰를 사용하는 것이 좋습니다.
테이블 열
| 열 명칭 | 데이터 유형 | 설명 |
|---|---|---|
| userid | 정수 | 항목을 생성한 사용자의 ID. |
| 쿼리 | 정수 | 쿼리 ID. 이 ID를 사용하여 다양한 다른 시스템 테이블 및 보기를 조인할 수 있습니다. |
| xid | bigint | 트랜잭션 ID. |
| pid | 정수 | 쿼리에 연결된 프로세스 ID. |
| starttime | 타임스탬프 | 문 실행이 시작된 정확한 시간으로 초의 소수점 이하 자릿수는 6자리입니다(예: 2009-06-12 11:29:19.131358). |
| endtime | 타임스탬프 | 문 실행이 끝난 정확한 시간으로 초의 소수점 이하 자릿수는 6자리입니다(예: 2009-06-12 11:29:19.193640). |
| Elapsed | bigint | 쿼리가 실행되는 데 걸린 시간 길이(마이크로초). |
| aborted | 정수 | 쿼리가 시스템에 의해 중지되거나 사용자에 의해 취소되는 경우, 이 열에 1이 포함됩니다. 쿼리가 실행되어 완료되면 이 열에 0이 포함됩니다. 워크로드 관리를 위해 취소되었다가 이후에 다시 시작되는 쿼리 역시 이 열에서 1의 값을 갖습니다. |
| 레이블 | character(320) | 쿼리 실행에 사용되는 파일의 이름 또는 SET QUERY GROUP 명령을 사용하여 정의되는 레이블. 쿼리가 파일 기반이 아니거나 QUERY_GROUP 파라미터가 설정되지 않은 경우, 이 필드의 값은 default입니다. |
| substring | character(60) | 잘린 쿼리 텍스트. |
| source_query | 정수 | 쿼리에 결과 캐싱을 사용한 경우 캐시된 결과의 소스인 쿼리의 쿼리 ID입니다. 결과 캐싱을 사용하지 않은 경우 이 필드 값은 NULL입니다. |
| concurrency_scaling_status_txt | 텍스트 | 쿼리가 기본 클러스터에서 실행되었는지 아니면 동시성 조정 클러스터에서 실행되었는지를 설명합니다. |
| from_sp_call | 정수 | 쿼리가 저장 프로시저에서 호출된 경우, 프로시저 호출의 쿼리 ID입니다. 쿼리가 저장 프로시저의 일부로 실행되지 않은 경우, 이 필드는 NULL입니다. |
샘플 쿼리
다음 예는 userid = 100인 사용자가 실행한 가장 최근의 데이터베이스 쿼리 5개의 쿼리 ID, 실행 시간, 잘린 쿼리 텍스트를 반환합니다.
select query, pid, elapsed, substring from svl_qlog where userid = 100 order by starttime desc limit 5; query | pid | elapsed | substring --------+-------+----------+----------------------------------------------- 187752 | 18921 | 18465685 | select query, elapsed, substring from svl_... 204168 | 5117 | 59603 | insert into testtable values (100); 187561 | 17046 | 1003052 | select * from pg_table_def where tablename... 187549 | 17046 | 1108584 | select * from STV_WLM_SERVICE_CLASS_CONFIG 187468 | 17046 | 5670661 | select * from pg_table_def where schemaname... (5 rows)
다음 예는 취소된(aborted=1) 쿼리의 SQL 스크립트 이름(LABEL 열) 및 경과 시간을 반환합니다.
select query, elapsed, trim(label) querylabel from svl_qlog where aborted=1; query | elapsed | querylabel -------+----------+------------------------- 16 | 6935292 | alltickittablesjoin.sql (1 row)