Bir index hangi durumlarda rebuild yapılmalıdır ?

22 May by Ahmet Duruöz

Bir index hangi durumlarda rebuild yapılmalıdır ?

Oracle veritabanlarında , zamanla indeksler fragmante olmakta ve ciddi performans sorunlarına yol açmaktadır.İndekslerin düzenli olarak kontrolü ve gerekiyorsa da rebuild edilerek düzenlenmesi gerekmektedir.

Bir indeks için rebuild işleminin gerekip gerekmediği tespit edilebilir.

Öncelikle ilgili index hakkında bilgi edinmek gerekiyor. Bunun için indeksin analizlenmesi gerekmektedir. Bu işlemi aşağıdaki komut ile yapabilirsiniz.

Analiz işlemi , “sys.index_stats” tablosunu doldurur. Bu tablonun sadece bir satır içerir ve bu nedenle bir kerede yalnızca bir indeks analiz edilebilebilir. Analiz yapılan oturumda , sys.index_stats tablosundan ilgili indeks ile ilgili bilgiler alınabilir.

Analiz sonrasında “sys.index_stats” tablosundaki veriler doğrultusunda , aşağıdaki durumlardan herhangi biri oluşursa , ilgili indeks için rebuild ya da yeniden oluşturulması gereklidir denilebilir.

  • Silinen satırların yüzdesi toplamın %30’unu aşıyor ise. Yani sys.index_stats tablosunda değerlerden del_lf_rows / lf_rows > 0.3 ise.
  • Eğer ‘HEIGHT’ değeri 4’ten büyük ise.
  • Eğer indeksteki satır sayısı olan LF_ROWS , LF_BLKS değerinden çok daha az ise . Bu durum, indeksten çok fazla kayıt silindiğinin göstergesidir.

Bu koşullardan biri oluştuğunda indeksi aşağıdaki gibi rebuild yapabilirsiniz.

Bir cevap yazın

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

Lütfen captcha kodunu giriniz *

Lütfen Resimdeki Kodu Boşluğa Giriniz.