sys.pdw_nodes_column_store_segments (Transact-SQL)
Si applica a: Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)
Contiene una riga per ogni colonna in un indice columnstore.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
partition_id | bigint | Indica l'ID della partizione. Valore univoco all'interno di un database. |
hobt_id | bigint | ID dell'heap o dell'indice ad albero B (HoBT) per la tabella a cui appartiene l'indice columnstore. |
column_id | int | ID della colonna columnstore. |
segment_id | int | ID del segmento della colonna. Per garantire la compatibilità con le versioni precedenti, il nome della colonna continua a essere chiamato segment_id anche se si tratta dell'ID del rowgroup. È possibile identificare in modo univoco un segmento usando <hobt_id, partition_id, column_id> segment_id<>. |
version | int | Versione del formato del segmento di colonna. |
encoding_type | int | Tipo di codifica usata per il segmento: 1 = VALUE_BASED - non stringa/binario senza dizionario (simile a 4 con alcune varianti interne) 2 = VALUE_HASH_BASED - colonna non stringa/binaria con valori comuni nel dizionario 3 = STRING_HASH_BASED - colonna stringa/binaria con valori comuni nel dizionario 4 = STORE_BY_VALUE_BASED - non stringa/binaria senza dizionario 5 = STRING_STORE_BY_VALUE_BASED - stringa/binaria senza dizionario Tutte le codifiche sfruttano la codifica bit-packaging e run-length, quando possibile. |
row_count | int | Numero di righe nel gruppo di righe. |
has_nulls | int | 1 se il segmento di colonna contiene valori Null. |
base_id | bigint | ID valore di base se viene usato il tipo di codifica 1. Se il tipo di codifica 1 non viene usato, base_id è impostato su 1. |
grandezza | float | Grandezza se viene usato il tipo di codifica 1. Se il tipo di codifica 1 non viene usato, la grandezza è impostata su 1. |
primary__dictionary_id | int | ID del dizionario primario. Un valore diverso da zero punta al dizionario locale per questa colonna nel segmento corrente(ad esempio il rowgroup). Il valore -1 indica che non esiste un dizionario locale per questo segmento. |
secondary_dictionary_id | int | ID del dizionario secondario. Un valore diverso da zero punta al dizionario locale per questa colonna nel segmento corrente(ad esempio il rowgroup). Il valore -1 indica che non esiste un dizionario locale per questo segmento. |
min_data_id | bigint | ID dati minimo nel segmento di colonna. |
max_data_id | bigint | ID dati massimo nel segmento di colonna. |
null_value | bigint | Valore utilizzato per rappresentare i valori Null. |
on_disk_size | bigint | Dimensioni del segmento in byte. |
pdw_node_id | int | Identificatore univoco di un nodo di Azure Synapse Analytics. |
Esempi: Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW)
Unire sys.pdw_nodes_column_store_segments con altre tabelle di sistema per determinare il numero di segmenti columnstore per tabella logica.
SELECT sm.name as schema_nm
, tb.name as table_nm
, nc.name as col_nm
, nc.column_id
, COUNT(*) as segment_count
FROM sys.[schemas] sm
JOIN sys.[tables] tb ON sm.[schema_id] = tb.[schema_id]
JOIN sys.[pdw_table_mappings] mp ON tb.[object_id] = mp.[object_id]
JOIN sys.[pdw_nodes_tables] nt ON nt.[name] = mp.[physical_name]
JOIN sys.[pdw_nodes_partitions] np ON np.[object_id] = nt.[object_id]
AND np.[pdw_node_id] = nt.[pdw_node_id]
AND np.[distribution_id] = nt.[distribution_id]
JOIN sys.[pdw_nodes_columns] nc ON np.[object_id] = nc.[object_id]
AND np.[pdw_node_id] = nc.[pdw_node_id]
AND np.[distribution_id] = nc.[distribution_id]
JOIN sys.[pdw_nodes_column_store_segments] rg ON rg.[partition_id] = np.[partition_id]
AND rg.[pdw_node_id] = np.[pdw_node_id]
AND rg.[distribution_id] = np.[distribution_id]
AND rg.[column_id] = nc.[column_id]
GROUP BY sm.name
, tb.name
, nc.name
, nc.column_id
ORDER BY table_nm
, nc.column_id
, sm.name ;
Autorizzazioni
È richiesta l'autorizzazione VIEW SERVER STATE.
Vedi anche
Viste del catalogo di Azure Synapse Analytics e Parallel Data Warehouse
CREATE COLUMNSTORE INDEX (Transact-SQL)
sys.pdw_nodes_column_store_row_groups (Transact-SQL)
sys.pdw_nodes_column_store_dictionaries (Transact-SQL)