sys.pdw_nodes_partitions (Transact-SQL)

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

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

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 cette partition appartient. Chaque table ou vue comporte au moins une partition.
index_id int ID de l'index de l'objet auquel cette partition appartient.
partition_number int Numéro de partition basé sur 1 dans l’index ou le tas propriétaire. 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 dans chaque partition au sein de chaque distribution, utilisez DBCC PDW_SHOWPARTITIONSTATS (SQL Server PDW).

Exemple B : utilise des vues système pour afficher les 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