İndex konusu uzun bir zamandır yazmayı planladığım birkaç konudan birisi idi. Umarım faydalı olur.
Oracle ‘ da indexler olmazsa olmazlarımızdan dır diyebiliriz. Aslında exdata gibi yeni teknolojilerle tanıştıkca yeni değişimler olsada hala indexsiz bir yaşam düşünemiyoruz. Peki çok klasik bir soruyle başlayalım o zaman ;
Nedir İndex ? Tablo üzerinde yapılan Select, İnsert, Update gibi işlemlerin daha performansla çalışması için oluşturulan nesnelerdir. Bir örnekle açıklayalım, çok büyük bir tablo üzerinde işlem yapıyorsanız ve çalıştığınız data miktarı tablonun toplam data size’ ının %5-6 ından büyük değilse ; böyle bir durumda eğer index kullanmıyorsanız çalıştığınız sorgu tablonun yer aldığı tüm blokları okumaya çalışacaktır. Eğer index kullanırsanız da sadece ilgili blokları okumayacağı çalışacağından sorgunuz daha performanslı çalışması sağlayacaktır.
İndexler genel olarak Select sorguları, Where cümleciği içeren Update sorguları ve yine Where cümleciği içeren Delete sorgularında ciddi performans artışları sağlarlar. İndexler Insert sorgularında ise performance düşürücü bir etkiye sahiptirler.Yine indexsli kolonlar üzerinde yapılacak update – delete işlemleride nispeten yavaş olacaktır.
Database’ de yer alan indexleri sorgulamak için aşağıdaki sorgulardan faydalanabiliriz ;
Continue reading →