Dolgu etmeni

Dizin veri depolama ve performans ince ayar yapmak için dolgu etmeni seçeneği sağlanır.Dizin oluşturulmuş veya yeniden, dolgu etmeni değerini her yaprak düzeyinde yüzdesini belirler sayfa kalan her ayırma verilerle doldurulması için sayfa gelecekteki büyüme için boş alanı olarak.Örneğin, yüzde 20'sini her yaprak düzeyinde sayfa için temel veriler eklendikçe alanı için dizin genişletme sağlayan boş bırakılır 80 anlamına gelir bir dolgu etmeni değer belirterek temel alınan tablo.Dizinin sonunda yerine dizin satır arasındaki boş alanı ayrılmıştır.

Dolgu etmeni değerini 1'den yüzde 100, ve sunucu çapında varsayılan 0 yaprak düzey sayfalar için kapasite doldurulur anlamına gelir.

Not

Dolgu etmeni 0 ve 100 tüm açılardan aynı değerlerdir.

Kullanabileceğiniz create INDEX veya alter INDEX bildirilerle küme tek tek dizinler için dolgu etmeni değer.Sunucu çapında varsayılan değeri değiştirmek için sp_configure sistem saklı yordamı.Bir veya daha fazla dizin dolgu etmeni değerini görüntülemek için sys.indexes.

Önemli notÖnemli

Yalnızca dizin oluşturulduğunda, yeniden veya dolgu etmeni ayarını uygular.The SQL Server Veritabanı Altyapısı does not dynamically keep the specified percentage of empty space in the pages.Veri sayfalarında fazladan boşluk korumak çalışıyor hayatımızda amacı doldurma faktörü, çünkü Veritabanı Altyapısı verilerin girildiği gibi doldurma faktörü her sayfasında belirtilen boş alan yüzdesini korumak için sayfa ayırmaya gerçekleştirmek zorunda.

Performans değerlendirmeleri

Sayfa ayırmaya

İçin temel veriler eklendikçe dizin Genişleme için yeterli alan sağlayarak olası sayfa ayırmaya doğru seçilen dolgu etmeni değerini azaltabilir temel alınan tablo.Tam dizin sayfası için yeni bir satır eklendiğinde, Veritabanı Altyapısı yaklaşık yarım satırları oda için yeni satır oluşturmak için yeni bir sayfaya giderBu düzenlemeler yapmak, bir sayfa bölünmüş bilinir.Sayfa bölünmesine gerçekleştirmek için saat alabilir ancak yeni kayıtlar için yer sağlar ve bir kaynak yoğun işlemidir.Ayrıca, daha yüksek g/Ç işlemlerini neden parçalanma neden olabilir.Sık sayfa ayırmaya ortaya çıktığında, dizin verileri yeniden dağıtmak için yeni veya varolan dolgu etmeni değerini kullanarak yeniden.Daha fazla bilgi için bkz: Yeniden düzenleme ve dizinler yeniden oluşturuluyor.

Bir düşük, ancak Dolgu katsayısı sıfır olmayan değer dizin büyüyor, dizin daha fazla depolama alanı gerektirir ve performans azalmasına okuyabilir gibi sayfaları bölmek için gereksinimi azaltabilir.Birçok ekleme ve güncelleştirme işlemleri için bile bir uygulama için veritabanı okuma sayısı genellikle 5 ila 10 faktörüyle veritabanına yazma outnumber.Bu nedenle, başka doldurma faktörü belirleme varsayılan veritabanı okuma performansı doldurma faktörü ayarını inversely orantılı bir tutar olarak düşürebilir.Örneğin, dolgu etmeni 50 değeri, veritabanı performansının düşmesine tarafından iki kez okumak neden olabilir.Bu nedenle verileri almak için gereken disk g/Ç işlemleri artırarak daha fazla sayfa dizine içerdiği için okuma performansı düşer.

Tablonun sonuna veri ekleme

Yeni veriler tablo eşit olarak dağıtılmıştır, sıfır olmayan doldurma faktörü 0 ya da 100 farklı performans için iyi olacaktır.Ancak, tüm verilerin sonuna eklenir, tablo, dizin sayfaları boş alanı doldurulmuş.Örneğin, dizin anahtarını sütun bir kimlik sütun, yeni satırlar için anahtar her zaman artırıyor ve dizin satırlar mantıksal olarak dizinin sonuna eklenir.Varolan satır satır boyutunu düşey çizgi ise uzar verilerle güncelleştirilecek kullanın bir doldurma faktörü , 100'den küçük.Ek bayt her sayfada sayfa ayırmaya fazladan satır uzunluğu nedeniyle en aza indirmek için yardımcı olur.