SQL Server, objek Manajer Buffer

Berlaku untuk:SQL Server

Objek Buffer Manager menyediakan penghitung untuk memantau cara SQL Server menggunakan:

  • Memori untuk menyimpan halaman data.

  • Penghitung untuk memantau I/O fisik saat SQL Server membaca dan menulis halaman database.

  • Ekstensi kumpulan buffer untuk memperluas cache buffer dengan menggunakan penyimpanan non-volatil cepat seperti solid-state drive (SSD).

Memantau memori dan penghitung yang digunakan oleh SQL Server membantu Anda menentukan:

  • Jika hambatan ada dari memori fisik yang tidak memadai. Jika tidak dapat menyimpan data yang sering diakses dalam cache, SQL Server harus mengambil data dari disk.

  • Jika performa kueri dapat ditingkatkan dengan menambahkan lebih banyak memori, atau dengan membuat lebih banyak memori tersedia untuk cache data atau struktur internal SQL Server.

  • Seberapa sering SQL Server perlu membaca data dari disk. Dibandingkan dengan operasi lain, seperti akses memori, I/O fisik menghabiskan banyak waktu. Meminimalkan I/O fisik dapat meningkatkan performa kueri.

Objek Performa Manajer Buffer

Tabel ini menjelaskan objek performa SQL Server Buffer Manager .

Penghitung Pengelola Buffer SQL Server Deskripsi
Halaman penulis latar belakang/detik Jumlah halaman yang dihapus untuk memberlakukan pengaturan interval pemulihan.
Rasio hit cache buffer Menunjukkan persentase halaman yang ditemukan di cache buffer tanpa harus membaca dari disk. Rasionya adalah jumlah total temuan cache yang dibagi dengan jumlah total pencarian cache selama beberapa ribu akses halaman terakhir. Setelah jangka waktu yang lama, rasio bergerak sangat sedikit. Karena membaca dari cache jauh lebih murah daripada membaca dari disk, Anda ingin rasio ini tinggi. Umumnya, Anda dapat meningkatkan rasio hit buffer cache dengan meningkatkan jumlah memori yang tersedia untuk SQL Server atau dengan menggunakan fitur ekstensi kumpulan buffer.
Basis rasio hit singgahan buffer Hanya untuk penggunaan internal.
Halaman titik pemeriksaan/detik Menunjukkan jumlah halaman yang dibersihkan ke disk per detik oleh titik pemeriksaan atau operasi lain yang mengharuskan semua halaman kotor dibersihkan.
Halaman database Menunjukkan jumlah halaman di kumpulan buffer dengan konten database.
Halaman yang dialokasikan ekstensi Jumlah total halaman cache non-bebas dalam file ekstensi kumpulan buffer.
Halaman bebas ekstensi Jumlah total halaman cache gratis dalam file ekstensi kumpulan buffer.
Ekstensi yang digunakan sebagai persentase Persentase file halaman ekstensi kumpulan buffer yang ditempati oleh halaman manajer buffer.
Penghitung IO berutang ekstensi Panjang antrean I/O untuk file ekstensi kumpulan buffer.
Pengeluaran halaman ekstensi/detik Jumlah halaman yang dikeluarkan dari file ekstensi kumpulan buffer per detik.
Halaman ekstensi dibaca/detik Jumlah halaman yang dibaca dari file ekstensi kumpulan buffer per detik.
Waktu tidak direferensikan halaman ekstensi Rata-rata detik halaman akan tetap berada di ekstensi kumpulan buffer tanpa referensi ke halaman tersebut.
Halaman ekstensi menulis/detik Jumlah halaman yang ditulis ke file ekstensi kumpulan buffer per detik.
Kios daftar gratis/detik Menunjukkan jumlah permintaan per detik yang harus menunggu halaman gratis.
Kelopak Pengontrol Integral Kelereng pengontrol integral untuk kumpulan buffer terakhir digunakan, kali -10 miliar.
Lazy writes/dtk Menunjukkan jumlah buffer yang ditulis per detik oleh penulis malas manajer buffer. Penulis malas adalah proses sistem yang membilas batch buffer kotor dan tua (buffer yang berisi perubahan yang harus ditulis kembali ke disk sebelum buffer dapat digunakan kembali untuk halaman yang berbeda) dan membuatnya tersedia untuk proses pengguna. Penulis malas menghilangkan kebutuhan untuk melakukan titik pemeriksaan yang sering untuk membuat buffer yang tersedia.
Harapan hidup halaman Menunjukkan jumlah detik halaman akan tetap berada di kumpulan buffer tanpa referensi.
Pencarian halaman/detik Menunjukkan jumlah permintaan per detik untuk menemukan halaman di kumpulan buffer.
Baca halaman/detik Menunjukkan jumlah pembacaan halaman database fisik yang dikeluarkan per detik. Statistik ini menampilkan jumlah total bacaan halaman fisik di semua database. Karena I/O fisik mahal, Anda mungkin dapat meminimalkan biaya, baik dengan menggunakan cache data yang lebih besar, indeks cerdas, dan kueri yang lebih efisien, atau dengan mengubah desain database.
Penulisan halaman/detik Menunjukkan jumlah penulisan halaman database fisik yang dikeluarkan per detik.
Halaman readahead/detik Menunjukkan jumlah halaman yang dibaca per detik untuk mengantisipasi penggunaan.
Waktu readahead/detik Waktu (mikrodetik) menghabiskan penerbitan readahead.
Halaman target Jumlah halaman yang ideal di kumpulan buffer.

Contoh

Anda mulai menjelajahi penghitung kinerja kueri dalam objek ini menggunakan kueri T-SQL ini pada tampilan manajemen dinamis sys.dm_os_performance_counters :

SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%Buffer Manager%';