"Indeks Basis Data" mengacu pada jenis struktur data khusus yang mempercepat pengambilan catatan dari tabel basis data. Indeks database memastikan bahwa Anda dapat menemukan dan mengakses data dalam tabel database secara efisien tanpa harus mencari setiap baris setiap kali kueri database diproses.

Indeks basis data dapat disamakan dengan indeks buku. Indeks dalam basis data mengarahkan Anda ke catatan yang Anda cari di basis data, seperti halnya halaman indeks buku mengarahkan Anda ke topik atau bab yang Anda inginkan.

Namun, meskipun indeks basis data sangat penting untuk pencarian dan akses data yang cepat dan efisien, indeks tersebut membutuhkan ruang tulis dan memori tambahan.

Apa itu Indeks?

Indeks database adalah tabel pencarian khusus yang terdiri dari dua kolom. Kolom pertama adalah kunci pencarian, dan yang kedua adalah penunjuk data. Kunci adalah nilai yang ingin Anda cari dan ambil dari tabel database Anda, dan penunjuk atau referensi menyimpan alamat blok disk dalam database untuk kunci pencarian tertentu. Bidang kunci diurutkan sehingga mempercepat operasi pengambilan data untuk semua kueri Anda.

instagram viewer

Mengapa Menggunakan Pengindeksan Basis Data?

Saya akan menunjukkan kepada Anda indeks basis data dengan cara yang disederhanakan di sini. Mari kita asumsikan Anda memiliki tabel database dari delapan karyawan yang bekerja di sebuah perusahaan, dan Anda ingin mencari informasi untuk entri terakhir dari tabel tersebut. Sekarang, untuk menemukan entri sebelumnya, Anda perlu mencari setiap baris database.

Namun, misalkan Anda telah mengurutkan tabel berdasarkan abjad berdasarkan nama depan karyawan. Jadi, di sini kunci pengindeksan didasarkan pada "kolom nama." Dalam hal ini, jika Anda mencari entri terakhir, “Zack,” Anda dapat melompat ke tengah tabel dan memutuskan apakah entri kita muncul sebelum atau sesudah kolom.

Seperti yang Anda ketahui, itu akan muncul setelah baris tengah, dan Anda dapat membagi lagi baris setelah baris tengah menjadi dua dan membuat perbandingan serupa. Dengan cara ini, Anda tidak perlu melintasi setiap baris untuk menemukan entri terakhir.

Jika perusahaan memiliki 1.000.000 karyawan dan entri terakhir adalah "Zack," Anda harus mencari 50.000 baris untuk menemukan namanya. Padahal, dengan pengindeksan alfabet, Anda bisa melakukannya dalam beberapa langkah. Sekarang Anda dapat membayangkan betapa lebih cepatnya pencarian dan akses data dengan pengindeksan basis data.

Terkait: 13 Perintah SQL Paling Penting Yang Harus Diketahui Setiap Programmer

Metode Organisasi File yang Berbeda untuk Indeks Basis Data

Pengindeksan sangat bergantung pada mekanisme organisasi file yang digunakan. Biasanya, ada dua jenis metode organisasi file yang digunakan dalam pengindeksan basis data untuk menyimpan data. Mereka dibahas di bawah ini:

1. File Indeks yang Dipesan: Ini adalah metode tradisional untuk menyimpan data indeks. Dalam metode ini, nilai kunci diurutkan dalam urutan tertentu. Data dalam file indeks yang dipesan dapat disimpan dengan dua cara.

  • Indeks Jarang: Dalam jenis pengindeksan ini, entri indeks dibuat untuk setiap catatan.
  • Indeks Padat: Dalam pengindeksan padat, entri indeks dibuat untuk beberapa catatan. Untuk menemukan catatan dalam metode ini, pertama-tama Anda harus menemukan nilai kunci pencarian paling signifikan dari entri indeks yang kurang dari atau sama dengan nilai kunci pencarian yang Anda cari.

2. Organisasi File Hash: Dalam metode organisasi file ini, fungsi hash menentukan lokasi atau blok disk tempat catatan disimpan.

Jenis Pengindeksan Basis Data

Secara umum ada tiga metode Pengindeksan Basis Data. Mereka:

  • Pengindeksan Berkelompok
  • Pengindeksan Non-clustered
  • Pengindeksan Multi-Level

1. Pengindeksan Berkelompok

Dalam pengindeksan berkerumun, satu file tunggal dapat menyimpan lebih dari dua catatan data. Sistem menyimpan data aktual dalam pengindeksan berkerumun daripada pointer. Pencarian hemat biaya dengan pengindeksan berkerumun karena menyimpan semua data terkait di tempat yang sama.

Indeks pengelompokan menggunakan file data yang dipesan untuk mendefinisikan dirinya sendiri. Juga, menggabungkan beberapa tabel database sangat umum dengan jenis pengindeksan ini.

Anda juga dapat membuat indeks berdasarkan kolom non-primer yang tidak unik untuk setiap kunci. Pada kesempatan seperti itu, ini menggabungkan beberapa kolom untuk membentuk nilai kunci unik untuk indeks berkerumun.

Jadi, singkatnya, indeks pengelompokan adalah tempat tipe data serupa dikelompokkan dan indeks dibuat untuk mereka.

Contoh: Misalkan ada sebuah perusahaan yang memiliki lebih dari 1.000 karyawan di 10 departemen yang berbeda. Dalam hal ini, perusahaan harus membuat pengindeksan clustering di DBMS mereka untuk mengindeks karyawan yang bekerja di departemen yang sama.

Setiap klaster dengan karyawan yang bekerja di departemen yang sama akan didefinisikan sebagai klaster tunggal, dan penunjuk data dalam indeks akan merujuk ke klaster sebagai satu kesatuan.

Terkait: Apa itu Kunci Asing dalam Database SQL?

2. Pengindeksan Non-clustered

Pengindeksan non-cluster mengacu pada jenis pengindeksan di mana urutan baris indeks tidak sama dengan bagaimana data asli disimpan secara fisik. Sebaliknya, indeks non-cluster menunjuk ke penyimpanan data dalam database.

Contoh: Pengindeksan non-clustered mirip dengan buku yang memiliki halaman isi yang dipesan. Di sini, penunjuk atau referensi data adalah halaman isi yang diurutkan berdasarkan abjad, dan data sebenarnya adalah informasi pada halaman buku. Halaman isi tidak menyimpan informasi pada halaman buku secara berurutan.

3. Pengindeksan Multi-level

Pengindeksan multi-level digunakan ketika jumlah indeks sangat tinggi, dan tidak dapat menyimpan indeks utama di memori utama. Seperti yang Anda ketahui, indeks basis data terdiri dari kunci pencarian dan penunjuk data. Ketika ukuran database meningkat, jumlah indeks juga bertambah.

Namun, untuk memastikan operasi pencarian cepat, catatan indeks perlu disimpan dalam memori. Jika indeks tingkat tunggal digunakan saat nomor indeks tinggi, indeks itu tidak mungkin disimpan dalam memori karena ukurannya dan akses ganda.

Di sinilah pengindeksan multi-level berperan. Teknik ini memecah indeks satu tingkat menjadi beberapa blok yang lebih kecil. Setelah rusak, blok tingkat luar menjadi sangat kecil sehingga dapat dengan mudah disimpan di memori utama.

Terkait: Bagaimana Menghubungkan ke Database MySQL Dengan Java

Apa itu Fragmentasi Indeks SQL?

Ketika urutan halaman indeks tidak cocok dengan urutan fisik dalam file data menyebabkan fragmentasi indeks SQL. Awalnya, semua indeks SQL berada bebas fragmentasi, tetapi karena Anda menggunakan database (Sisipkan/Hapus/Ubah data) berulang kali, hal itu dapat menyebabkan fragmentasi.

Selain fragmentasi basis data, basis data Anda juga dapat menghadapi masalah vital lainnya seperti korupsi basis data. Ini dapat menyebabkan hilangnya data dan situs web yang rusak. Jika Anda melakukan bisnis dengan situs web Anda, itu bisa menjadi pukulan fatal bagi Anda.

Surel
Data SQL Server Rusak? Coba Pulihkan Dengan SQL Recovery Toolbox

Recovery Toolbox untuk SQL Server membantu memperbaiki file MDF yang rusak dari MS SQL Server untuk semua versi.

Baca Selanjutnya

Topik-topik yang berkaitan
  • Pemrograman
  • SQL
  • Analisis data
  • basis data
Tentang Penulis
Zadhid A. Powell (12 Artikel Diterbitkan)

Zadhid Powell adalah seorang Insinyur Komputer yang meninggalkan coding untuk mulai menulis! Selain itu, ia adalah Pemasar Digital, penggila teknologi, pakar SaaS, pembaca, dan pengikut tren perangkat lunak yang tajam. Seringkali Anda mungkin menemukannya mengayunkan klub pusat kota dengan gitarnya atau memeriksa penyelaman dasar laut.

More From Zadhid A. Powell

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Satu langkah lagi…!

Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan.

.