Sistem Basis Data 2 : Denormalization



Sangat penting untuk diingat bahwa implementasi database relasional yang optimal mensyaratkan bahwa semua tabel setidaknya dalam bentuk normal ketiga (3NF). Sebuah DBMS relasional yang baik akan memiliki keunggulan dalam mengelola hubungan normalisasi; yaitu hubungan kosong dari setiap redudansi yang tidak perlu yang dapat menyebabkan anomali data. Meskipun penciptaan hubungan normalisasi merupakan tujuan desain database adalah  penting, itu hanya salah satu dari banyak tujuan dalam pembangunan database. Desain database yang baik juga mempertimbangkan pengolahan (pelaporan) persyaratan (requirements) dan kecepatan pemrosesan.

Masalah dengan normalisasi adalah bahwa tabel yang didekomposisi untuk memenuhi persyaratan normalisasi, jumlah tabel database akan menjadi lebih banyak. Oleh karena itu, dalam rangka untuk menghasilkan informasi, data harus disatukan dari berbagai tabel. Bergabungnya dengan sejumlah besar tabel membutuhkan tambahan operasi input/output (I/O) dan logika pengolahan, sehingga akan mengurangi kecepatan sistem. Kebanyakan sistem database relasional mampu menangani penggabungan tabel sangat efisien. Namun, kondisi yang jarang terjadi dan sesekali memungkinkan denormalization dapat menjadikan kecepatan pemrosesan dapat ditingkatkan.

Meskipun tabel hasil normalisasi tidak selalu dapat dihindari, masalah bekerja dengan tabel yang berisi dependensi parsial dan/atau transitif dalam lingkungan database tidak harus selalu diminimalkan. Selain dari adanya kemungkinan anomali data yang merepotkan, tabel yang tidak dinormalisasi dalam database cenderung memiliki kekurangan sebagai berikut :
  1. Update data yang kurang efisien karena program yang membaca dan update tabel harus berurusan dengan tabel yang lebih besar dan kompleks.
  2. Pengindeksan lebih rumit. Tidak praktis untuk membangun semua indeks yang diperlukan untuk banyak atribut yang mungkin terletak di tabel yang tidak normal.
  3. Tabel tidak normal tidak menghasilkan strategi sederhana untuk membuat tabel maya yang dikenal sebagai view table.

Perlu diingat bahwa desain yang baik tidak dapat dibuat dalam program aplikasi yang menggunakan database. Juga perlu diingat bahwa tabel database tidak normal sering menyebabkan berbagai bencana redundansi data dalam. Dengan kata lain, menggunakan denormalization harus hati-hati dan pastikan bahwa anda dapat menjelaskan mengapa tabel tidak normal adalah pilihan yang lebih baik dalam situasi tertentu daripada tabel yang dinormalisasi.

Sumber : Coronel/Morris/Rob, 2011, Database Systems : Design, Implementation & Management, Course Technology Cengage Learning
                                                                                                                                 

Comments