Partager via


sys.pdw_nodes_partitions (Transact-SQL)

S’applique à: Azure Synapse Analytics Analytics Platform System (PDW)

Contient une ligne pour chaque partition de toutes les tables et la plupart des types d’index dans une base de données Azure Synapse Analytics. Toutes les tables et index contiennent au moins une partition, qu’elles soient ou non partitionnés explicitement.

Nom de la colonne Type de données Description
partition_id bigint ID de la partition. Unique dans une base de données.
object_id int ID de l’objet auquel appartient cette partition. Chaque table ou vue comporte au moins une partition.
index_id int ID de l’index dans l’objet auquel appartient cette partition.
partition_number int Numéro de partition basé sur 1 dans l’index propriétaire ou le tas. Pour Azure Synapse Analytics, la valeur de cette colonne est 1.
hobt_id bigint ID du tas de données ou de l’arborescence B (HoBT) qui contient les lignes de cette partition.
rows bigint Nombre approximatif de lignes dans cette partition.
data_compression int Indique l'état de compression pour chaque partition :

0 = AUCUN

1 = LIGNE

2 = PAGE

3 = COLUMNSTORE
data_compression_desc nvarchar(60) Indique l'état de compression pour chaque partition. Les valeurs possibles sont NONE, ROW et PAGE.
pdw_node_id int Identificateur unique d’un nœud Azure Synapse Analytics.

autorisations

Nécessite l'autorisation CONTROL SERVER.

Exemples : Azure Synapse Analytics et Analytics Platform System (PDW)

Exemple A : Afficher des lignes dans chaque partition au sein de chaque distribution

S’applique à : Azure Synapse Analytics, Analytics Platform System (PDW)

Pour afficher le nombre de lignes de chaque partition dans chaque distribution, utilisez DBCC PDW_SHOWPARTITIONSTATS (SQL Server PDW).

Exemple B : Utilise des vues système pour afficher des lignes dans chaque partition de chaque distribution d’une table

S’applique à : Azure Synapse Analytics

Cette requête retourne le nombre de lignes dans chaque partition de chaque distribution de la table myTable.

SELECT o.name, pnp.index_id, pnp.partition_id, pnp.rows,   
    pnp.data_compression_desc, pnp.pdw_node_id  
FROM sys.pdw_nodes_partitions AS pnp  
JOIN sys.pdw_nodes_tables AS NTables  
    ON pnp.object_id = NTables.object_id  
AND pnp.pdw_node_id = NTables.pdw_node_id  
JOIN sys.pdw_table_mappings AS TMap  
    ON NTables.name = TMap.physical_name 
    AND substring(TMap.physical_name,40, 10) = pnp.distribution_id 
JOIN sys.objects AS o  
    ON TMap.object_id = o.object_id  
WHERE o.name = 'myTable'  
ORDER BY o.name, pnp.index_id, pnp.partition_id;  

Voir aussi

Vues de catalogue Azure Synapse Analytics et Parallel Data Warehouse