sys.dm_db_resource_stats (Azure SQL Database dan Azure SQL Managed Instance)

Berlaku untuk:YesYesAzure SQL Managed Instance Azure SQL Database

Mengembalikan konsumsi CPU, I/O, dan memori untuk database Azure SQL Database atau Azure SQL Managed Instance. Terdapat satu baris untuk setiap 15 detik, bahkan jika tidak ada aktivitas di database. Data riwayat dipelihara selama kurang lebih satu jam.

Kolom Jenis Data Deskripsi
end_time datetime Waktu UTC menunjukkan akhir interval pelaporan saat ini.
avg_cpu_percent desimal (5,2) Pemanfaatan komputasi rata-rata dalam persentase batas tingkat layanan.
avg_data_io_percent desimal (5,2) Pemanfaatan I/O data rata-rata dalam persentase batas tingkat layanan. Untuk database Hyperscale, lihat IO Data dalam statistik pemanfaatan sumber daya.
avg_log_write_percent desimal (5,2) Rata-rata penulisan log transaksi (dalam MBps) sebagai persentase dari batas tingkat layanan.
avg_memory_usage_percent desimal (5,2) Pemanfaatan memori rata-rata dalam persentase batas tingkat layanan.

Ini termasuk memori yang digunakan untuk halaman kumpulan buffer dan penyimpanan objek OLTP In-Memory.
xtp_storage_percent desimal (5,2) Storage pemanfaatan untuk In-Memory OLTP dalam persentase batas tingkat layanan (pada akhir interval pelaporan). Ini termasuk memori yang digunakan untuk penyimpanan objek OLTP In-Memory berikut: tabel, indeks, dan variabel tabel yang dioptimalkan memori. Ini juga termasuk memori yang digunakan untuk memproses operasi ALTER TABLE.

Mengembalikan 0 jika In-Memory OLTP tidak digunakan dalam database.
max_worker_percent desimal (5,2) Pekerja bersamaan maksimum (permintaan) dalam persentase batas tingkat layanan database.
max_session_percent desimal (5,2) Sesi bersamaan maksimum dalam persentase batas tingkat layanan database.
dtu_limit int Pengaturan DTU database maks saat ini untuk database ini selama interval ini. Untuk database yang menggunakan model berbasis vCore, kolom ini adalah NULL.
cpu_limit desimal (5,2) Jumlah vCore untuk database ini selama interval ini. Untuk database yang menggunakan model berbasis DTU, kolom ini adalah NULL.
avg_instance_cpu_percent desimal (5,2) Penggunaan CPU rata-rata untuk instans SQL Server menghosting database, seperti yang diukur oleh sistem operasi. Termasuk pemanfaatan CPU oleh beban kerja pengguna dan internal.
avg_instance_memory_percent desimal (5,2) Penggunaan memori rata-rata untuk instans SQL Server yang menghosting database, seperti yang diukur oleh sistem operasi. Termasuk pemanfaatan memori oleh beban kerja pengguna dan internal.
avg_login_rate_percent desimal (5,2) Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.
replica_role int Mewakili peran replika saat ini dengan 0 sebagai primer, 1 sebagai sekunder, dan 2 sebagai penerus (primer geo-sekunder). Anda akan melihat "1" ketika terhubung dengan niat ReadOnly ke semua sekunder yang dapat dibaca. Jika menyambungkan ke geo-sekunder tanpa menentukan niat ReadOnly, Anda akan melihat "2" (menyambungkan ke penerus).

Tip

Untuk konteks selengkapnya tentang batas dan tingkat layanan ini, lihat topik Tingkat Layanan, Menyetel performa kueri secara manual di Azure SQL Database, dan SQL Database batas sumber daya dan tata kelola sumber daya.

Izin

Tampilan ini memerlukan izin TAMPILKAN STATUS DATABASE .

Keterangan

Data yang dikembalikan oleh sys.dm_db_resource_stats dinyatakan sebagai persentase batas maksimum yang diizinkan untuk tingkat layanan/tingkat performa yang Anda jalankan.

Jika database di-failover ke server lain dalam 60 menit terakhir, tampilan hanya akan mengembalikan data untuk waktu tersebut sejak failover tersebut.

Untuk tampilan data yang kurang terperinci dengan periode retensi yang lebih lama, gunakan sys.resource_stats tampilan katalog dalam Azure SQL Database, atau sys.server_resource_stats tampilan katalog di Azure SQL Managed Instance. Tampilan ini menangkap data setiap 5 menit dan mempertahankan data historis selama 14 hari. Untuk informasi selengkapnya, lihat sys.resource_stats atau sys.server_resource_stats.

Ketika database adalah anggota kumpulan elastis, statistik sumber daya yang disajikan sebagai nilai persen dinyatakan sebagai persen dari batas maksimum untuk database sebagaimana diatur dalam konfigurasi kumpulan elastis.

Contoh

Contoh berikut mengembalikan data pemanfaatan sumber daya yang diurutkan berdasarkan waktu terbaru untuk database Azure SQL Database yang saat ini tersambung atau Azure SQL Managed Instance.

SELECT * FROM sys.dm_db_resource_stats ORDER BY end_time DESC;  

Contoh berikut mengidentifikasi konsumsi DTU rata-rata dalam hal persentase batas DTU maksimum yang diizinkan dalam tingkat performa untuk database pengguna selama satu jam terakhir. Pertimbangkan untuk meningkatkan tingkat performa karena persentase ini mendekati 100% secara konsisten.

SELECT end_time,   
  (SELECT Max(v)    
   FROM (VALUES (avg_cpu_percent), (avg_data_io_percent), (avg_log_write_percent)) AS    
   value(v)) AS [avg_DTU_percent]   
FROM sys.dm_db_resource_stats;  

Contoh berikut mengembalikan nilai rata-rata dan maksimum untuk persentase CPU, data dan I/O log, dan konsumsi memori selama satu jam terakhir.

SELECT    
    AVG(avg_cpu_percent) AS 'Average CPU Utilization In Percent',   
    MAX(avg_cpu_percent) AS 'Maximum CPU Utilization In Percent',   
    AVG(avg_data_io_percent) AS 'Average Data IO In Percent',   
    MAX(avg_data_io_percent) AS 'Maximum Data IO In Percent',   
    AVG(avg_log_write_percent) AS 'Average Log Write I/O Throughput Utilization In Percent',   
    MAX(avg_log_write_percent) AS 'Maximum Log Write I/O Throughput Utilization In Percent',   
    AVG(avg_memory_usage_percent) AS 'Average Memory Usage In Percent',   
    MAX(avg_memory_usage_percent) AS 'Maximum Memory Usage In Percent'   
FROM sys.dm_db_resource_stats;  

Lihat juga