Post on 09-Apr-2019
Normalisasi
Lecturer:
Mahendra Data, S.Kom
Normalisasi
• Adalah sebuah proses pengorganisasian data untuk meminimalisir redudansi.
• Target dari normalisasi adalah menguraikan relasi yang memiliki anomali agar dapat menjadi relasi yang lebih tertuktur.
Normalisasi
• Normalisasi dilakukan dengan memecah tabel yang kompleks menjadi beberapa tabel sederana
Tabel Master (input once, constant at most of the time)
Tabel Transaksi (dynamic, related to Master Table)
Keuntungan
• Easier to manage, to maintain, to report
Bila ada perubahan kebutuhah di kemudian hari, database mudah untuk dikembangkan
• Improve data integrity
Tidak ada redudansi data
• Table reusable
Ketika terjadi perubahan atas tabel master, maka tabel transaksi otomatis juga berubah
Kerugian
• Akan lebih banyak operasi JOIN
• Menanbah kompleksitas Query yang nantinya akan digunakan
• Dalam beberapa kasus dapat menurunkan perfoma database
Normal Form (NF)
• Ada 5 bentuk Normal Form, namun dari kelima Normal Form tersebut yang paling sering ditemuai adalah Normal Form bentuk satu (1NF), dua (2NF) dan tiga (3NF)
1NF Bentuk-bentuk Normal Form
First Normal Form (1NF)
• 1NF adalah aturan paling mendasar dari database yang terorganisir
• Aturan-aturan tersebut adalah:
Hapus kolom ganda dalam tabel yang sama
Buat tabel terpisah dari tiap kelompok data yang berelasi dan berikan primary key tersendiri
Contoh
ID Dosen Asisten Asisten
1 Kiki Abidin Hanif
2 Dita Hanif Yanti
First Normalization
ID Dosen
1 Kiki
2 Dita
ID Asisten ID_Dosen
1 Abidin 1
2 Hanif 1
3 Hanif 2
4 Yanti 2
Tabel Asisten Dosen
Tabel Dosen Tabel Asisten
2NF Bentuk-bentuk Normal Form
Second Normal Form (2NF)
• 2NF adalah aturan yang berguna untuk menghilangkan duplikasi data
• Aturan-aturan tersebut adalah:
Pastikan aturan 1NF telah terpenuhi
Pindahkan subset data yang selalu muncul di beberapa tabel yang berbeda ke dalam tabel tersendiri
Hubungkan data dalam tabel baru ke dalam tabel awalnya menggunakan foreign key
Contoh
Second Normalization
ID Dosen
1 Kiki
2 Dita
ID Asisten ID_Dosen
1 Abidin 1
2 Hanif 1
3 Hanif 2
4 Yanti 2
Tabel Dosen Tabel Asisten
ID Dosen
1 Kiki
2 Dita
ID ID_Mhs ID_Dosen
1 1 1
2 2 1
3 2 2
4 3 2
Tabel Dosen Tabel Asisten
ID Mhs
1 Abidin
2 Hanif
3 Yanti
Tabel Mahasiswa
3NF Bentuk-bentuk Normal Form
Third Normal Form (3NF)
• Aturan-aturan 3NF:
Pastikan aturan 2NF telah terpenuhi
Hapus kolom ang tidak tergantung ke dalam primary key secara penuh
Contoh
Order Number
Customer Number
Unit Price Quantity Total
1 C1 100 2 200
2 C2 250 3 750
Tabel Pembelian
Third Normalization
Order Number
Customer Number
Unit Price Quantity
1 C1 100 2
2 C2 250 3
BOYCE-CODD NORMAL FORM (BCNF OR 3.5NF)
Bentuk-bentuk Normal Form
Boyce-Codd Normal Form (BCNF or 3.5NF)
• Aturan-aturan 3.5NF:
Pastikan aturan 3NF telah terpenuhi
Setiap determinan harus merupakan candidate key
Candicate Key
• A candidate key is a combination of attributes that can be uniquely used to identify a database record without any extraneous data. Each table may have one or more candidate keys. One of these candidate keys is selected as the table primary key.
LATIHAN…
SEKIAN…