Sdílet prostřednictvím


sys.dm_db_resource_stats

Platí na:Azure SQL DatabaseSQL databáze v Microsoft Fabric

Vrátí využití procesoru, vstupně-výstupních operací a paměti pro databázi ve službě Azure SQL Database. Jeden řádek existuje každých 15 sekund, i když neexistuje žádná aktivita. Historická data se uchovávají přibližně po dobu jedné hodiny.

Poznámka:

sys.dm_db_resource_stats Azure SQL Managed Instance nepodporuje. Místo toho použijte zobrazení katalogu sys.server_resource_stats .

Columns Datový typ Description
end_time datetime Čas UTC označuje konec aktuálního intervalu generování sestav.
avg_cpu_percent desetinné číslo (5,2) Průměrné využití výpočetních prostředků v procentech limitu úrovně služby
avg_data_io_percent desetinné číslo (5,2) Průměrné využití vstupně-výstupních operací dat v procentech limitu úrovně služby Informace o databázích Hyperscale najdete v tématu Vstupně-výstupní operace dat ve statistikách využití prostředků.
avg_log_write_percent desetinné číslo (5,2) Průměrné zápisy transakčního protokolu (v MB/s) v procentech limitu úrovně služby.
avg_memory_usage_percent desetinné číslo (5,2) Průměrné využití paměti v procentech limitu úrovně služby

To zahrnuje paměť používanou pro stránky fondu vyrovnávací paměti a úložiště In-Memory objektů OLTP.
xtp_storage_percent desetinné číslo (5,2) Využití úložiště pro In-Memory OLTP jako procento limitu fondu na konci intervalu vytváření sestav. To zahrnuje paměť použitou pro ukládání následujících In-Memory objektů OLTP: tabulky optimalizované pro paměť, indexy a proměnné tabulky. Obsahuje také paměť používanou ke zpracování operací ALTER TABLE v tabulkách optimalizovaných pro paměť.

Vrátí hodnotu 0, pokud se v databázi nepoužívá In-Memory OLTP.
max_worker_percent desetinné číslo (5,2) Maximální počet souběžných pracovních procesů (požadavků) v procentech limitu úrovně služby databáze.
max_session_percent desetinné číslo (5,2) Maximální počet souběžných relací v procentech limitu úrovně služby databáze.
dtu_limit int Aktuální nastavení DTU databáze pro tuto databázi během tohoto intervalu. Pro databáze využívající model založený na virtuálních jádrech je NULLtento sloupec .
cpu_limit desetinné číslo (5,2) Počet virtuálních jader pro tuto databázi během tohoto intervalu Pro databáze využívající model založený na DTU je NULLtento sloupec .
avg_instance_cpu_percent desetinné číslo (5,2) Průměrné využití procesoru instancí databázového stroje hostující fond jako procento limitu instance Hlášeno v minutě členitosti a zahrnuje využití procesoru uživateli i interními úlohami.
avg_instance_memory_percent desetinné číslo (5,2) Průměrné využití paměti pro instanci SQL Serveru hostující databázi. Zahrnuje využití paměti uživateli i interními úlohami.
avg_login_rate_percent desetinné číslo (5,2) Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.
replica_role int Představuje aktuální roli repliky.

0 – primární
1. Sekundární vysoká dostupnost (HA)
2. Předávání geografické replikace
3. Pojmenovaná replika

Sestavy 1, pokud jsou propojeny se záměrem ReadOnly jakékoli čitelné sekundární. Pokud se připojujete k geografické sekundární oblasti bez zadání ReadOnly záměru, hlásí 2, aby odráželo připojení k nástroji pro předávání geografické replikace. Pokud se připojujete k pojmenované replice bez zadání záměru ReadOnly , sestavy 3.

Povolení

Toto zobrazení vyžaduje VIEW DATABASE STATE oprávnění.

Poznámky

Vrácená data sys.dm_db_resource_stats se vyjadřují jako procento maximálních povolených limitů pro úroveň služby nebo úroveň výkonu, kterou používáte.

Pokud došlo k převzetí služeb při selhání databáze na jiný server během posledních 60 minut, zobrazení vrátí data pouze po dobu od tohoto převzetí služeb při selhání.

Pro méně podrobné zobrazení těchto dat s delší dobou uchovávání použijte sys.resource_stats zobrazení katalogu ve službě Azure SQL Database. Toto zobrazení zaznamenává data každých 5 minut a uchovává historická data po dobu 14 dnů. Další informace najdete v tématu sys.resource_stats.

Pokud je databáze členem elastického fondu, statistiky prostředků zobrazené jako procentuální hodnoty se vyjadřují jako procento maximálního limitu pro databáze nastavené v konfiguraci elastického fondu.

Examples

Následující příklad vrátí data o využití prostředků seřazená nejnovějším časem pro aktuálně připojenou databázi ve službě Azure SQL Database nebo ve spravované instanci Azure SQL.

SELECT * FROM sys.dm_db_resource_stats ORDER BY end_time DESC;

Následující příklad identifikuje průměrnou spotřebu DTU z hlediska procenta maximálního povoleného limitu DTU na úrovni výkonu uživatelské databáze za poslední hodinu. Zvažte zvýšení úrovně výkonu, protože tyto procentuální hodnoty téměř 100% konzistentní.

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;

Následující příklad vrátí průměrnou a maximální hodnotu pro procento procesoru, vstupně-výstupní operace a vstupně-výstupní operace protokolu a spotřebu paměti za poslední hodinu.

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;