Bagikan melalui


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