SET STATISTICS IO ile Sorgu Istatistiklerine Göz Atmak

SET STATISTICS IO ile Sorgu Istatistiklerine Göz Atmak

Yazdigimiz sorgunun olusturdugu disk aktivitelerine bakmak için SET STATISTICS IO özelligini kullanabiliriz. Bu sayede ayni sonucu veren farkli sorgularin hangisinin daha çok disk üzerinde islem yaptigini görebilir ve sorgumuzu optimize etmek için gerekli degisiklikleri yapabiliriz.

Çok büyük veriler ile çalisirken, birden fazla join islemi kullanan sorgular yazdigimizda bazen çok uzun süre beklemek zorunda kaliyoruz. STATISTIC IO özelligini kullanarak sorgu üzerinde degisiklikler yaparak ayni sonucu üreten ama daha az disk okumasi yapan sorguyu seçebiliriz.

Kullanimi :

SET STATISTICS IO { ON | OFF }

STATISTICS IO ON oldugu zaman bundan sonra çalisan ayni baglantidaki tüm sorgular için IO istatistikleri tutulur ve sorgu bitiminde sonuç döner. Eger yeniden kapatmak istersek STATISTICS IO OFF dememiz gerekir.

.

Örnek :

SET STATISTICS IO ON
select m.MakaleBaslik,y.AdSoyad from Makale m
inner join Yazar y on y.YazarKey = m.YazarKey

Yukaridaki Sorgu sonucu asagidaki gibi bir istatistik bilgisi döner.

Table ‘Makale’. Scan count 1, logical reads 25
, physical reads 0, read-ahead reads 0
, lob logical reads 0, lob physical reads 0
, lob read-ahead reads 0.

Table ‘Yazar’. Scan count 1, logical reads 4
, physical reads 0, read-ahead reads 0
, lob logical reads 0, lob physical reads 0
, lob read-ahead reads 0.

STATISTICS IO sonucu verilen temel bilgiler asagidaki gibidir

Çikti Anlami
Table Tablonun Adi
Scan count Index veya tablo scan sayisi
logical reads Data Cache’inden okunan page sayisi
physical reads Diskten okunan page sayisi
read-ahead reads Sorgu için cache’e konulan page sayisi
.

Büyük kayitlar içeren tablolarinizi index tanimlayarak ve index tanimlamadan IO sonuçlarini inceleyerek degisimin farkini görebilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir