SQL Server’da Fill Factor İle Performans Artışı Sağlayın

Fill Factor değerini kullanarak index fragmantasyonunu geciktirebilirsiniz.

Fill Factor değerini kullanarak index fragmantasyonunu geciktirebilirsiniz.

Veritabanlarında indexler sorgulama performansı için kritik öneme sahiptir. Oluşturulan indexler tablolara gelen insert, update, delete işlemlerine istinaden sürekli güncellenir. Ancak bu işlemler zamanla indexlerde fragmantasyon denilen yapısal bozukluklara sebep olmaya başlar. Bu durumda index yeterli performansta çalışamaz ve sorgulamalar yavaşlamaya başlar.

İndexlerde fragmantasyonu ortadan kaldırmak için rebuild işlemi uygulanabilir. Ancak özellikle büyük indexlerde bu işlemin sık uygulanması zordur. Bir veritabanında yüzlerce tablo olduğunu düşünürseniz bu işlemin zorluğunu daha iyi anlayabilirsiniz.

İndex fragmantasyonunu önlemek mümkün olmasa da geciktirmek mümkündür. Bu da SQL Server’da fill factor değeri ile sağlanmaktadır.  

SQL Server’da indexlerinizde fill factor değerini belirterek fragmantasyon durumunun daha uzun sürede oluşmasını sağlayarak performans kaybının önüne geçebilirsiniz. Genellikle %80 olarak ayarlanmaktadır. Dezavantajı indexlerin diskte kapladığı alan artmaktadır. %80 olarak ayarladığınızda indexleriniz diskte yaklaşık %20 daha fazla yer kaplayacaktır. Bu ayarı istediğiniz indexlerde, indexe sağ tıklayarak özellikler bölümden yapabilirsiniz.

Bilgisayar Yüksek Mühendisi | Lead Auditor | Oracle OCP