sys.pdw_nodes_column_store_segments (Transact-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 tumpukan 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 pengemasan bit dan pengodean panjang eksekusi 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, besarannya 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 LIHAT STATUS SERVER .
Lihat juga
Tampilan Katalog Azure Synapse Analytics dan Gudang Data Paralel
BUAT INDEKS PENYIMPAN KOLOM (Transact-SQL)
sys.pdw_nodes_column_store_row_groups (Transact-SQL)
sys.pdw_nodes_column_store_dictionaries (Transact-SQL)