sys.pdw_nodes_column_store_segments (T-SQL)
Berlaku untuk: Azure Synapse Analytics Analytics Platform System (PDW)
Berisi baris untuk setiap kolom dalam indeks penyimpan kolom.
Nama kolom | Jenis data | Deskripsi |
---|---|---|
partition_id | bigint | Menunjukkan ID partisi. Unik dalam database. |
hobt_id | bigint | ID indeks timbunan atau pohon B (hobt) untuk tabel yang memiliki indeks penyimpan kolom ini. |
column_id | int | ID kolom penyimpan kolom. |
segment_id | int | ID segmen kolom. Untuk kompatibilitas mundur, nama kolom terus dipanggil segment_id meskipun ini adalah ID grup baris. Anda dapat mengidentifikasi segmen secara unik menggunakan <hobt_id, partition_id, column_id>, <segment_id>. |
versi | int | Versi format segmen kolom. |
encoding_type | int | Jenis pengodean yang digunakan untuk segmen tersebut: 1 = VALUE_BASED - non-string/biner tanpa kamus (mirip dengan 4 dengan beberapa variasi internal) 2 = VALUE_HASH_BASED - kolom non-string/biner dengan nilai umum dalam kamus 3 = STRING_HASH_BASED - kolom string/biner dengan nilai umum dalam kamus 4 = STORE_BY_VALUE_BASED - non-string/biner tanpa kamus 5 = STRING_STORE_BY_VALUE_BASED - string/biner tanpa kamus Semua pengodean memanfaatkan pengodean bit-packing dan run-length jika memungkinkan. |
row_count | int | Jumlah baris dalam grup baris. |
has_nulls | int | 1 jika segmen kolom memiliki nilai null. |
base_id | bigint | ID nilai dasar jika pengodean tipe 1 sedang digunakan. Jika pengodean tipe 1 tidak digunakan, base_id diatur ke 1. |
Besarnya | float | Besaran jika pengodean tipe 1 sedang digunakan. Jika pengodean tipe 1 tidak digunakan, besaran diatur ke 1. |
primary__dictionary_id | int | ID kamus utama. Nilai bukan nol menunjuk ke kamus lokal untuk kolom ini di segmen saat ini (yaitu grup baris). Nilai -1 menunjukkan bahwa tidak ada kamus lokal untuk segmen ini. |
secondary_dictionary_id | int | ID kamus sekunder. Nilai bukan nol menunjuk ke kamus lokal untuk kolom ini di segmen saat ini (yaitu grup baris). Nilai -1 menunjukkan bahwa tidak ada kamus lokal untuk segmen ini. |
min_data_id | bigint | ID data minimum di segmen kolom. |
max_data_id | bigint | ID data maksimum di segmen kolom. |
null_value | bigint | Nilai yang digunakan untuk mewakili null. |
on_disk_size | bigint | Ukuran segmen dalam byte. |
pdw_node_id | int | Pengidentifikasi unik simpul Azure Synapse Analytics. |
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Gabungkan sys.pdw_nodes_column_store_segments dengan tabel sistem lain untuk menentukan jumlah segmen penyimpan kolom per tabel logis.
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 ;
Izin
Memerlukan izin TAMPILKAN STATUS SERVER.
Lihat Juga
Tampilan Katalog Gudang Data Azure Synapse Analytics dan Paralel
BUAT INDEKS PENYIMPAN KOLOM (Transact-SQL)
sys.pdw_nodes_column_store_row_groups (T-SQL)
sys.pdw_nodes_column_store_dictionaries (T-SQL)