Normalisasi Database
Normalisasi merupakan sebuah upaya untuk memperoleh sebuah
database dengan struktur yang baik dengan cara menerapkan sejumlah aturan pada
setiap tabel agar ruang penyimpanan efisien. Istilah normalisasi dapat
disederhanakan menjadi memecah relasi menjadi beberapa tabel untuk mendapat
database yang optimal
Istilah
penting dalam teknik normalisasi :
¨Field /
atribut kunci. Setiap
file selalu terdapat kunci dari file berupa satu field atau satu field yang
dapat mewakili record.
¨Candidate
key. Kumpulan
atribut minimal yang secara unik mengidentifikasi sebuah baris fungsinya
sebagai calon primary key.
¨Composite
key. Kunci
kandidat yang berisi lebih dari satu atribut
¨Primary
key. Candidate
key yang dipilih untuk mengidentifikasi baris secara unik
¨Alternate
key. Candidate
key yang tidak dipilih sebagai primary key
¨Foreign
key. Key di tabel
lain yang terhubung dengan primary key pada sebuah tabel
Kriteria Tabel Yang Baik :
1.Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless-Join
Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
2.Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency
Preservation).
3.Tidak melanggar Boyce-Code Normal
Form (BCNF) (-akan dijelaskan kemudian-)
FUNCTIONAL DEPENDENCY (FD)
Notasi: A –> B
A dan B adalah atribut dari sebuah tabel. Berarti secara fungsional A menentukan B
atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang
sama, maka nilai B juga sama
Notasi: A
–> B atau A x
–> B
Adalah kebalikan
dari notasi sebelumnya
Aturan normalisasi
1.Bentuk Normal Tahap Pertama (1st Normal Form /
1NF)
2.Bentuk Normal Tahap Kedua (2nd Normal Form /
2NF)
3.Bentuk Normal Tahap (3rd Normal Form /
3NF)
4.Boyce-Code Normal
Form (BCNF)
5.Bentuk Normal Tahap (4th Normal Form /
4NF)
6.Bentuk Normal Tahap (5th Normal Form /
5NF)
Aturan-aturan normalisasi :
1. Normalisasi Pertama (1st Normal Form)
¨Mendefinisikan atribut kunci
¨Tidak adanya group berulang
¨Setiap atribut dalam tabel tersebut harus bernilai atomic
(tidak dapat dibagi-bagi lagi)
2. Normalisasi Kedua (2nd Normal Form)
¨Sudah memenuhi dalam bentuk normal kesatu
¨Sudah tidak ada ketergantungan parsial, dimana seluruh
field hanya tergantung pada sebagian
field kunci.
3. Normalisasi Ketiga (3rd Normal Form)
¨Sudah berada dalam bentuk normal kedua
¨Tidak ada ketergantungan transitif (dimana field bukan
kunci tergantung pada field bukan kunci
lainnya).
4. Boyce-Code
Normal Form (BCNF)
¨Bentuk BCNF terpenuhi dalam sebuah tabel, jika untuk setiap functional
dependency terhadap
setiap atribut atau gabungan atribut dalam bentuk: X à Y
¨tabel tersebut harus di-dekomposisi berdasarkan functional
dependency yang
ada, sehingga X
menjadi super
key dari tabel-tabel hasil dekomposisi
¨Setiap tabel dalam BCNF merupakan 3NF. Akan tetapi setiap 3NF belum tentu termasuk BCNF .
Perbedaannya, untuk functional
dependency X à A, BCNF tidak membolehkan A sebagai bagian
dari primary key.
5. Normalisasi Keempat (4rd Normal Form)
¨Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel
tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute
¨Untuk setiap multivalued
dependencies (MVD)
juga harus merupakan functional
dependencies
6. Normalisasi Kelima (5rd Normal Form)
¨Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless
decomposition menjadi
tabel-tabel yg lebih kecil.
¨Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional
dependency,
5NF dibentuk
berdasarkan konsep join
dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi
tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula.
Tidak ada komentar:
Posting Komentar