Pengindeksan di DBMS: Apa itu, Jenis Indeks dengan CONTOH

Apa itu Pengindeksan?

Pengindeksan adalah teknik struktur data yang memungkinkan Anda mengambil catatan dari file database dengan cepat. Indeks adalah tabel kecil yang hanya memiliki dua kolom. Kolom pertama terdiri dari salinan kunci utama atau kunci kandidat dari sebuah tabel. Kolom kedua berisi satu set pointer untuk menyimpan alamat blok disk tempat nilai kunci spesifik disimpan.

Sebuah indeks –

  • Mengambil kunci pencarian sebagai input
  • Secara efisien mengembalikan kumpulan catatan yang cocok.

Jenis Pengindeksan di DBMS

Jenis Pengindeksan di DBMS
Jenis Indeks dalam Database

Pengindeksan dalam Database ditentukan berdasarkan atribut pengindeksannya. Dua jenis utama metode pengindeksan adalah:

  • Pengindeksan Utama
  • Pengindeksan Sekunder

Indeks Utama dalam DBMS

Indeks Utama adalah file terurut dengan ukuran panjang tetap dengan dua bidang. Bidang pertama sama dengan kunci utama dan bidang kedua, yang diajukan diarahkan ke blok data tertentu. Dalam Indeks utama, selalu ada hubungan satu lawan satu antara entri-entri dalam tabel indeks.

Pengindeksan utama dalam DBMS juga dibagi lagi menjadi dua jenis.

  • Indeks Padat
  • Indeks Renggang

Indeks Padat

Dalam indeks padat, catatan dibuat untuk setiap kunci pencarian yang bernilai dalam database. Ini membantu Anda mencari lebih cepat tetapi memerlukan lebih banyak ruang untuk menyimpan catatan indeks. Dalam Pengindeksan ini, catatan metode berisi nilai kunci pencarian dan menunjuk ke catatan sebenarnya pada disk.

Indeks Padat

Indeks Renggang

Ini adalah catatan indeks yang hanya muncul untuk beberapa nilai dalam file. Sparse Index membantu Anda menyelesaikan masalah Indexing yang padat DBMS. Dalam metode teknik pengindeksan ini, serangkaian kolom indeks menyimpan alamat blok data yang sama, dan ketika data perlu diambil, alamat blok akan diambil.

Namun, Indeks renggang menyimpan catatan indeks hanya untuk beberapa nilai kunci pencarian. Dibutuhkan lebih sedikit ruang, lebih sedikit biaya pemeliharaan untuk penyisipan, dan penghapusan, namun lebih lambat dibandingkan dengan Indeks padat untuk menemukan catatan.

Di bawah ini adalah indeks database Contoh Sparse Index

Indeks Renggang

Indeks Sekunder di DBMS

Indeks sekunder dalam DBMS dapat dihasilkan oleh kolom yang memiliki nilai unik untuk setiap rekaman, dan harus menjadi kunci kandidat. Indeks ini juga dikenal sebagai indeks non-pengelompokan.

Teknik pengindeksan basis data dua tingkat ini digunakan untuk mengurangi ukuran pemetaan tingkat pertama. Untuk tingkat pertama, rentang angka yang besar dipilih karena alasan ini; ukuran pemetaan selalu tetap kecil.

Contoh Indeks Sekunder

Mari kita pahami pengindeksan sekunder dengan contoh indeks database:

Dalam database rekening bank, data disimpan secara berurutan oleh acc_no; Anda mungkin ingin menemukan semua rekening di cabang bank ABC tertentu.

Di sini, Anda dapat memiliki indeks sekunder di DBMS untuk setiap kunci pencarian. Catatan indeks adalah titik catatan ke keranjang yang berisi penunjuk ke semua catatan dengan nilai kunci pencarian spesifiknya.

Contoh Indeks Sekunder

ClusterIndeks dalam DBMS

Dalam indeks berkelompok, catatan itu sendiri disimpan dalam Indeks dan bukan penunjuk. Terkadang Indeks dibuat pada kolom kunci non-utama yang mungkin tidak unik untuk setiap catatan. Dalam situasi seperti itu, Anda dapat mengelompokkan dua kolom atau lebih untuk mendapatkan nilai unik dan membuat indeks yang disebut Indeks berkelompok. Ini juga membantu Anda mengidentifikasi catatan lebih cepat.

Contoh:

Mari kita asumsikan bahwa sebuah perusahaan merekrut banyak karyawan di berbagai departemen. Dalam kasus ini, pengindeksan pengelompokan dalam DBMS harus dibuat untuk semua karyawan yang termasuk dalam departemen yang sama.

Hal ini dianggap sebagai satu klaster, dan titik indeks menunjuk ke klaster secara keseluruhan. Di sini, Department _no adalah kunci yang tidak unik.

Apa itu Indeks Bertingkat?

Pengindeksan Bertingkat di Basis Data dibuat ketika indeks utama tidak sesuai dengan memori. Dalam metode pengindeksan jenis ini, Anda dapat mengurangi jumlah akses disk untuk mempersingkat catatan apa pun dan menyimpannya di disk sebagai file berurutan dan membuat basis sparse pada file tersebut.

Indeks Bertingkat

Indeks B-Tree

Indeks B-tree adalah struktur data yang banyak digunakan untuk pengindeksan berbasis pohon di DBMS. Ini adalah format pengindeksan berbasis pohon bertingkat dalam teknik DBMS yang seimbang pohon pencarian biner. Semua simpul daun pada pohon B menandakan penunjuk data aktual.

Selain itu, semua node daun saling terkait dengan daftar tautan, yang memungkinkan pohon B mendukung akses acak dan berurutan.

Indeks B-Tree

  • Node utama harus memiliki antara 2 dan 4 nilai.
  • Setiap jalur dari akar ke daun sebagian besar memiliki panjang yang sama.
  • Node non-daun selain dari node akar memiliki antara 3 dan 5 node anak.
  • Setiap simpul yang bukan akar atau daun mempunyai antara n/2] dan n anak.

Keuntungan Pengindeksan

Kelebihan/keuntungan penting dari Pengindeksan adalah:

  • Ini membantu Anda mengurangi jumlah total operasi I/O yang diperlukan untuk mengambil data tersebut, sehingga Anda tidak perlu mengakses baris dalam database dari struktur indeks.
  • Menawarkan pencarian dan pengambilan data yang lebih cepat kepada pengguna.
  • Pengindeksan juga membantu Anda mengurangi tablespace karena Anda tidak perlu menautkan ke baris dalam tabel, karena tidak perlu menyimpan ROWID di Indeks. Dengan demikian Anda akan dapat mengurangi tablespace.
  • Anda tidak dapat mengurutkan data di node utama karena nilai kunci utama mengklasifikasikannya.

Kekurangan Pengindeksan

Kelemahan/kekurangan penting dari Pengindeksan adalah:

  • Untuk melakukan pengindeksan sistem manajemen basis data, Anda memerlukan kunci utama pada tabel dengan nilai unik.
  • Anda tidak dapat melakukan indeks lain di Database pada data yang diindeks.
  • Anda tidak diperbolehkan mempartisi tabel yang disusun berdasarkan indeks.
  • Pengindeksan SQL Mengurangi kinerja dalam kueri INSERT, DELETE, dan UPDATE.

Kesimpulan

  • Pengindeksan adalah tabel kecil yang terdiri dari dua kolom.
  • Dua jenis metode pengindeksan utama adalah 1) Pengindeksan Primer 2) Pengindeksan Sekunder.
  • Indeks Utama adalah file terurut dengan ukuran panjang tetap dengan dua bidang.
  • Pengindeksan utama juga dibagi lagi menjadi dua jenis 1) Indeks Padat 2) Indeks Jarang.
  • Dalam indeks padat, catatan dibuat untuk setiap kunci pencarian yang bernilai dalam database.
  • Metode pengindeksan yang jarang membantu Anda menyelesaikan masalah Pengindeksan yang padat.
  • Indeks sekunder dalam DBMS adalah metode pengindeksan yang kunci pencariannya menentukan urutan berbeda dari urutan file.
  • Clusterindeks didefinisikan sebagai file data pesanan.
  • Pengindeksan Bertingkat dibuat ketika indeks utama tidak sesuai dengan memori.
  • Manfaat terbesar Pengindeksan adalah membantu Anda mengurangi jumlah total operasi I/O yang diperlukan untuk mengambil data tersebut.
  • Kelemahan terbesar untuk melakukan sistem manajemen basis data pengindeksan, Anda memerlukan kunci utama pada tabel dengan nilai unik.