sys.resource_stats (Azure SQL Database)
S’applique à : Azure SQL Database
Renvoie les données de stockage et l’utilisation d’UC pour une base de données dans Azure SQL Database. Les données sont collectées et agrégées dans des intervalles de cinq minutes. Pour chaque base de données utilisateur, il existe une ligne pour chaque fenêtre de création de rapports de cinq minutes dans laquelle il existe une modification de la consommation des ressources. Les données retournées incluent l’utilisation du processeur, la modification de la taille de stockage et la modification de la référence SKU de base de données. Les bases de données inactives sans modification peuvent ne pas avoir de lignes pour chaque intervalle de cinq minutes. Les données historiques sont conservées pendant environ 14 jours.
Remarque
Cette vue de gestion dynamique s’applique uniquement à Azure SQL Database. Pour une vue équivalente pour Azure SQL Managed Instance, utilisez sys.server_resource_stats.
Colonnes | Type de données | Description |
---|---|---|
start_time | datetime | Heure UTC indiquant le début de l’intervalle de création de rapports de cinq minutes. |
end_time | datetime | Heure UTC indiquant la fin de l’intervalle de création de rapports de cinq minutes. |
database_name | nvarchar(128) | Nom de la base de données utilisateur. |
sku | nvarchar(128) | Niveau de service de la base de données. Les valeurs possibles sont les suivantes : De base standard Premium Usage général Critique pour l’entreprise |
storage_in_megabytes | float | Taille de stockage maximale en mégaoctets pour la période, y compris les données de base de données, les index, les procédures stockées et les métadonnées. |
avg_cpu_percent | décimal(5,2) | Utilisation moyenne du calcul en pourcentage de la limite de la couche de service. |
avg_data_io_percent | décimal(5,2) | Utilisation moyenne des E-S en pourcentage en fonction de la limite du niveau de service. Pour les bases de données Hyperscale, consultez Les E/S de données dans les statistiques d’utilisation des ressources. |
avg_log_write_percent | décimal(5,2) | Utilisation moyenne de la ressource d'écriture en pourcentage de la limite de la couche de service. |
max_worker_percent | décimal(5,2) | Nombre maximal de workers simultanés (demandes) en pourcentage en fonction de la limite du niveau de service de la base de données. La valeur maximale est actuellement calculée pour l’intervalle de cinq minutes en fonction des échantillons de 15 secondes du nombre simultané de workers. |
max_session_percent | décimal(5,2) | Nombre maximal de sessions simultanées en pourcentage en fonction de la limite du niveau de service de la base de données. La valeur maximale est actuellement calculée pour l’intervalle de cinq minutes en fonction des échantillons de 15 secondes du nombre de sessions simultanées. |
dtu_limit | int | Paramètre DTU de base de données maximal actuel pour cette base de données pendant cet intervalle. |
xtp_storage_percent | décimal (5,2) | Utilisation du stockage pour OLTP en mémoire en pourcentage de la limite du niveau de service (à la fin de l’intervalle de création de rapports). Cela inclut la mémoire utilisée pour le stockage des objets OLTP en mémoire suivants : tables, index et variables de table optimisées en mémoire. Il inclut également la mémoire utilisée pour le traitement des opérations ALTER TABLE. Pour plus d’informations, consultez Monitor In-Memory OLTP. Retourne 0 si OLTP en mémoire n’est pas utilisé dans la base de données. |
avg_login_rate_percent | décimal (5,2) | Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie. |
avg_instance_cpu_percent | décimal (5,2) | Utilisation moyenne du processeur de base de données en pourcentage du processus SQL Database. |
avg_instance_memory_percent | décimal (5,2) | Utilisation moyenne de la mémoire de base de données en pourcentage du processus SQL Database. |
cpu_limit | décimal (5,2) | Nombre de vCores pour cette base de données pendant cet intervalle. Pour les bases de données utilisant le modèle DTU, cette colonne a la valeur NULL. |
allocated_storage_in_megabytes | float | Quantité d’espace de fichier mis en forme en Mo disponible pour le stockage des données de base de données. L’espace de fichier mis en forme est également appelé espace de données alloué. Pour plus d’informations, consultez : Gestion de l’espace de fichiers dans SQL Database |
Conseil
Pour plus de contexte sur ces limites et ces niveaux de service, consultez les rubriques Niveaux de service.
autorisations
Dans Azure SQL Database, cette vue est disponible pour tous les rôles d’utilisateur disposant des autorisations de connexion à la base de données virtuelle master
.
Notes
Les données retournées par sys.resource_stats
sont exprimées sous la forme d’un pourcentage des limites maximales autorisées pour le niveau de service/niveau de performances que vous exécutez.
Lorsqu’une base de données est membre d’un pool élastique, les statistiques de ressources présentées sous forme de valeurs de pourcentage sont exprimées en pourcentage de la limite maximale pour les bases de données définies dans la configuration du pool élastique.
Pour une vue plus granulaire de ces données, utilisez sys.dm_db_resource_stats
la vue de gestion dynamique dans une base de données utilisateur. Cette vue capture des données toutes les 15 secondes et conserve 1 heure d'historique des données. Pour plus d’informations, consultez sys.dm_db_resource_stats (Azure SQL Database).
Remarque
Pour plus d’informations sur la résolution des problèmes d’utilisation du processeur à l’aide de vues de gestion dynamique, consultez Identifier les problèmes de performances du processeur dans les performances d’Azure SQL Database ou identifier les problèmes de performances de l’UC dans les performances d’Azure SQL Managed Instance.
Pour passer en revue les événements de mémoire obsolètes récents, utilisez sys.dm_os_out_of_memory_events.
Exemples
Vous devez être connecté à la master
base de données sur le serveur logique pour interroger sys.resource_stats
.
L’exemple suivant retourne toutes les bases de données qui ont une moyenne d’au moins 80 % de l’utilisation du processeur au cours de la dernière semaine.
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
Voir aussi
- Niveaux de service
- Fonctionnalités et limites du niveau de service
- sys.dm_os_out_of_memory_events (Azure SQL Database et Azure SQL Managed Instance)
Étapes suivantes
En savoir plus sur les concepts associés dans les articles suivants :
- Supervision des performances de Microsoft Azure SQL Database et d’Azure SQL Managed Instance à l’aide de vues de gestion dynamique
- Supervision et réglage des performances dans Azure SQL Database et Azure SQL Managed Instance
- sys.resource_usage (Azure SQL Database et Azure SQL Managed Instance)
- sys.dm_db_resource_stats (Azure SQL Database et Azure SQL Managed Instance)