Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:Azure SQL Database
Base de dados SQL no Microsoft Fabric
Retorna CPU, E/S e consumo de memória para um banco de dados no Banco de Dados SQL do Azure. Existe uma linha para cada 15 segundos, mesmo que não haja atividade. Os dados históricos são mantidos por aproximadamente uma hora.
Observação
sys.dm_db_resource_stats não tem suporte na Instância Gerenciada SQL do Azure. Em vez disso, use o sys.server_resource_stats modo de exibição de catálogo.
| Columns | Tipo de dados | Description |
|---|---|---|
end_time |
datetime | A hora UTC indica o fim do intervalo de relatório atual. |
avg_cpu_percent |
decimal (5,2) | Utilização média de computação em porcentagem do limite da camada de serviço. |
avg_data_io_percent |
decimal (5,2) | Utilização média de E/S de dados em porcentagem do limite da camada de serviço. Para bancos de dados de hiperescala, consulte E/S de dados em estatísticas de utilização de recursos. |
avg_log_write_percent |
decimal (5,2) | Média de gravações no log de transações (em MB/s) como porcentagem do limite da camada de serviço. |
avg_memory_usage_percent |
decimal (5,2) | Utilização média de memória em percentagem do limite do nível de serviço. Isso inclui memória usada para páginas de pool de buffer e armazenamento de In-Memory objetos OLTP. |
xtp_storage_percent |
decimal (5,2) | A utilização do armazenamento para In-Memory OLTP como uma porcentagem do limite do pool no final do intervalo de relatórios. Isso inclui memória usada para armazenamento dos seguintes objetos OLTP In-Memory: tabelas com otimização de memória, índices e variáveis de tabela. Ele também inclui memória usada para processar operações ALTER TABLE em tabelas com otimização de memória. Retorna 0 se In-Memory OLTP não for usado no banco de dados. |
max_worker_percent |
decimal (5,2) | Máximo de trabalhadores simultâneos (solicitações) em porcentagem do limite da camada de serviço do banco de dados. |
max_session_percent |
decimal (5,2) | Máximo de sessões simultâneas em porcentagem do limite da camada de serviço do banco de dados. |
dtu_limit |
int | Configuração atual máxima de DTU do banco de dados para este banco de dados durante esse intervalo. Para bancos de dados que usam o modelo baseado em vCore, esta coluna é NULL. |
cpu_limit |
decimal (5,2) | Número de vCores para este banco de dados durante esse intervalo. Para bancos de dados que usam o modelo baseado em DTU, esta coluna é NULL. |
avg_instance_cpu_percent |
decimal (5,2) | Utilização média da CPU pela instância do mecanismo de banco de dados que hospeda o pool, como uma porcentagem do limite de instância. Relatado em granularidade de um minuto e inclui a utilização da CPU por cargas de trabalho internas e de usuário. |
avg_instance_memory_percent |
decimal (5,2) | Uso médio de memória para a instância do SQL Server que hospeda o banco de dados. Inclui a utilização de memória por cargas de trabalho internas e de usuário. |
avg_login_rate_percent |
decimal (5,2) | Identificado apenas para fins informativos. Não suportado. A compatibilidade futura não é garantida. |
replica_role |
int | Representa a função de réplica atual. 0 - Primário 1 - Alta disponibilidade (HA) secundária 2 - Encaminhador de replicação geográfica 3 - Réplica nomeada Relatórios 1 quando ligados intencionalmente ReadOnly a qualquer secundário legível. Se estiver se conectando a um geosecundário sem especificar ReadOnly a intenção, os relatórios 2 refletirão uma conexão com um encaminhador de replicação geográfica. Se estiver se conectando a uma réplica nomeada sem especificar ReadOnly a intenção, informará 3. |
Sugestão
Para obter mais contexto sobre esses limites e camadas de serviço, consulte os tópicos Camadas de serviço, Ajustando manualmente o desempenho da consulta no Banco de Dados SQL do Azure e Limites de recursos e governança de recursos do Banco de Dados SQL.
Permissions
Esta vista requer VIEW DATABASE STATE permissão.
Observações
Os dados retornados por sys.dm_db_resource_stats são expressos como uma porcentagem dos limites máximos permitidos para a camada de serviço/nível de desempenho que você está executando.
Se o banco de dados tiver feito failover para outro servidor nos últimos 60 minutos, a exibição retornará dados apenas pelo tempo decorrido desde o failover.
Para obter uma exibição menos granular desses dados com um período de retenção mais longo, use a exibição de sys.resource_stats catálogo no Banco de Dados SQL do Azure. Esta vista captura dados a cada 5 minutos e mantém os dados históricos durante 14 dias. Para obter mais informações, consulte sys.resource_stats.
Quando um banco de dados é membro de um pool elástico, as estatísticas de recursos apresentadas como valores percentuais são expressas como a porcentagem do limite máximo para os bancos de dados, conforme definido na configuração do pool elástico.
Examples
O exemplo a seguir retorna dados de utilização de recursos ordenados pela hora mais recente para o banco de dados conectado atualmente no Banco de Dados SQL do Azure ou na Instância Gerenciada SQL do Azure.
SELECT * FROM sys.dm_db_resource_stats ORDER BY end_time DESC;
O exemplo a seguir identifica o consumo médio de DTU em termos de uma porcentagem do limite máximo permitido de DTU no nível de desempenho para o banco de dados de usuários na última hora. Considere aumentar o nível de desempenho à medida que essas porcentagens se aproximam de 100% de forma consistente.
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;
O exemplo a seguir retorna os valores médio e máximo para porcentagem de CPU, E/S de dados e log e consumo de memória na última hora.
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;