Normalisasi Database
Pengertian Normalisasi Database
Normalisasi database adalah suatu proses pengorganisasian dan pengelompokan data dalam sebuah database untuk mengurangi redundansi (pengulangan) data, meningkatkan efisiensi database, serta memperbaiki integritas data dan kesesuaian data dengan model relasional. Normalisasi database bertujuan untuk menghasilkan struktur database yang optimal, sehingga memudahkan dalam proses pengambilan data atau query.Bentuk - Bentuk Normalisasi Database
First Normal Form (1NF)
Aturan 1NF adalah sebuah tabel harus memiliki setidaknya satu kolom yang memiliki nilai unik atau primary key dan setiap kolom dalam tabel harus berisi satu nilai atau atomik. Dalam bentuk ini, sebuah tabel tidak boleh memiliki kolom yang berisi nilai yang dapat dibagi lagi.
Second Normal Form (2NF)
Second Normal Form (2NF)
Aturan 2NF adalah sebuah tabel harus memenuhi aturan 1NF dan setiap kolom yang bukan primary key harus bergantung sepenuhnya pada primary key. Artinya, tidak boleh ada atribut atau kolom yang hanya sebagian bergantung pada primary key.
Third Normal Form (3NF)
Third Normal Form (3NF)
Aturan 3NF adalah sebuah tabel harus memenuhi aturan 2NF dan setiap kolom yang bukan primary key harus tidak bergantung pada atribut lain selain primary key. Artinya, tidak boleh ada atribut atau kolom yang bergantung pada atribut lain selain primary key.
Boyce-Codd Normal Form (BCNF)
Boyce-Codd Normal Form (BCNF)
Aturan BCNF adalah sebuah tabel harus memenuhi aturan 3NF dan setiap atribut yang bukan primary key harus secara fungsional tergantung pada primary key. Dalam bentuk ini, setiap ketergantungan fungsional pada primary key harus dipenuhi tanpa ada keberadaan atribut tambahan yang tidak terkait.
Fourth Normal Form (4NF)
Aturan 4NF adalah sebuah tabel harus memenuhi aturan BCNF dan tidak ada ketergantungan multivalued di antara atribut dalam tabel. Artinya, tidak boleh ada atribut dalam tabel yang dapat menghasilkan lebih dari satu nilai atau memiliki ketergantungan fungsional yang kompleks.
Fifth Normal Form (5NF)
Fifth Normal Form (5NF)
Aturan 5NF adalah sebuah tabel harus memenuhi aturan 4NF dan tidak ada ketergantungan join di antara atribut dalam tabel. Dalam bentuk ini, setiap atribut atau kolom dalam tabel harus saling independen dan tidak ada ketergantungan join yang terjadi di antara mereka.
Manfaat Normalisasi Database
Mengurangi Redundansi Data
Dengan melakukan normalisasi database, redundansi data dapat dikurangi atau bahkan dihilangkan. Hal ini akan menghemat ruang penyimpanan pada server database dan mempercepat proses query data.
Meningkatkan Integritas Data
Meningkatkan Integritas Data
Normalisasi database juga dapat meningkatkan integritas data karena setiap data hanya disimpan dalam satu tabel dan dapat diakses dengan lebih mudah dan cepat. Hal ini juga meminimalkan risiko kesalahan dalam memperbarui atau menghapus data.
Menghindari Masalah Anomali Data
Menghindari Masalah Anomali Data
Dalam struktur database yang tidak dinormalisasi, seringkali terdapat anomali data, seperti ketidakkonsistenan data, ketidakefisienan dalam proses query, dan kesulitan dalam pengolahan data. Dengan melakukan normalisasi database, masalah-masalah tersebut dapat dihindari.
Contoh Normalisasi Database
Tabel Transaksi
- ID_Transaksi (Primary Key)
- Nama_Customer
- Alamat_Customer
- Nama_Barang
- Harga_Barang
- Tanggal_Transaksi
Masalah Redundansi Data
Tabel di atas mengandung redundansi data karena informasi tentang pelanggan terduplikat pada setiap transaksi yang dilakukan. Untuk mengatasi masalah ini, kita dapat membuat tabel pelanggan terpisah dan menyimpan informasi pelanggan hanya satu kali.
Masalah Ketergantungan Fungsional
Masalah Ketergantungan Fungsional
Tabel di atas juga mengandung ketergantungan fungsional pada kolom Nama_Barang dan Harga_Barang pada kolom ID_Transaksi. Untuk mengatasi masalah ini, kita dapat membuat tabel barang terpisah dan menyimpan informasi barang hanya satu kali.
Setelah normalisasi, struktur tabel menjadi sebagai berikut:
Tabel Transaksi
Setelah normalisasi, struktur tabel menjadi sebagai berikut:
Tabel Transaksi
- ID_Transaksi (Primary Key)
- ID_Pelanggan (Foreign Key)
- ID_Barang (Foreign Key)
- Tanggal_Transaksi
- ID_Pelanggan (Primary Key)
- Nama_Customer
- Alamat_Customer
- ID_Barang (Primary Key)
- Nama_Barang
- Harga_Barang
sekian dari saya, terimakasih.
Peserta Program Beasiswa Protonema 2022/2023
Komentar
Posting Komentar