Buffer Pool ‘da Kayıtın Olup Olmadığını Öğrenme

Reading Time: 2 minutes

Merhaba Arkadaşlar ,

Kayıdımızın Buffer Pool (Data Cache ) ‘da mı yoksa disk üzerinde mi yer alıyor bunu nasıl öğrenebiliriz sorusuna cevap arayacağız.

Önceki makalemizde bir kayıdın fiziksel konumunu bulmayı öğrenmiştik. Buradan yola çıkacak olur isek Undocumented olan {6189a1005e4f6dc613b8beb03d694ce50f0902974162d6a7dea944a970422cc9}{6189a1005e4f6dc613b8beb03d694ce50f0902974162d6a7dea944a970422cc9}phsyloc{6189a1005e4f6dc613b8beb03d694ce50f0902974162d6a7dea944a970422cc9}{6189a1005e4f6dc613b8beb03d694ce50f0902974162d6a7dea944a970422cc9} komutunu kullanarak ilgili kayıdın PAGE_ID ‘sini buluyoruz.

Örneklerimiz bir önceki makalemizde oluşturduğumuz Test veritabanı ve tablosu üzerinden gerçekleşmektedir. Datanın Fiziksel Konumunu Nasıl Buluruz makalemize gitmek için TIKLAYIN…

PageId

 

Gördüğünüz üzere Page_Id değerine erişmiş bulunmaktayız. Bu işlemden sonra datamızın Buffer ‘da yer alıp almadığını aşağıda ki DMV yi kullanarak sorgulayalım.

Bu işlem sonucunda aşağıda ki gibi bir ekran gelmektedir.

BufferData

 

Eğer bu sorgulama sonucunda bir kayıt dönüyor ise ilgili kayıda ait PAGE Buffer ‘da yer alıyor demektir. Bu durum sonucunda o kayıt ile ilgili işlem yapılmak istendiğinde SQL Server disk üzerine gidip fiziksel I/O yapmak yerine Buffer ‘da bulunan veriye erişerek daha hızlı bir sonuç elde edileceğinden performans artışına sebebiyet vermiş olacaktır.

 

Leave a Reply

Your email address will not be published. Required fields are marked *