Indexing Your Data 🗄️

Panduan Visual Manajemen Database: Mengoptimalkan Kecepatan Query & Efisiensi Penyimpanan.

Konsep Dasar Index

  • Bagaikan daftar isi buku, membantu database menemukan baris data tanpa membaca seluruh tabel.
  • Mencegah 'full table scan' yang sangat membebani performa saat data bertumbuh besar.
  • Krusial untuk optimasi table joins, pengurutan (sorting), dan fungsi agregasi.

Tipe-Tipe Index

  • Primary Index: Unik, tidak boleh null, otomatis tercipta dari Primary Key.
  • Unique Index: Memastikan tidak ada data duplikat dalam kolom tertentu.
  • Full-Text Index: Digunakan untuk pencarian kata dalam teks panjang (MATCH/AGAINST).
  • Composite Index: Index yang menggabungkan dua atau lebih kolom sekaligus.

Engine & Struktur

  • B-tree: Struktur default yang mendukung perbandingan range (>, <, BETWEEN).
  • Hash: Sangat cepat untuk pencarian nilai pasti (=), tapi tidak mendukung range.
  • InnoDB: Secondary index menyimpan nilai Primary Key sebagai penunjuk data fisik.
  • MyISAM: Menggunakan pointer langsung ke lokasi offset data asli di disk.

Penting: Trade-off Penggunaan Index

Meskipun mempercepat SELECT secara drastis, setiap index tambahan akan sedikit memperlambat operasi INSERT, UPDATE, dan DELETE karena database harus memperbarui struktur index setiap kali data berubah. Gunakanlah secara bijak pada kolom yang paling sering dicari.