1. Definisi
Normalisasi adalah suatu teknik untuk mengorganisasikan data ke dalam table-tabel untuk memenuhi kebutuhan pemakai di dalam suatu ogranisasi.
2. Tujuan dari Normalisasi
· Untuk menghilang kerangkapan data
· Untuk mengurangi kompleksitas
· Untuk mempermudah pemodifikasian data
3. Proses Normalisasi
· Data diuraikan dalam bentuk table, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
· Apabila table yang diuji belum memenuhi persyaratan tertentu, maka table tersebut perlu dipecah menjadi beberapa table yang lebih sederhana sampai memenuhi bentuk yang optimal.
4. Tahapan Normalisasi
· Bentuk Tidak Normal
Menghilangkan perulangan group
· Bentuk Normal Pertama (1 NF)
Menghilangkan Ketergantungan sebagian
· Bentuk Normal Kedua (2NF)
Menghilangkan Ketergantungan Transitif
· Bentuk Normal Ketiga (3NF)
Menghilangkan anomali-anomali hasil dari ketergantungan fungsional
· Bentuk Normal Boyce-Codd (BCNF)
Menghilangkan ketergantungan Multivalue
· Bentuk Normal Keempat (4NF)
Menghilangkan anomaly-anomali yang tersisa
5. Ketergantungan Fungsional
Definisi
Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X → R.Y), jika dan hanya jika setiapnilai X pada relasi R mempunyai tepat satu nilai Y pada R.
Misal, terdapat skema database Pemasok-Barang :
Pemasok (No-pem, Na-pem)
Tabel PEMASOK-BARANG
No-pem
|
Na-pem
|
P01
P02
P03
|
Ade
Bona
Sasi
|
Ketergantungan fungsional dari tabel PEMASOK-BARANG
adalah :
No-pem → Na-pem
6. Ketergantungan Fungsional Penuh
Definisi
Atribut Y pada relasi R dikatakan tergantung fungsional penuh pada atribut X pada relasi R, jika Y tidak tergantung pada subset dari X (bila X adalah key gabungan)
Contoh : KIRIM BARANG (No-pem, Na-pem,No-bar, Jumlah)
No-pem
|
Na-pem
|
No-bar
|
Jumlah
|
P01 Ade B01 1000
P01 Ade B02 1500
P01 Ade B03 2000
P02 Boni B03 1000
P03 Sasi B02 2000
|
Ketergantungan fungsional :
No-pem Na → pem
No-bar, No-pem → Jumlah (Tergantung penuh thd keynya)
7. Ketergantungan Transitif
Definisi
Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X, jika atribut Y tergantung pada atribut X pada relasi R dan atribut Z tergantung pada atribut Y pada relasi R. ( X → Y, Y → Z, maka X → Z )
Contoh :
Ketergantungan Fungsional :
No-pem → Kode-kota
Kode-kota → Kota, maka
No-pem → Kota
No-pem
|
Kode-Kota
|
Kota
|
No-bar
|
Jumlah
|
P01 1 Jakarta B01 1000
P01 1 Jakarta B02 1500
P01 1 Jakarta B03 2000
P02 3 Bandung B03 1000
P03 2 Surabaya B02 2000
|
Normalisasi
1. Bentuk Normal Kesatu (1 NF)
Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu bila setiap data bersifat atomik yaitu setiap irisan baris dan kolom hanya mempunyai satu nilai data
.
Tabel KIRIM-1 (Unnormal)
No-pem
|
Kode-Kota
|
Kota
|
No-bar
|
Jumlah
|
P01 1 Jakarta B01 1000
B02 1500
B03 2000
P02 3 Bandung B03 1000
P03 2 Surabaya B02 2000
|
Tabel KIRIM-2 (1 NF)
No-pem
|
Kode-Kota
|
Kota
|
No-bar
|
Jumlah
|
P01 1 Jakarta B01 1000
P01 1 Jakarta B02 1500
P01 1 Jakarta B03 2000
P02 3 Bandung B03 1000
P03 2 Surabaya B02 2000
|
2. Bentuk Normal Kedua (2 NF)
Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kedua bila relasi tersebut sudah memenuhi bentuk Normal kesatu, dan atribut yang bukan key sudah tergantung penuh terhadap keynya.
Tabel PEMASOK-1 (2 NF)
No-pem
|
Kode-kota
|
Kota
|
P01 1 Jakarta
P02 3 Bandung
P03 2 Surabaya
|
3. Bentuk Normal Ketiga (3 NF)
Suatu relasi dikatakan sudah memenuhi Bentuk Normal ketiga bila relasi tersebut sudah memenuhi bentuk Normal kedua dan atribut yang bukan key tidak tergantung transitif terhadap keynya.
Tabel KIRIM-3 (3 NF)
No-pem
|
No-bar
|
Jumlah
|
P01 B01 1000
P01 B02 1500
P01 B03 2000
P02 B03 1000
P03 B02 2000
|
Tabel PEMASOK-2 (3 NF) Tabel PEMASOK-3 (3 NF)
Kode-kota
|
Kota
| |
1 Jakarta
2 Surabaya
3 Bandung
|
No-pem
|
Kode-kota
|
P01 1
P02 3
P03 2
|