Perbedaan Kunci – Indeks Clustered vs Nonclustered
Dalam database relasional, data disimpan dalam tabel. Tabel ini terkait satu sama lain menggunakan batasan seperti kunci asing. Sebuah database terdiri dari beberapa tabel. Terkadang sulit untuk mencari data yang dibutuhkan. Oleh karena itu, indeks dapat digunakan untuk mempercepat pencarian. Indeks yang digunakan dalam database mirip dengan indeks buku. Indeks buku berisi bab dengan nomor halaman yang sesuai. Pengindeksan database mirip dengan itu. Indeks memiliki struktur yang mirip dengan tabel dan membutuhkan beberapa ruang database. Ada dua jenis indeks yang dikenal sebagai Clustered dan Non-Clustered Index. Dalam Clustered Index, urutan logis indeks cocok dengan urutan fisik baris tabel. Dalam Indeks Nonclustered, indeks dan data aktual berada di lokasi yang terpisah sehingga indeks berfungsi seperti penunjuk untuk mengambil data nyata. Perbedaan utama antara indeks berkerumun dan nonclustered adalah bahwa indeks berkerumun mengatur data aktual sedangkan indeks nonclustered menunjuk ke data aktual. Ketika indeks banyak dan penyimpanan data bertambah, indeks tersebut juga harus dimutakhirkan. Oleh karena itu, penting untuk membuat indeks sesuai dengan aplikasi karena dapat menurunkan kecepatan.
Apa itu Indeks Berkelompok?
Dalam indeks berkerumun, indeks mengatur data aktual. Hal ini mirip dengan direktori telepon. Nomor telepon diatur menurut urutan abjad. Nomor telepon yang sesuai dapat ditemukan saat mencari nama tertentu. Oleh karena itu, indeks pengelompokan berisi data aktual secara terorganisir. Bisa ada satu indeks per tabel.
Gambar 01: Indeks Cluster vs Nonclustered
Kunci utama digunakan untuk menentukan setiap entri dalam tabel. Dalam tabel siswa, id siswa dapat digunakan sebagai kunci utama. Di tabel pelanggan, customer_id bisa menjadi kunci utama. Umumnya, kunci utama dapat dipertimbangkan untuk membuat indeks berkerumun. Pada dasarnya dalam clustered index, pengaksesan data dilakukan secara sistematis dan cepat karena urutan logika indeks dan urutan tabelnya sama.
Apa itu Indeks Noncluster?
Dalam indeks nonclustered, indeks menunjuk ke data aktual. Indeks nonclustered adalah referensi ke data. Oleh karena itu, bisa ada beberapa indeks per tabel. Contoh indeks yang tidak berkerumun adalah buku yang memuat indeks utama dengan judul dan nomor halaman yang bersangkutan atau indeks di akhir buku dengan istilah-istilah penting dalam urutan abjad dengan nomor halaman yang sesuai. Indeks ini tidak berisi data aktual. Tapi itu memberikan informasi yang diperlukan untuk mencapai data yang sebenarnya. Oleh karena itu, indeks dan data berada di lokasi yang terpisah. Jadi, dibutuhkan ruang penyimpanan tambahan.
Indeks non-clustered digunakan ketika ada kunci selain kunci utama. Umumnya, indeks nonclustered lebih lambat dari indeks clustered.
Apa Persamaan Antara Indeks Clustered dan Nonclustered?
Indeks Clustered dan Nonclustered adalah jenis indeks yang digunakan untuk mencari data secara efisien
Apa Perbedaan Antara Indeks Clustered dan Nonclustered?
Indeks Clustered vs Nonclustered |
|
Indeks berkerumun adalah jenis indeks di mana catatan tabel secara fisik diurutkan ulang agar sesuai dengan indeks. | Indeks nonclustered adalah jenis indeks yang berisi referensi ke data aktual. |
Jumlah Indeks | |
Bisa ada satu indeks berkerumun per tabel. | Ada banyak indeks non-clustered per tabel. |
Kecepatan | |
Indeks cluster lebih cepat daripada Indeks Nonclustered. | Indeks nonclustered lebih lambat dari indeks clustered. |
Ruang yang Diperlukan | |
Indeks berkerumun tidak memerlukan ruang tambahan. | Indeks nonclustered membutuhkan ruang tambahan. |
Ringkasan – Indeks Clustered vs Nonclustered
Database relasional berisi banyak data. Oleh karena itu, penting untuk memiliki mekanisme khusus untuk mencari data dengan cepat. Indeks dapat digunakan untuk mencapai tugas ini. Ada dua jenis indeks. Mereka adalah indeks berkerumun dan tidak berkerumun. Artikel ini membahas perbedaan antara Indeks berkerumun dan tidak berkerumun. Dalam indeks berkerumun, urutan logis indeks cocok dengan urutan fisik baris tabel. Dalam indeks nonclustered, indeks dan data aktual berada di lokasi yang terpisah sehingga ada pointer untuk mengambil data. Perbedaan antara clustered index dan nonclustered index adalah clustered index mengatur data aktual sedangkan indeks nonclustered menunjuk ke data aktual.