17 Haziran 2015 Çarşamba

SQL Server 2016'da bir başka tempdb değişikliği

Merhabalar,

Geçenlerde SQL Server 2016 ile birlikte, kurulum ekranından tempdb dosya sayısının arttırılabilir olduğundan bahsetmiştim.

Bildiğiniz gibi tempdb'de, özellikle yoğun ortamlarda yaşanan kronik SGAM (Shared Global Allocation Map) ve PFS (Page Free Space) çekişme sorunu vardır. Yeni bir nesne yaratıldığında ilk 8 sayfa için farklı Extent'ler kullanılıyor. Daha sonraki sayfalar için ise tek bir Extent kullanılıyor. SGAM sayfası da tüm bu Extent'leri takip etmek için kullanılıyor ve çok sık ve fazla yeni nesne oluşturulduğunda bu da sıkışıklığa neden oluyor. Bu sorunu TF 1118 kullanarak atlatıyoruz. Yine çok sık ve fazla nesnenin oluşturulduğu ortamlarda PFS sorunları yaşanıyor, bunu aşmak için de CPU sayımıza göre tempdb'ye yeni veri dosyaları ekliyoruz.

SQL Server 2016'da tempdb ile ilgili yapılan tek değişiklik yukarıda bahsettiğim kurulum ekranından tempdb için yeni veri dosyası eklemek değilmiş. SQL Server 2016'da tempdb'de yapılan tüm sayfa ayırma işlemleri aynı Extent'lerde gerçekleştirilecekmiş. Hal böyle olunca, SQL Server 2016'da artık TF 1118 kullanmamıza gerek kalmayacak. Gereği kadar veri dosyalarını da kurulumda eklersek, tempdb'de yaşanan kronik sorunların büyük bir kısmı işin en başında atlatılmış olacak.

Sevgiler,
Ekrem Önsoy

Hiç yorum yok: