Langsung ke konten utama

Apa itu Denormalisasi dalam Basis Data?

 

Apa itu Denormalisasi dalam Basis Data?

Denormalisasi adalah proses menyederhanakan struktur tabel di database dengan menggabungkan tabel atau menambahkan data yang sama (redundansi) untuk meningkatkan kecepatan membaca data.

Biasanya, ini dilakukan untuk mempercepat proses query karena tidak perlu banyak join antar tabel.


Mengapa Denormalisasi Dilakukan?

Denormalisasi dilakukan untuk:

  1. Meningkatkan kecepatan query: Dengan mengurangi jumlah tabel yang perlu digabungkan (join).
  2. Mempermudah query: Data yang sering digunakan disimpan di satu tempat.
  3. Mendukung laporan atau analisis: Query jadi lebih cepat dan efisien untuk data yang sering dibaca.

Contoh Denormalisasi

Sebelum Denormalisasi (Data Terpisah - Normalisasi)

Misalkan ada dua tabel:

  1. Tabel Pelanggan:

    id_pelanggannama_pelanggan
    1Hari
    2Budi
  2. Tabel Transaksi:

    id_transaksiid_pelanggantotal_transaksi
    101150000
    102275000

Jika ingin melihat nama pelanggan dan total transaksi, kita perlu melakukan join:

sql:

SELECT pelanggan.nama_pelanggan, transaksi.total_transaksi FROM pelanggan JOIN transaksi ON pelanggan.id_pelanggan = transaksi.id_pelanggan;

Setelah Denormalisasi (Tabel Digabungkan)

Kedua tabel di atas digabung menjadi satu tabel:

Tabel Denormalisasi:

id_transaksinama_pelanggantotal_transaksi
101Hari50000
102Budi75000

Dengan tabel ini, query lebih sederhana dan cepat:

sql:

SELECT nama_pelanggan, total_transaksi FROM tabel_denormalisasi;

Kelebihan Denormalisasi

  1. Query lebih cepat: Tidak perlu join antar tabel.
  2. Struktur lebih sederhana: Data yang sering digunakan sudah ada di satu tabel.
  3. Cocok untuk laporan: Sangat membantu saat membuat laporan atau analisis data.

Kekurangan Denormalisasi

  1. Data jadi berulang (redundansi): Informasi yang sama disimpan lebih dari satu tempat.
  2. Pemeliharaan lebih sulit: Jika ada perubahan data, harus diperbarui di banyak tempat.
  3. Menghabiskan ruang penyimpanan: Karena ada data yang disalin ulang.

Kesimpulan

Denormalisasi adalah cara mempercepat query dengan menyimpan data yang sering digunakan di satu tabel. Cocok untuk sistem yang lebih sering membaca data daripada mengubahnya, seperti aplikasi laporan. Namun, harus hati-hati karena bisa menyebabkan data ganda dan memerlukan ruang penyimpanan lebih besar.

Komentar

Postingan populer dari blog ini

Mengenal PrimaryKey, Foregent Key dan Candidate Key pada ERD beserta contohnya

Dalam perancangan basis data, Primary Key , Foreign Key , dan Candidate Key adalah konsep kunci yang sangat penting untuk memastikan integritas data dan hubungan antar tabel dalam Entity-Relationship Diagram (ERD). Mari kita bahas satu per satu dengan contoh: 1. Primary Key (PK) Primary Key adalah atribut atau kumpulan atribut yang digunakan untuk mengidentifikasi setiap baris secara unik dalam sebuah tabel. Setiap tabel harus memiliki satu Primary Key, dan nilainya harus unik untuk setiap record serta tidak boleh null . Contoh: Misalkan kita memiliki tabel Mahasiswa dalam basis data. NIM (Primary Key) Nama Jurusan 101 Budi Teknik Sipil 102 Siti Informatika 103 Agus Arsitektur NIM adalah Primary Key yang secara unik mengidentifikasi setiap mahasiswa dalam tabel. Tidak ada dua mahasiswa yang memiliki NIM yang sama, dan nilainya tidak ...

Apa Itu Physical Model dan Bagaimana Menggunakannya dalam Desain Database?

  Dalam konteks desain database, Physical Model mengacu pada representasi nyata dari struktur data yang akan disimpan di dalam sistem manajemen basis data (DBMS). Physical model merupakan tahap terakhir dalam proses desain database, setelah tahap desain konseptual dan logis. Berikut ini penjelasan lebih rinci tentang apa itu physical model dan bagaimana cara menerapkannya dalam desain database. Apa Itu Physical Model? Physical Model adalah cetak biru yang menunjukkan bagaimana data akan disimpan secara fisik di dalam basis data. Model ini mencakup detail teknis yang dibutuhkan untuk implementasi, seperti: Tipe Data : Menentukan jenis data yang akan digunakan untuk setiap atribut, misalnya integer, varchar, atau date. Struktur Tabel : Menggambarkan tabel-tabel yang ada, termasuk kunci primer dan kunci asing yang menghubungkan tabel-tabel tersebut. Indeks : Menentukan indeks mana yang akan digunakan untuk mempercepat proses akses data. Penyimpanan dan Partisi : Mengatur bagaimana da...

Tugas 2 ERD