Oracle Ders 11 – Index – Bitmap Index

Merhaba Arkadaslar,
Bu derste Oracle 11 G , Bitmap Index konusunu isleyecegiz. Bir onceki derste Oracle  Index konusuna giris yapmistik ve Balanced Tree (BTree) index konusunu islemistik.

Indexin neden kullanildigini ve bazi bilgileri bir onceki derste yazmaya calismistim.
Bitmap index yapisi, low cardinality ( low selectivity )  durumunun oldugu kolonlar icin uygundur. Low Cardinality durumu, o kolon icin birbirinden farkli degerlerin az olmasi durumudur.

Ornek olarak tablomuzde Region kolonu oldugunu dusunelim ve birbirinden farkli 8 tane Region degeri dusunursek , bu kolon low cardinality ozelligine sahiptir.

Bitmap Index yapisi icin, 2boyutlu matrisi gozumuzun onune getirebiliriz. Burada genisligi farkli olan degerler belirleyecektir, yani yukaridaki ornegimiz icin 8 dir. Boyunu ise tablomuzdaki kayit sayisi.

oracle bitmap index

Bitmap index tablosuna dikkat ederseniz sadece 1 ve 0 degerlerini gorebiliriz. Burada ilk kayit icin Region degerinin NW oldugunu , 2 kayit icin SE oldugunu belirtelim. Yani her kayit icin sadece tek adet 1 degeri olurken geri kalan kisim 0 olacaktir.

Bitmap Index yapisi ozellikle birlesik sartlarda verimlilik saglamaktadir , yani where sarti icerisinde or and birlesimi durumlar.

Tablomuzda Gender(cinsiyet) alani oldugunu dusunursek ve sadece M ve F degerini alacagi icin bitmap index yapisina uygun olacaktir.

Bununla birlikte DML( Database Manipulation Languagage) islemlerinin yogun olmadigi durumlarda bitmap index uygun olacaktir. Bitmap Index yapisini surekli guncellemek yavasliga neden olacaktir.

Genel formunu su sekilde ifade edebiliriz.

create bitmap index table_name_idx 
on table_name(column);

Yazimi burada noktaliyorum 🙂

Herkese Bol Javali Gunler dilerim.
Be an oracle man , import java.*;
Levent Erguder
injavawetrust

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *