sys.pdw_nodes_column_store_segments (Transact-SQL)
Область применения: Azure Synapse Analytics Analytics Platform System (PDW)
Содержит по одной строке для каждого столбца в индексе columnstore.
Имя столбца | Тип данных | Description |
---|---|---|
partition_id | bigint | Указывает идентификатор секции. Уникален в базе данных. |
hobt_id | bigint | Идентификатор кучи или индекс сбалансированного дерева (hobt) для таблицы, в которой содержится индекс columnstore. |
column_id | int | Идентификатор столбца columnstore. |
segment_id | int | Идентификатор сегмента столбца. Для обратной совместимости имя столбца продолжает вызываться segment_id даже если это идентификатор группы строк. Вы можете однозначно определить сегмент с помощью <hobt_id, partition_id, column_id, <segment_id>>. |
version | int | Версия формата сегмента столбца. |
encoding_type | int | Тип кодировки, используемой для этого сегмента: 1 = VALUE_BASED - нестрочная или двоичная без словаря (аналогично 4 с некоторыми внутренними вариациями) 2 = VALUE_HASH_BASED — нестрочного или двоичного столбца с общими значениями в словаре 3 = STRING_HASH_BASED — строковый или двоичный столбец с общими значениями в словаре 4 = STORE_BY_VALUE_BASED — нестрочная или двоичная без словаря 5 = STRING_STORE_BY_VALUE_BASED — строка или двоичный файл без словаря Все кодировки по возможности используют кодировку битовой упаковки и длины выполнения. |
row_count | int | Число строк в группе строк. |
has_nulls | int | Значение 1, если сегмент столбца содержит значения NULL. |
base_id | bigint | Базовый идентификатор значения, если используется тип 1 кодирования. Если тип кодирования 1 не используется, base_id имеет значение 1. |
величина | float | Величина, если используется тип 1 кодировки. Если тип кодирования 1 не используется, величина имеет значение 1. |
primary__dictionary_id | int | Идентификатор основного словаря. Значение, отличное от нуля, указывает на локальный словарь для этого столбца в текущем сегменте (т. е. группу строк). Значение -1 указывает, что для этого сегмента отсутствует локальный словарь. |
secondary_dictionary_id | int | Идентификатор дополнительного словаря. Значение, отличное от нуля, указывает на локальный словарь для этого столбца в текущем сегменте (т. е. группу строк). Значение -1 указывает, что для этого сегмента отсутствует локальный словарь. |
min_data_id | bigint | Минимальный идентификатор данных в сегменте столбца. |
max_data_id | bigint | Максимальный идентификатор данных в сегменте столбца. |
null_value | bigint | Значение, используемое для представления значений NULL. |
on_disk_size | bigint | Размер сегмента в байтах. |
pdw_node_id | int | Уникальный идентификатор узла Azure Synapse Analytics. |
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
Присоединяйте sys.pdw_nodes_column_store_segments с другими системными таблицами, чтобы определить количество сегментов columnstore на логическую таблицу.
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 ;
Разрешения
Необходимо разрешение VIEW SERVER STATE.
См. также
Представления каталога Azure Synapse Analytics и 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)