sys.dm_exec_procedure_stats (Transact-SQL)

 

CETTE RUBRIQUE S’APPLIQUE À : ouiSQL Server (à partir de la version 2008)ouiAzure SQL DatabaseouiAzure SQL Data WarehouseouiParallel Data Warehouse

Retourne les statistiques sur les performances des agrégats pour les procédures stockées mises en cache. La vue retourne une ligne pour chaque plan de procédure stockée mise en cache et la durée de vie de la ligne correspond à celle pendant laquelle la procédure stockée reste mise en cache. Lorsqu'une procédure stockée est supprimée du cache, la ligne correspondante est éliminée de cette vue. À ce stade, un événement de trace SQL de statistiques de performances est déclenché comme sys.dm_exec_query_stats.

Dans Base de données Azure SQL, les vues de gestion dynamique ne peuvent pas exposer des informations qui ont un impact sur la relation contenant-contenu de la base de données, ou exposer des informations concernant d'autres bases de données auxquelles l'utilisateur a accès. Pour éviter d'exposer ces informations, chaque ligne contenant des données qui n'appartient pas au locataire connecté est filtrée.

REMARQUE : une requête initiale de sys.dm_exec_procedure_stats peut entraîner des résultats incorrects s’il existe une charge de travail en cours d’exécution sur le serveur. Des résultats plus précis peuvent être déterminés en réexécutant la requête.

REMARQUE pour l’entrepôt de données SQL Azure ! Appeler à partir de Azure SQL Data Warehouse ou Parallel Data Warehouse, utilisez le nom sys.dm_pdw_nodes_exec_procedure_stats.

Nom de colonneType de donnéesDescription
database_idintID de base de données dans lequel réside la procédure stockée.
object_idintNuméro d'identification d'objet de la procédure stockée.
typechar(2)Type de l'objet :

P = procédure stockée SQL

PC = Procédure stockée d'assembly (CLR)

X = Procédure stockée étendue
type_descnvarchar (60)Description du type d'objet :

SQL_STORED_PROCEDURE

CLR_STORED_PROCEDURE

EXTENDED_STORED_PROCEDURE
sql_handlevarbinary(64)Cela peut être utilisé pour mettre en corrélation avec des requêtes de sys.dm_exec_query_stats qui ont été exécutées à partir de cette procédure stockée.
plan_handlevarbinary(64)Identificateur du plan en mémoire. Cet identificateur est temporaire et il reste constant uniquement tant que le plan est dans le cache. Cette valeur peut être utilisée avec le sys.dm_exec_cached_plans vue de gestion dynamique.

Sa valeur est toujours 0x000 lorsqu'une procédure stockée compilée en mode natif interroge une table optimisée en mémoire.
cached_timedate/heureHeure à laquelle la procédure stockée a été ajoutée au cache.
last_execution_timedate/heureHeure de dernière exécution de la procédure stockée.
execution_countbigintNombre d'exécutions de la procédure stockée depuis sa dernière compilation.
total_worker_timebigintTemps processeur total, en microsecondes, consommé par les exécutions de cette procédure stockée depuis sa compilation.

Pour les procédures stockées compilées en mode natif, total_worker_time peut être inexact si plusieurs exécutions sont réalisées en moins d’une milliseconde.
last_worker_timebigintTemps processeur, en microsecondes, consommé lors de la dernière exécution de la procédure stockée. 1
min_worker_timebigintTemps processeur minimal, en microsecondes, consommé par cette procédure stockée lors d'une seule exécution. 1
max_worker_timebigintTemps processeur maximal, en microsecondes, consommé par cette procédure stockée lors d'une seule exécution. 1
total_physical_readsbigintNombre total de lectures physiques effectuées par les exécutions de cette procédure stockée depuis sa compilation.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
last_physical_readsbigintNombre de lectures physiques effectuées lors de la dernière exécution de la procédure stockée.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
min_physical_readsbigintNombre minimal de lectures physiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
max_physical_readsbigintNombre maximal de lectures physiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
total_logical_writesbigintNombre total d'écritures logiques effectuées par les exécutions de cette procédure stockée depuis sa compilation.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
last_logical_writesbigintNuméro du nombre de pages du pool de mémoires tampons modifiées lors de la dernière exécution du plan. Si une page est déjà modifiée, aucune écriture n'est comptée.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
min_logical_writesbigintNombre minimal d'écritures logiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
max_logical_writesbigintNombre maximal d'écritures logiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
total_logical_readsbigintNombre total de lectures logiques effectuées par les exécutions de cette procédure stockée depuis sa compilation.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
last_logical_readsbigintNombre de lectures logiques effectuées lors de la dernière exécution de la procédure stockée.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
min_logical_readsbigintNombre minimal de lectures logiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
max_logical_readsbigintNombre maximal de lectures logiques effectuées par cette procédure stockée lors d'une seule exécution.

Sa valeur est toujours 0 lors de l'interrogation d'une table optimisée en mémoire.
total_elapsed_timebigintTemps total écoulé, en microsecondes, pour les exécutions de cette procédure stockée.
last_elapsed_timebigintTemps écoulé, en microsecondes, pour la dernière exécution de cette procédure stockée.
min_elapsed_timebigintTemps minimal écoulé, en microsecondes, pour les différentes exécutions de cette procédure stockée.
max_elapsed_timebigintTemps maximal écoulé, en microsecondes, pour les différentes exécutions de cette procédure stockée.
« pdw_node_id »intS’applique à: Azure SQL Data Warehouse, Parallel Data Warehouse

L’identificateur pour le nœud de cette distribution.

1 des procédures stockées compilées en mode natif lors de la collecte de statistiques est activé, des temps de travail est collecté en millisecondes. Si la requête s'exécute en moins d'une milliseconde, la valeur est 0.

Nécessite l'autorisation VIEW SERVER STATE sur le serveur.

Les statistiques de la vue sont mises à jour lorsqu'une exécution de procédure stockée se termine.

L'exemple suivant retourne des informations sur les dix principales procédures stockées identifiées d'après le temps moyen écoulé.

SELECT TOP 10 d.object_id, d.database_id, OBJECT_NAME(object_id, database_id) 'proc name',   
    d.cached_time, d.last_execution_time, d.total_elapsed_time,  
    d.total_elapsed_time/d.execution_count AS [avg_elapsed_time],  
    d.last_elapsed_time, d.execution_count  
FROM sys.dm_exec_procedure_stats AS d  
ORDER BY [total_worker_time] DESC;  

Vues de gestion dynamique et fonctions ( ; liées à l’exécution Transact-SQL ) ;
Sys.dm_exec_sql_text ( ; Transact-SQL ) ;
Sys.dm_exec_query_stats ( ; Transact-SQL ) ;
Vues de gestion dynamique et fonctions ( ; Transact-SQL ) ;
Sys.dm_exec_trigger_stats ( ; Transact-SQL ) ;

Ajouts de la communauté

AJOUTER
Afficher: