B-Tree dan Bitmap
Ada dua jenis indeks yang digunakan dalam Oracle. Ini adalah B-Tree dan Bitmap. Indeks ini digunakan untuk penyempurnaan kinerja, yang pada dasarnya membuat mencari catatan dan mengambilnya dengan cukup cepat. Fungsi indeks membuat entri untuk semua nilai yang muncul di kolom yang diindeks. Indeks B-Tree adalah tipe yang digunakan oleh sistem OLTP dan yang terutama diimplementasikan secara default. Bitmap, di sisi lain, datang sebagai format indeks yang sangat terkompresi yang, dalam banyak kasus, digunakan di gudang data.
Bitmap secara umum dapat disebut sebagai metode pengindeksan meskipun manfaat kinerja dan penghematan penyimpanan dapat dicari. Penggunaannya, seperti yang dinyatakan sebelumnya, terutama di lingkungan pergudangan data. Alasan untuk ini adalah karena pembaruan data tidak sering dan permintaan ad hoc lebih banyak di lingkungan. Dalam implementasi Bitmap, data kardinal rendah lebih disukai. Bitmap adalah pilihan yang disukai untuk item kolom yang memiliki opsi rendah seperti jenis kelamin, yang akan memiliki 2 nilai saja dan lebih disukai. Data statis di gudang juga merupakan karakteristik data yang baik yang akan diimplementasikan dengan sangat baik menggunakan Bitmap. Karakteristik lain dari Bitmap adalah aliran bit di mana setiap bit diimplementasikan ke nilai kolom dalam satu baris tabel.
Indeks B-tree, di sisi lain, adalah indeks yang dibuat pada kolom yang berisi nilai yang sangat unik. Indeks B-Tree memiliki entri yang dipesan di mana setiap entri memiliki nilai kunci pencarian dan pointer yang merujuk ke baris dan nilai yang diberikan. Dalam hal server menemukan batasan yang cocok yang terkait dengan nilai yang dimaksud, pointer digunakan untuk mengambil baris.
Salah satu perbedaan antara keduanya adalah bahwa ada duplikasi yang rendah dan ko-keramahan yang tinggi di B-Tree sementara yang sebaliknya terjadi di Bitmap. Bitmap memiliki instance duplikasi tinggi dan keramahan yang rendah. Indeks Bitmap dipandang lebih menguntungkan daripada indeks B-Tree, karena memiliki tabel yang memiliki jutaan baris karena kolom yang ditentukan memiliki kardinalitas rendah. Indeks dalam Bitmap, oleh karena itu, menawarkan kinerja yang lebih baik dibandingkan dengan indeks B-Tree.
B-Trees tampaknya sangat cepat ketika kumpulan data kecil dikumpulkan, dalam kebanyakan kasus, data tidak boleh melebihi 10% dari ukuran database. Keduanya bekerja bersama ketika ada banyak nilai berbeda yang diindeks. Ini juga unik untuk B-Tree bahwa beberapa indeks dapat digabungkan untuk menghasilkan program yang sangat efisien. Bitmap, di sisi lain, cenderung bekerja paling baik ketika ada nilai indeks yang lebih rendah untuk efisiensi maksimum.
B-tree buruk dalam hal mencari subset data yang lebih besar yang melebihi 10% dari data subset. Bitmap menerima tantangan ini untuk memberikan hasil berkualitas tinggi, karena berfungsi lebih baik ketika ada beberapa nilai yang berbeda.
Jika ada banyak indeks dalam tabel sibuk menggunakan B-Tree, masalah dapat muncul sebagai akibat dari hukuman kecil yang dikenakan saat memasukkan data yang diindeks atau jika Anda perlu memasukkan dan memperbarui data yang diindeks. Ini bukan masalah dengan Bitmap, karena sangat efisien dalam menyisipkan dan memperbarui nilai, berapa pun ukurannya.
Ringkasan
B-Tree dan Bitmap adalah dua jenis indeks yang digunakan dalam Oracle
Bitmap adalah metode pengindeksan, menawarkan manfaat kinerja dan penghematan penyimpanan
Indeks B-Tree adalah indeks yang dibuat pada kolom yang berisi nilai yang sangat unik
B-Tree bekerja paling baik dengan banyak nilai indeks yang berbeda
Bitmap berfungsi dengan baik dengan banyak nilai indeks yang berbeda