Indeks parçalanması genel görünümü
Indeks parçalanması nedir ve neden buna odaklanmam gerekiyor: Parçalanma, indeksdeki mantıksal sıralamanın (indeksteki anahtar değere dayanarak) indeks sayfalarındaki fiziksel sırayla uyuşmaması durumunda oluşur; indeks sayfalarındaki indeks sayfaları, indeksin içerdiği sayfalar. Altta yatan veri üzerinde bir ekleme, güncelleme veya silme işlemi yapıldığında, veritabanı motoru otomatik olarak indeks değiştirir. Örneğin, bir tabloya satır eklemek, bölünmüş satırların mevcut sayfaları indekste depolamasına ve yeni anahtarların eklenmesine olanak açabilir. Zamanla, bu değişiklikler indeksteki bilgilerin veritabanında (parça içeren) dağılmasına neden olabilir. Parçalanma, indeksin bulunduğu sayfalardaki mantıksal sıralamanın (anahtar-değere dayanarak) veri dosyasındaki fiziksel sırayla eşleşmemesi durumunda meydana gelir. Çok sayıda parçalanmış indeks, indeksin işaret ettiği verileri bulmak için ek G/Ç gerektiği için sorgu performansını yavaşlatabilir. Daha fazla G/Ç uygulamasının yavaş yanıt vermesine neden olabilir, özellikle tarama işlemleri söz konusu olduğunda.
Veritabanı indeks parçalanmasını kontrol edin
Komut:
Parça ayrıştırmanın iki yolu vardır: indeksleri yeniden düzenlemek ve yeniden oluşturmak; dizinleri yeniden oluşturmak, eski indeksleri silmek ve bir işlemde yeni indeksleri yeniden oluşturmak anlamına gelir; bu işlem orijinal indeksin sabit disk alanını geri alır ve yeni depolama alanı tahsis ederek bir indeks yapısı oluşturur. İndekslerin yeniden düzenlenmesi, yeni depolama alanı tahsis edilmemesini, indeks yapısının yaprak düğümlerini orijinal alan temelinde yeniden düzenlemek ve veri sayfalarının mantıksal ve fiziksel sırasının tutarlı olması ve indeksteki fazla alanın boşalmasını ifade eder.
Parçalanma derecesini, alanı avg_fragmentation_in_percent geri dönen mantıksal parçaların yüzdesini tespit etmek için sys.dm_db_index_physical_stats fonksiyonunu kullanın; genel olarak Microsoft %30 eşik önerir:
avg_fragmentation_in_percent >5% ve <=%30: INDEKS YENIDEN DÜZENLENIR; avg_fragmentation_in_percent >%30: ENDEKSI YENIDEN INŞA ETMEYI DEĞIŞTIR;
avg_fragmentation_in_percent: Parçalanma %10~%20'den azsa, parçalanma %10~20'den azsa, parçalanma sorun olma ihtimali düşüktür,Indeks parçalanması %20~%40 ise, parçalanma sorun olabilir, ancak indeks çözünürlüğü indeks yeniden düzenlemesiyle ortadan kaldırılabilir ve büyük ölçekli parçalanma (parçalanma %40'ın üzerinde olduğunda) indeks yeniden yapılandırması gerektirebilir.
Verilen bir tablonun tüm indeksleri için parçalanma bilgisini sorgulayın
Tablo yeniden indeksleme
Tüm veritabanındaki tüm tabloların indeksini yeniden oluştur
Kaynaklar:Bağlantı girişi görünür.
|