sys.dm_db_session_space_usage (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsBase de données SQL dans Microsoft Fabric

Restitue le nombre de pages allouées et déallouées par chaque session dans la tempdb base de données pendant la durée de vie de la session.

Note

Pour obtenir ces données dans Azure Synapse Analytics, utilisez le nom sys.dm_pdw_nodes_db_session_space_usage. Cette syntaxe n’est pas prise en charge par le pool SQL serverless dans Azure Synapse Analytics.

Nom de la colonne Type de données Description
session_id smallint ID de session.

session_id mappe à session_id dans sys.dm_exec_sessions.
database_id smallint ID de la base de données.

Dans la base de données Azure SQL, les valeurs sont uniques au sein d’une base de données unique ou d’un pool élastique, mais pas dans un serveur logique.
user_objects_alloc_page_count bigint Nombre de pages réservées ou allouées aux objets utilisateur par cette session durant sa durée de vie.
user_objects_dealloc_page_count bigint Nombre de pages déallouées et non réservées aux objets utilisateur par cette session durant sa durée de vie.
internal_objects_alloc_page_count bigint Nombre de pages réservées ou allouées aux objets internes par cette session au cours de sa durée de vie.
internal_objects_dealloc_page_count bigint Nombre de pages déallouées et non réservées aux objets internes par cette session durant sa durée de vie.
user_objects_deferred_dealloc_page_count bigint Nombre de pages mises en file d’attente pour une réallocation différée par cette session au cours de sa durée de vie.
pdw_node_id int Applies à : Azure Synapse Analytics

Identificateur du nœud sur lequel cette distribution est activée.

Permissions

Sur SQL Server et SQL Managed Instance, vous devez disposer d’une autorisation VIEW SERVER STATE.

Sur sql Database de base, S0et objectifs de service S1, et pour les bases de données dans pools élastiques, le compte d’administrateur de serveur, le compte Administrateur Microsoft Entra ou l’appartenance au rôle serveur ##MS_ServerStateReader## est nécessaire. Sur tous les autres objectifs de service SQL Database, l’autorisation VIEW DATABASE STATE sur la base de données ou l’appartenance au rôle serveur ##MS_ServerStateReader## est requise.

Autorisations pour SQL Server 2022 et versions ultérieures

Nécessite VIEW une autorisation ÉTAT DE PERFORMANCE DU SERVEUR sur le serveur.

Remarques

Les pages IAM ne sont incluses dans aucun des décomptes d’allocation ou de déallocation rapportés par cette vue.

Les compteurs de pages s’initialisent à zéro au début d’une session et augmentent pendant la durée de vie de la session. Les compteurs suivent le nombre total de pages allouées ou déaffectées pour des tâches déjà terminées dans la session. Les compteurs ne se mettent à jour qu’à la fin d’une tâche. Ils ne reflètent pas les tâches en cours.

Lorsque la déallocation différée est utilisée, la user_objects_deferred_dealloc_page_count colonne rapporte les pages mises en file d’attente pour une déallocation ultérieure par un processus en arrière-plan. Lorsque la file d’attente est longue, la déallocation effective peut être retardée. En conséquence, l’utilisation de l’espace de session tempdb utilisateur rapportée par le user_objects_alloc_page_count - user_objects_dealloc_page_count - user_objects_deferred_dealloc_page_count calcul peut être temporairement inférieure à l’utilisation réelle.

Plusieurs demandes peuvent être simultanément actives dans une session. Une requête peut démarrer plusieurs threads ou tâches si c’est une requête parallèle.

Pour plus d’informations sur les sessions, les requêtes et les tâches, consultez sys.dm_exec_sessions (Transact-SQL), sys.dm_exec_requests (Transact-SQL) et sys.dm_os_tasks (Transact-SQL).

Objets utilisateur

Les compteurs de pages d’objets utilisateur incluent les objets suivants :

  • les tables et les index définis par l'utilisateur ;

  • les tables et les index système ;

  • les tables temporaires globales et les index ;

  • les tables temporaires locales et les index ;

  • Variables de table

  • les tables renvoyées dans les fonctions table.

Objets internes

Les compteurs de pages d’objet internes incluent les objets suivants :

  • les tables de travail des opérations de curseur ou de mise en attente et le stockage temporaire d'objets LOB ;

  • les fichiers de travail des opérations telles que les jointures de hachage ;

  • Tris

Jointures physiques

Diagramme des jointures physiques pour sys.dm_db_session_space_usage.

Cardinalités de la relation

De À Relationship
dm_db_session_space_usage.session_id dm_exec_sessions.session_id Un-à-un