sys.resource_stats(Azure SQL Database)
적용 대상: Azure SQL Database
Azure SQL 데이터베이스의 데이터베이스에 대한 CPU 사용량 및 스토리지 데이터를 반환합니다. 데이터는 5분 간격 이내로 수집 및 집계됩니다. 각 사용자 데이터베이스에 대해 리소스 사용량이 변경되는 5분마다 보고 기간마다 하나의 행이 있습니다. 반환되는 데이터에는 CPU 사용량, 스토리지 크기 변경 및 데이터베이스 SKU 수정이 포함됩니다. 변경되지 않은 유휴 데이터베이스에는 5분 간격마다 행이 없을 수 있습니다. 기록 데이터는 약 14일 동안 보존됩니다.
참고 항목
이 동적 관리 뷰는 Azure SQL Database에만 적용됩니다. Azure SQL Managed Instance에 해당하는 보기의 경우 sys.server_resource_stats 사용합니다.
열 | 데이터 형식 | 설명 |
---|---|---|
start_time | 날짜/시간 | 5분 보고 간격의 시작을 나타내는 UTC 시간입니다. |
end_time | 날짜/시간 | 5분 보고 간격의 끝을 나타내는 UTC 시간입니다. |
database_name | nvarchar(128) | 사용자 데이터베이스의 이름입니다. |
sku | nvarchar(128) | 데이터베이스의 서비스 계층입니다. 가능한 값은 다음과 같습니다. Basic Standard Premium 범용 중요 비즈니스용 |
storage_in_megabytes | float | 데이터베이스 데이터, 인덱스, 저장 프로시저 및 메타데이터를 포함하여 기간 동안 최대 스토리지 크기(메가바이트)입니다. |
avg_cpu_percent | decimal(5,2) | 서비스 계층의 제한에 대한 백분율의 평균 컴퓨팅 사용률입니다. |
avg_data_io_percent | decimal(5,2) | 서비스 계층 한도를 기준으로 하는 평균 I/O 활용률입니다. 하이퍼스케일 데이터베이스의 경우 리소스 사용률 통계의 데이터 IO를 참조 하세요. |
avg_log_write_percent | decimal(5,2) | 서비스 계층 제한의 백분율로 평균 쓰기 리소스 사용률입니다. |
max_worker_percent | decimal(5,2) | 데이터베이스의 서비스 계층 제한에 따라 백분율로 최대 동시 작업자(요청)입니다. 최대값은 현재 동시 작업자 수의 15초 샘플을 기준으로 5분 간격으로 계산됩니다. |
max_session_percent | decimal(5,2) | 데이터베이스의 서비스 계층 제한에 따라 백분율로 최대 동시 세션 수입니다. 최대값은 현재 동시 세션 수의 15초 샘플을 기준으로 5분 간격으로 계산됩니다. |
dtu_limit | int | 이 간격 동안 이 데이터베이스에 대한 현재 최대 데이터베이스 DTU 설정입니다. |
xtp_storage_percent | 10진수(5,2) | 메모리 내 OLTP에 대한 스토리지 사용률(보고 간격 종료 시) 서비스 계층 제한의 백분율입니다. 여기에는 메모리 최적화 테이블, 인덱스 및 테이블 변수와 같은 메모리 내 OLTP 개체의 스토리지에 사용되는 메모리가 포함됩니다. ALTER TABLE 작업을 처리하는 데 사용되는 메모리도 포함됩니다. 자세한 내용은 메모리 내 OLTP 모니터링을 참조하세요. 메모리 내 OLTP가 데이터베이스에서 사용되지 않는 경우 0을 반환합니다. |
avg_login_rate_percent | 10진수(5,2) | 정보를 제공하기 위해서만 확인됩니다. 지원 안 됨. 향후 호환성은 보장되지 않습니다. |
avg_instance_cpu_percent | 10진수(5,2) | SQL Database 프로세스의 백분율로 사용되는 평균 데이터베이스 CPU 사용량입니다. |
avg_instance_memory_percent | 10진수(5,2) | SQL Database 프로세스의 백분율로 사용되는 평균 데이터베이스 메모리 사용량입니다. |
cpu_limit | 10진수(5,2) | 이 간격 동안 이 데이터베이스의 vCore 수입니다. DTU 기반 모델을 사용하는 데이터베이스의 경우 이 열은 NULL입니다. |
allocated_storage_in_megabytes | float | 데이터베이스 데이터를 저장하는 데 사용할 수 있는 형식이 지정된 파일 공간(MB)입니다. 형식이 지정된 파일 공간을 할당된 데이터 공간이라고도 합니다. 자세한 내용은 다음을 참조하세요 . SQL Database의 파일 공간 관리 |
팁
이러한 제한 및 서비스 계층에 대한 자세한 컨텍스트는 서비스 계층 항목을 참조하세요.
사용 권한
Azure SQL Database에서 이 보기는 가상 master
데이터베이스에 연결할 수 있는 권한이 있는 모든 사용자 역할에서 사용할 수 있습니다.
설명
반환된 sys.resource_stats
데이터는 실행 중인 서비스 계층/성능 수준에 대해 허용되는 최대 제한의 백분율로 표시됩니다.
데이터베이스가 탄력적 풀의 멤버인 경우 백분율 값으로 표시되는 리소스 통계는 탄력적 풀 구성에 설정된 대로 데이터베이스에 대한 최대 제한의 백분율로 표현됩니다.
이 데이터에 대한 보다 세부적인 보기를 보려면 사용자 데이터베이스에서 동적 관리 뷰를 사용합니다 sys.dm_db_resource_stats
. 이 보기는 15초마다 데이터를 캡처하고 1시간 동안 기록 데이터를 유지 관리합니다. 자세한 내용은 sys.dm_db_resource_stats(Azure SQL Database)를 참조하세요.
참고 항목
동적 관리 뷰 를 사용하여 CPU 사용률 문제를 해결하는 방법에 대한 자세한 내용은 Azure SQL Database 성능 의 CPU 성능 문제 식별 또는 Azure SQL Managed Instance 성능의 CPU 성능 문제 식별을 참조하세요.
최근 메모리 부족 이벤트를 검토하려면 sys.dm_os_out_of_memory_events 사용합니다.
예제
쿼리sys.resource_stats
하려면 논리 서버의 master
데이터베이스에 연결해야 합니다.
다음 예제에서는 지난 1주 동안 평균 CPU 사용률의 80% 이상을 사용하는 모든 데이터베이스를 반환합니다.
DECLARE @s datetime;
DECLARE @e datetime;
SET @s= DateAdd(d,-7,GetUTCDate());
SET @e= GETUTCDATE();
SELECT database_name, AVG(avg_cpu_percent) AS Average_CPU_Utilization
FROM sys.resource_stats
WHERE start_time BETWEEN @s AND @e
GROUP BY database_name
HAVING AVG(avg_cpu_percent) >= 80;
GO
참고 항목
- 서비스 계층
- 서비스 계층 기능 및 제한
- sys.dm_os_out_of_memory_events(Azure SQL Database 및 Azure SQL Managed Instance)
다음 단계
다음 문서에서 관련 개념에 대해 자세히 알아보세요.