sys.dm_pdw_exec_requests(Transact-SQL)
적용 대상:Azure Synapse AnalyticsAnalytics Platform System(PDW)
Azure Synapse Analytics 전용 SQL 풀 및 분석 플랫폼 시스템(PDW)에서 현재 또는 최근에 활성화된 모든 요청에 대한 정보를 보유합니다. 요청/쿼리당 하나의 행을 나열합니다.
참고 항목
이 구문은 Azure Synapse Analytics의 서버리스 SQL 풀에서 지원되지 않습니다. 서버리스 SQL 풀의 경우 sys.dm_exec_requests 사용합니다.
열 이름 | 데이터 형식 | Description | 범위 |
---|---|---|---|
request_id |
nvarchar(32) | 이 보기의 키입니다. 요청과 연결된 고유 숫자 ID입니다. | 시스템의 모든 요청에서 고유합니다. |
session_id |
nvarchar(32) | 이 쿼리가 실행된 세션과 연결된 고유 숫자 ID입니다. sys.dm_pdw_exec_sessions 참조하세요. | |
status |
nvarchar(32) | 요청의 현재 상태입니다. |
Running , Suspended , Completed , Cancelled Failed . |
submit_time |
날짜/시간 | 실행을 위해 요청이 제출된 시간입니다. | 유효한 날짜/시간은 현재 시간과 start_time 같거나 작습니다. |
start_time |
날짜/시간 | 요청 실행이 시작된 시간입니다. |
NULL 큐에 대기된 요청의 경우 그렇지 않으면 유효한 datetime이 현재 시간과 작거나 같습니다. |
end_compile_time |
날짜/시간 | 엔진이 요청 컴파일을 완료한 시간입니다. |
NULL 아직 컴파일되지 않은 요청의 경우 그렇지 않으면 유효한 날짜/시간이 현재 시간보다 start_time 작거나 같습니다. |
end_time |
날짜/시간 | 요청 실행이 완료, 실패 또는 취소된 시간입니다. |
NULL 큐에 대기 중 또는 활성 요청의 경우 그렇지 않으면 유효한 날짜/시간이 현재 시간과 작거나 같습니다. |
total_elapsed_time |
int | 요청이 시작된 후 실행 시간이 밀리초 단위로 경과되었습니다. | 0과 사이의 차이 submit_time 와 end_time .정 total_elapsed_time 수의 최대값을 초과하면 total_elapsed_time 최대값이 됩니다. 이 조건은 "최대값이 초과되었습니다."라는 경고를 생성합니다.최대값(밀리초)은 24.8일과 같습니다. |
label |
nvarchar(255) | 일부 SELECT 쿼리 문과 연결된 선택적 레이블 문자열입니다. |
, ,a-z ,A-Z 0-9 를 _ 포함하는 모든 문자열입니다. |
error_id |
nvarchar(36) | 이 단계와 연결된 오류의 고유 ID(있는 경우)입니다. |
NULL 오류가 발생하지 않으면 in request_id sys.dm_pdw_errors 일치 request_id 하여 해당 특정 request_id 오류에 대해 나열된 모든 오류를 볼 수 있습니다. |
database_id |
int | 명시적 컨텍스트에서 사용하는 데이터베이스의 식별자입니다(예: USE DB_X ). |
sys.databases에서 참조 database_id 하세요. |
command |
nvarchar(4000) | 사용자가 제출한 요청의 전체 텍스트를 보유합니다. | 유효한 쿼리 또는 요청 텍스트입니다. 4,000바이트보다 긴 쿼리는 잘립니다. |
resource_class |
nvarchar(20) | 이 요청에 사용되는 워크로드 그룹입니다. | 정적 리소스 클래스staticrc10 staticrc20 staticrc30 staticrc40 staticrc50 staticrc60 staticrc70 staticrc80 동적 리소스 클래스 SmallRC MediumRC LargeRC XLargeRC |
importance |
nvarchar(128) | 요청이 실행되는 중요도 설정입니다. 이는 이 워크로드 그룹 및 공유 리소스에 대한 워크로드 그룹 전체에서 요청의 상대적 중요도입니다. 분류자에서 지정된 중요도는 워크로드 그룹 중요도 설정을 재정의합니다. 적용 대상: Azure Synapse Analytics |
NULL low below_normal normal (기본값)above_normal 높음 |
group_name |
sysname | 리소스 group_name 를 활용하는 요청의 경우 요청이 실행 중인 워크로드 그룹의 이름입니다. 요청이 리소스를 활용하지 않는 경우는 다음과 같습니다 group_name NULL .적용 대상: Azure Synapse Analytics |
|
classifier_name |
sysname | 리소스를 활용하는 요청의 경우 리소스 및 중요도를 할당하는 데 사용되는 분류자의 이름입니다. | |
resource_allocation_percentage |
decimal(5,2) | 요청에 할당된 리소스의 백분율 양입니다. 적용 대상: Azure Synapse Analytics |
|
result_cache_hit |
int | 완료된 쿼리에서 결과 집합 캐시를 사용했는지 여부를 자세히 설명합니다. 적용 대상: Azure Synapse Analytics |
1 = 결과 집합 캐시 적중 0 = 결과 집합 캐시 누락 NULL = 쿼리가 SELECT 쿼리가 아닙니다.음수 정수 값 = 결과 집합 캐싱이 사용되지 않은 이유입니다. 자세한 내용은 설명 섹션을 참조하세요. |
client_correlation_id |
nvarchar(255) | 클라이언트 세션에 대한 선택적 사용자 정의 이름입니다. 세션에 대해 설정하려면 .를 호출합니다 sp_set_session_context 'client_correlation_id', <CorrelationIDName> . 를 사용하여 해당 값을 SELECT SESSION_CONTEXT (N'client_correlation_id') 검색할 수 있습니다. 자세한 내용은 sp_set_session_context 참조하세요. |
|
command2 |
nvarchar(max) | 사용자가 제출한 요청의 전체 텍스트를 보유합니다. 4,000자보다 긴 쿼리를 보유합니다. | 유효한 쿼리 또는 요청 텍스트입니다.
NULL = 4000자 이하의 쿼리입니다. 이러한 쿼리의 경우 열 아래에 command 전체 텍스트를 찾을 수 있습니다. |
설명
이 보기에서 유지되는 최대 행에 대한 자세한 내용은 용량 제한 문서의 메타데이터 섹션을 참조하세요.
열의 result_cache_hit
음수 정수 값은 쿼리의 결과 집합을 캐시할 수 없는 모든 적용된 이유의 비트맵 값입니다. 이 열은 |일 수 있습니다. (비트 OR) 다음 값 중 하나 이상의 을 반환합니다. 예를 들어 -36
두 가지 이유(() 및 (-0x04
-4
)의 비트 OR-0x20
있습니다 -32
.
값 | 10진수 값 | Description |
---|---|---|
1 |
1 |
결과 집합 캐시 적중 |
0x00 |
0 |
결과 집합 캐시 누락 |
-0x01 |
-1 |
데이터베이스에서 결과 집합 캐싱을 사용할 수 없습니다. |
-0x02 |
-2 |
세션에서 결과 집합 캐싱을 사용할 수 없습니다. |
-0x04 |
-4 |
쿼리에 대한 데이터 원본이 없기 때문에 결과 집합 캐싱을 사용할 수 없습니다. |
-0x08 |
-8 |
행 수준 보안 조건자 때문에 결과 집합 캐싱을 사용할 수 없습니다. |
-0x10 |
-16 |
쿼리에서 시스템 테이블, 임시 테이블 또는 외부 테이블을 사용하여 결과 집합 캐싱을 사용할 수 없습니다. |
-0x20 |
-32 |
쿼리에 런타임 상수, 사용자 정의 함수 또는 비결정적 함수가 포함되어 있으므로 결과 집합 캐싱을 사용할 수 없습니다. |
-0x40 |
-64 |
예상 결과 집합 크기가 10GB보다 크기 때문에 결과 집합 캐싱을 사용할 수 없습니다. |
-0x80 |
-128 |
결과 집합에 크기가 64KB보다 큰 행이 포함되어 있으므로 결과 집합 캐싱을 사용할 수 없습니다. |
-0x100 |
-256 |
세분화된 동적 데이터 마스킹을 사용하므로 결과 집합 캐싱을 사용할 수 없습니다. |
사용 권한
VIEW DATABASE STATE
권한이 필요합니다.
보안
sys.dm_pdw_exec_requests
는 데이터베이스별 권한에 따라 쿼리 결과를 필터링하지 않습니다. 권한이 있는 로그인은 VIEW DATABASE STATE
모든 데이터베이스에 대한 결과 쿼리 결과를 가져올 수 있습니다.
Warning
공격자는 단순히 sys.dm_pdw_exec_requests
사용 권한이 있고 데이터베이스별 권한이 없으면 특정 데이터베이스 개체에 대한 정보를 검색하는 데 사용할 VIEW DATABASE STATE
수 있습니다.