Jumpa
lagi sama laporan praktikum Desain Basis Data. Yang kali ini akan membahas
tentang normalisasi.
Dasar Teori
Apaan
sih normalisasi itu?
Menurut
Janner Simarmata & Iman Peryudi (2005) ”Normalisasi adalah teknik
perancangan yang banyak digunakan sebagai pemandu dalam merancang basisdata
relasional”. Pada dasarnya,
normalisasi database merupakan suatu pendekatan sistematis untuk
meminimalkan redundansi data pada suatu database agar database tersebut dapat
bekerja dengan optimal.
*redudansi:
pengulangan
Trus, apa
tujuan normalisasi database?
Tujuan
normalisasi database adalah untuk menghilangkan dan mengurangi redudansi data
dan tujuan memastikan dependensi data (data berada pada tabel yang tepat).
*dependensi=
ketergantungan
Sebab, jika
data dalam database tersebut belum di normalisasi maka akan terjadi 3
kemungkinan yang akan merugikan sistem secara keseluruhan, seperti berikut
- INSERT Anomali; yaitu situasi yang tidak memungkinkan memasukkan beberapa jenis data secara langsung di database.
- DELETE Anomali; yaitu penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut terhapus.
- UPDATE Anomali; yaitu situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.
Makanya, penting
untuk menormalisasi data Sob. Kalau udah tau pentingnya, selanjutnya kita
belajar tahap-tahap normalisasi data.
Pertama; Unnormalization
Bentuk
yang tidak normal dimaksudkan suatu kumpulan data yang akan diolah yang
diperoleh dari format – format yang beraneka ragam, masih terdapat duplikasi,
bisa saja tidak sempurna atau tidak lengkap, dan sesuai fakta lapangan. Bentuk
ini didapat dari dokumen yang ada dilapangan atau manual dengan atribut bukan
nilai sederhana.
Kedua; First
Normal Form (1NF)
Suatu
tabel dianggap normal ke satu (1NF) jika :
- Tidak terdapat baris yang bernilai ganda atau duplikat.
- Masing-masing baris bernilai tunggal dan tidak bernilai null.
Langkah–langkah :
- Isikan setiap data bernilai tunggal dan tidak null
- Membuang perulangan data dalam satu baris dengan baris yang lain.
Ketiga; Second
Normal Form (2NF)
Bentuk
normal kedua (2NF) terpenuhi jika :
- Harus telah berbentuk normal pertama (1NF).
- pada sebuah tabel semua atribut yang tidak termasuk dalam primary key memiliki ketergantungan fungsional pada primary key secara utuh. Suatu atribut dikatakan ketergantungan fungsional jika harga pada atribut tersebut menentukan harga dari atribut yang lain. Misalnya, nim → mhs_nama.
Langkah–langkah :
Jika terdapat atribut yang bergantung terhadap atribut bukan kunci utama dan merupakan atribut kunci maka pecah menjadi table baru.
Jika terdapat atribut yang bergantung terhadap atribut bukan kunci utama dan merupakan atribut kunci maka pecah menjadi table baru.
Keempat; Third
Normal Form (3NF)
Bentuk
normal ketiga (3NF) terpenuhi jika :
- Harus telah berbentuk normal kedua (2NF).
- Tidak terdapat anomali – anomali hasil dari ketergantungan transitif. ketergantungan transitif adalah ketergantungan fungsional antara 2 atau lebih atribut bukan kunci.
Langkah–langkah :
- Pastikan semua atribut non kunci bergantung penuh terhadap atribut kunci.
- Pisahkan menjadi tabel baru jika menemukan ketergantungan transitif dalam tabel tersebut.
Kelima; Boyce
Codd Normal Form (BCNF)
Secara
praktis tujuan analisis database cukup sampai pada 3NF, Akan tetapi dalam suatu
kasus tertentu lebih baik bila dapat mencapat BCNF. Beberapa pemikir menyamakan
antara 3NF dengan BCNF. Bentuk normal BCNF terpenuhi jika :
- Masing-masing atribut utama bergantung fungsional penuh pada masing kunci dimana kunci tersebut bukan bagiannya.
- Setiap determinan atribut-atribut relasi adalah kunci relasi atau kandidat kunci.
- BCNF dapat memiliki lebih dari satu kunci.
- BCNF hampir sama dengan 3NF.
- Langkah – langkah :
- Hilangkan dependensi pada bukan kunci kandidat.
Keenam; Fourth
Normal Form (4NF)
Dilakukan
jika terdapat anomali pada (3NF)
Ketujuh; Fifth
Normal Form (5NF)
Langkah
ini untuk memecah relasi menjadi dua sehingga relasi tersebut tidak digabungkan
kembali manjadi satu dan jika terdapat anomali pada (5NF) Fungsi
Normalisasi Database
Pada ilmu database atau basis data, normalisasi digunakan untuk menghindari terjadinya berbagai anomali data dan tidak konsistensinya data. Ini merupakan fungsi database secara umum. Dalam beberapa kasus normalisasi ini sangat penting untuk menunjang kinerja database dan memastikan bahwa data dalam database tersebut aman dan tidak terjadi kesalahan jika mendapat perintah SQL terutama DML yaitu update, insert, dan delete.
Perlu diketahui
dalam beberapa kasus Normalisasi database terkadang harus diubah menjadi bentuk
denormalisasi, terutama untuk data yang telah besar dan membengkak.
Denormalisasi ini ditujukan untuk meningkatkan performance dengan meletakkan
beberapa field menjadi satu tabel sehingga mudah di tarik. Denormalisasi ini
sering digunakan untuk menarik data yang besar dari database.
Hasil Praktikum
Nota 1
Kita akan melakukan normalisasi pada nota berikut.
Langkah pertama, melakukan unnormalization.
Langkah kedua, First Normal Form (1NF). Update tabel, sehingga semua terisi.
Langkah ketiga, Second Normal Form (2NF).
Kita cari kunci field yang bersifat unik (primary key)
Langkah keempat, Third Normal Form (3NF).
Menghilangkan anomali yang masih mempunyai ketergantungan fungsional.
Langkah keempat, Boyce Codd Normal Form (BCNF).
Menghilangkan dependensi yang ada.
Nota 2
Selanjutnya, kita akan melakukan normalisasi pada nota berikut.
Langkah pertama, melakukan unnormalization.
Langkah kedua, First Normal Form (1NF).Langkah ketiga, Second Normal Form (2NF).
Langkah keempat, Third Normal Form (3NF).
Kesimpulan
Dari hasil praktikum yang telah dilakukan, dapat
disimpulkan bahwa normalisasi database merupakan suatu pendekatan
sistematis untuk meminimalkan redundansi data pada suatu database agar database
tersebut dapat bekerja dengan optimal. Tujuan normalisasi database adalah untuk
menghilangkan dan mengurangi redudansi data dan tujuan serta memastikan
dependensi data. Tahapan normalisasi data adalah sebagai berikut
Pertama; Anormalisasi
Kedua; First Normal Form (1NF)
Ketiga; Second normal form (2NF)
Keempat; Third Normal Form (3NF)
Kelima; BCNF Boyce–Codd normal form.
Sekian dulu yaa laporannya kali ini. Semoga sobat
semua bisa ngambil manfaat dari postingan ini. Ana tunggu juga kritik dan
sarannya yang membangun Sob. Terimakasih.
Referensi:
Modul
Praktikum Desain Basis Data
http://blogging.co.id/normalisasi-database
http://endangmike.blogspot.com/2013/06/catra-me-normalisasi-data.html
0 komentar:
Posting Komentar