sys.internal_partitions (T-SQL)
Berlaku untuk: SQL Server 2016 (13.x) dan Azure SQL Database Azure SQL Managed Instance yang lebih baru
Mengembalikan satu baris untuk setiap set baris yang melacak data internal untuk indeks penyimpan kolom pada tabel berbasis disk. Kumpulan baris ini bersifat internal untuk indeks penyimpan kolom dan melacak baris yang dihapus, pemetaan grup baris, dan grup baris penyimpanan delta. Mereka melacak data untuk masing-masing untuk setiap partisi tabel; setiap tabel memiliki setidaknya satu partisi. SQL Server membuat ulang kumpulan baris setiap kali membangun kembali indeks penyimpan kolom.
Nama kolom | Jenis data | Deskripsi |
---|---|---|
partition_id | bigint | ID partisi untuk partisi ini. Ini unik dalam database. |
object_id | int | ID objek untuk tabel yang berisi partisi. |
index_id | int | ID indeks untuk indeks penyimpan kolom yang ditentukan pada tabel. 1 = indeks penyimpan kolom berkluster 2 = indeks penyimpan kolom tidak berkluster |
partition_number | int | Nomor partisi. 1 = partisi pertama tabel yang dipartisi, atau partisi tunggal tabel yang tidak dipartisi. 2 = partisi kedua, dan sebagainya. |
internal_object_type | kecil | Objek kumpulan baris yang melacak data internal untuk indeks penyimpan kolom. 2 = COLUMN_STORE_DELETE_BITMAP 3 = COLUMN_STORE_DELTA_STORE 4 = COLUMN_STORE_DELETE_BUFFER 5 = COLUMN_STORE_MAPPING_INDEX |
internal_object_type_desc | nvarchar(60) | COLUMN_STORE_DELETE_BITMAP - Indeks bitmap ini melacak baris yang ditandai sebagai dihapus dari penyimpan kolom. Bitmap adalah untuk setiap grup baris karena partisi dapat memiliki baris dalam beberapa grup baris. Barisnya adalah yang masih ada secara fisik dan mengambil ruang di penyimpanan kolom. COLUMN_STORE_DELTA_STORE - Menyimpan grup baris, yang disebut grup baris, yang belum dikompresi ke dalam penyimpanan kolumnar. Setiap partisi tabel dapat memiliki nol atau lebih grup baris deltastore. COLUMN_STORE_DELETE_BUFFER - Untuk mempertahankan penghapusan ke indeks penyimpan kolom nonclustered yang dapat diperbarui. Saat kueri menghapus baris dari tabel rowstore yang mendasar, buffer penghapusan melacak penghapusan dari penyimpan kolom. Ketika jumlah baris yang dihapus melebihi 1048576, baris tersebut digabungkan kembali ke bitmap penghapusan berdasarkan utas Tuple Mover latar belakang atau dengan perintah Reorganisasi eksplisit. Pada titik waktu tertentu, gabungan bitmap penghapusan dan buffer penghapusan mewakili semua baris yang dihapus. COLUMN_STORE_MAPPING_INDEX - Hanya digunakan ketika indeks penyimpan kolom berkluster memiliki indeks noncluster sekunder. Ini memetakan kunci indeks nonclustered ke grup baris dan ID baris yang benar di penyimpan kolom. Ini hanya menyimpan kunci untuk baris yang berpindah ke grup baris yang berbeda; ini terjadi ketika grup baris delta dikompresi ke dalam penyimpan kolom, dan ketika operasi penggabungan menggabungkan baris dari dua grup baris yang berbeda. |
Row_group_id | int | ID untuk grup baris deltastore. Setiap partisi tabel dapat memiliki nol atau lebih grup baris deltastore. |
hobt_id | bigint | ID objek himpunan baris internal (HoBT). Ini adalah kunci yang baik untuk bergabung dengan DMV lain untuk mendapatkan informasi lebih lanjut tentang karakteristik fisik kumpulan baris internal. |
baris | bigint | Perkiraan jumlah baris dalam partisi ini. |
data_compression | kecil | Status pemadatan untuk set baris: 0 = TIDAK ADA 1 = BARIS 2 = HALAMAN |
data_compression_desc | nvarchar(60) | Status kompresi untuk setiap partisi. Nilai yang mungkin untuk tabel rowstore adalah NONE, ROW, dan PAGE. Nilai yang mungkin untuk tabel penyimpan kolom adalah COLUMNSTORE dan COLUMNSTORE_ARCHIVE. |
optimize_for_sequential_key | bit | 1 = Partisi mengaktifkan pengoptimalan penyisipan halaman terakhir. 0 = Nilai default. Partisi memiliki pengoptimalan penyisipan halaman terakhir yang dinonaktifkan. |
Izin
Memerlukan keanggotaan dalam peran tersebut public
. Untuk informasi selengkapnya, lihat Konfigurasi Visibilitas Metadata.
Keterangan Umum
SQL Server membuat ulang indeks internal penyimpan kolom baru setiap kali membuat atau membangun kembali indeks penyimpan kolom.
Contoh
J. Menampilkan semua kumpulan baris internal untuk tabel
Contoh ini mengembalikan semua kumpulan baris penyimpan kolom internal untuk tabel. Anda juga dapat menggunakan hobt_id untuk menemukan informasi selengkapnya tentang set baris tertentu.
SELECT i.object_id, i.index_id, i.name, p.hobt_id, p.internal_object_type_id, p.internal_object_type_desc
FROM sys.internal_partitions AS p
JOIN sys.indexes AS i
on i.object_id = p.object_id
WHERE p.object_id = OBJECT_ID ( '<table name' ) ;
Lihat Juga
Tampilan Katalog Objek (Transact-SQL)
Tampilan Katalog (Transact-SQL)
Mengkueri TANYA JAWAB Umum Katalog Sistem SQL Server