sys.pdw_nodes_column_store_segments (Transact-SQL)
Se aplica a: Azure Synapse Analytics Analytics Platform System (PDW)
Contiene una fila para cada columna de un índice de almacén de columnas.
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
partition_id | bigint | Indica el identificador de partición. Es único en una base de datos. |
hobt_id | bigint | Identificador del montón o el índice de árbol b (hobt) para la tabla que contiene este índice de almacén de columnas. |
column_id | int | Identificador de la columna de almacén de columnas. |
segment_id | int | Identificador del segmento de columna. Por motivos de compatibilidad con versiones anteriores, se sigue llamando al nombre de columna segment_id aunque se trata del identificador del grupo de filas. Puede identificar de forma única un segmento mediante <hobt_id, partition_id, column_id>, <segment_id>. |
version | int | Versión del formato de segmento de columna. |
encoding_type | int | Tipo de codificación que se usa para ese segmento: 1 = VALUE_BASED: no string/binary sin diccionario (similar a 4 con algunas variaciones internas) 2 = VALUE_HASH_BASED: columna no string/binaria con valores comunes en el diccionario 3 = STRING_HASH_BASED: cadena/columna binaria con valores comunes en el diccionario 4 = STORE_BY_VALUE_BASED: no string/binary sin diccionario 5 = STRING_STORE_BY_VALUE_BASED: cadena/binario sin diccionario Todas las codificaciones aprovechan el empaquetado de bits y la codificación de longitud de ejecución siempre que sea posible. |
row_count | int | Número de filas del grupo de filas. |
has_nulls | int | 1 si el segmento de la columna tiene valores NULL. |
base_id | bigint | Id. de valor base si se usa el tipo de codificación 1. Si no se usa el tipo de codificación 1, base_id se establece en 1. |
magnitud | float | Magnitud si se usa el tipo de codificación 1. Si no se usa el tipo de codificación 1, la magnitud se establece en 1. |
primary__dictionary_id | int | Identificador del diccionario principal. Un valor distinto de cero apunta al diccionario local de esta columna en el segmento actual (es decir, el grupo de filas). Un valor de -1 indica que no hay ningún diccionario local para este segmento. |
secondary_dictionary_id | int | Identificador del diccionario secundario. Un valor distinto de cero apunta al diccionario local de esta columna en el segmento actual (es decir, el grupo de filas). Un valor de -1 indica que no hay ningún diccionario local para este segmento. |
min_data_id | bigint | Identificador de datos mínimo en el segmento de columna. |
max_data_id | bigint | Identificador máximo de datos en el segmento de columna. |
null_value | bigint | Valor usado para representar valores NULL. |
on_disk_size | bigint | Tamaño del segmento en bytes. |
pdw_node_id | int | Identificador único de un nodo de Azure Synapse Analytics. |
Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)
Una sys.pdw_nodes_column_store_segments con otras tablas del sistema para determinar el número de segmentos de almacén de columnas por tabla lógica.
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 ;
Permisos
Requiere el permiso VIEW SERVER STATE.
Consulte también
Vistas de catálogo de Azure Synapse Analytics y Almacenamiento de datos paralelos
CREATE COLUMNSTORE INDEX (Transact-SQL)
sys.pdw_nodes_column_store_row_groups (Transact-SQL)
sys.pdw_nodes_column_store_dictionaries (Transact-SQL)