Aracılığıyla paylaş


sys.dm_db_resource_stats

Şunlar için geçerlidir:Azure SQL DatabaseMicrosoft Fabric'te SQL veritabanı

Azure SQL Veritabanı'ndaki bir veritabanı için CPU, G/Ç ve bellek tüketimi döndürür. Etkinlik olmasa bile her 15 saniyede bir bir satır vardır. Geçmiş veriler yaklaşık bir saat boyunca tutulur.

Uyarı

sys.dm_db_resource_stats Azure SQL Yönetilen Örneği'nde desteklenmez. Bunun yerine sys.server_resource_stats katalog görünümünü kullanın.

Kolonlar Veri Türü Description
end_time datetime UTC saati geçerli raporlama aralığının sonunu gösterir.
avg_cpu_percent ondalık (5,2) Hizmet katmanı sınırının yüzdesinde ortalama işlem kullanımı.
avg_data_io_percent ondalık (5,2) Hizmet katmanı sınırının yüzdesinde ortalama veri G/Ç kullanımı. Hiper Ölçek veritabanları için bkz. Kaynak kullanımı istatistiklerinde veri GÇ.
avg_log_write_percent ondalık (5,2) Ortalama işlem günlüğü, hizmet katmanı sınırının yüzdesi olarak (MB/sn cinsinden) yazar.
avg_memory_usage_percent ondalık (5,2) Hizmet katmanı sınırının yüzdesi cinsinden ortalama bellek kullanımı.

Bu, arabellek havuzu sayfaları ve In-Memory OLTP nesnelerinin depolanması için kullanılan belleği içerir.
xtp_storage_percent ondalık (5,2) Raporlama aralığının sonunda havuz sınırının yüzdesi olarak In-Memory OLTP için depolama kullanımı. Bu, şu In-Memory OLTP nesnelerinin depolanması için kullanılan belleği içerir: bellek için iyileştirilmiş tablolar, dizinler ve tablo değişkenleri. Ayrıca, bellek için iyileştirilmiş tablolarda ALTER TABLE işlemlerini işlemek için kullanılan belleği de içerir.

In-Memory OLTP veritabanında kullanılmıyorsa 0 döndürür.
max_worker_percent ondalık (5,2) Veritabanının hizmet katmanı sınırının yüzdesinde en fazla eş zamanlı çalışan (istek).
max_session_percent ondalık (5,2) Veritabanının hizmet katmanı sınırının yüzdesinde eşzamanlı oturum sayısı üst sınırı.
dtu_limit int Bu aralık boyunca bu veritabanı için geçerli en yüksek veritabanı DTU ayarı. Sanal çekirdek tabanlı modeli kullanan veritabanları için bu sütundur NULL.
cpu_limit ondalık (5,2) Bu aralıkta bu veritabanı için sanal çekirdek sayısı. DTU tabanlı modeli kullanan veritabanları için bu sütundur NULL.
avg_instance_cpu_percent ondalık (5,2) Örnek sınırının yüzdesi olarak havuzu barındıran veritabanı altyapısı örneğinin ortalama CPU kullanımı. Bir dakikalık ayrıntı düzeyinde bildirilir ve hem kullanıcı hem de iç iş yükleri tarafından CPU kullanımını içerir.
avg_instance_memory_percent ondalık (5,2) Veritabanını barındıran SQL Server örneği için ortalama bellek kullanımı. Hem kullanıcı hem de iç iş yükleri tarafından bellek kullanımını içerir.
avg_login_rate_percent ondalık (5,2) Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmiyor. Gelecekteki uyumluluk garanti değildir.
replica_role int Geçerli çoğaltma rolünü temsil eder.

0 - Birincil
1 - Yüksek kullanılabilirlik (HA) ikincil
2 - Coğrafi çoğaltma ileticisi
3 - Adlandırılmış çoğaltma

ReadOnly amaca amaç ile bağlanıldığında 1'i raporlar. Amacı belirtmeden ReadOnly coğrafi ikincil bir sunucuya bağlanıyorsanız, 2'yi bir coğrafi çoğaltma ileticisi bağlantısını yansıtacak şekilde raporlar. Amacı belirtmeden ReadOnly adlandırılmış bir çoğaltmaya bağlanıyorsanız, rapor 3.

Tip

Bu sınırlar ve hizmet katmanları hakkında daha fazla bağlam için Hizmet Katmanları, Azure SQL Veritabanı'nda sorgu performansını el ile ayarlama ve SQL Veritabanı kaynak sınırları ve kaynak idaresi konularına bakın.

Permissions

Bu görünüm için VIEW DATABASE STATE izin gerekir.

Açıklamalar

tarafından sys.dm_db_resource_stats döndürülen veriler, çalıştırdığınız hizmet katmanı/performans düzeyi için izin verilen en yüksek sınırların yüzdesi olarak ifade edilir.

Veritabanı son 60 dakika içinde başka bir sunucuya devredildiyse, görünüm yalnızca yük devretmeden bu yana geçen süre boyunca veri döndürür.

Bu verilerin daha uzun saklama süresine sahip daha az ayrıntılı bir görünümü için Azure SQL Veritabanı'ndaki katalog görünümünü kullanın sys.resource_stats . Bu görünüm her 5 dakikada bir veri yakalar ve geçmiş verileri 14 gün boyunca tutar. Daha fazla bilgi için bkz. sys.resource_stats.

Veritabanı bir elastik havuzun üyesi olduğunda, yüzde değerleri olarak sunulan kaynak istatistikleri, elastik havuz yapılandırmasında ayarlandığı şekilde veritabanları için maksimum sınırın yüzdesi olarak ifade edilir.

Örnekler

Aşağıdaki örnek, Azure SQL Veritabanı'nda veya Azure SQL Yönetilen Örneği'nde şu anda bağlı olan veritabanı için en son sırada sıralanmış kaynak kullanım verilerini döndürür.

SELECT * FROM sys.dm_db_resource_stats ORDER BY end_time DESC;

Aşağıdaki örnek, son bir saat içinde kullanıcı veritabanı için performans düzeyinde izin verilen en yüksek DTU sınırının yüzdesi açısından ortalama DTU tüketimini tanımlar. Bu yüzdeler tutarlı bir şekilde 100'e yakın% performans düzeyini artırmayı göz önünde bulundurun.

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;

Aşağıdaki örnek CPU yüzdesi, veri ve günlük G/Ç'si ve son saat içindeki bellek tüketimi için ortalama ve maksimum değerleri döndürür.

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;