IMPLEMENTASI NORMALISASI DATA
Normalisasi Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi). Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat menambah, mengubah atau menghapus pada suatu basis data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal.
Normalisasi Anomali adalah proses pada basis data yang memberikan efek samping yang tidak diharapkan (misalnya ketidakkonsistenan data karena adanya redudansi). Ada 3 macam anomali pada suatu database: Anomali penyisipan data (insert) Anomali pengubahan data (update) Anomali penghapusan data (delete) Bila ada anomali maka relasi mungkin perlu dipecah menjadi beberapa tabel lagi agar diperoleh database yang optimal.
Normalisasi Depedensi (Ketergantungan). Depedensi merupakan konsep yang mendasari normalisasi. Depedensi menjelaskan nilai suatu atribut yang menentukan nilai atribut lainnya. Jenis depedensi antara lain: Depedensi Fungsional Depedensi Transitif Definisi : Suatu atribut Y mempunyai dependensi fungsional terhadap atribut X dan hanya jika setiap nilai nilai X berhubungan dengan sebuah nilai Y. X Y
Normalisasi Depedensi Transitif Definisi : Atribut Z mempunyai depedensi transitif terhadap X bila: Y memiliki depedensi fungsional terhadap X Z memiliki depedensi fungsional terhadap Y Bentuk tidak normal (unnormalized Form) : Bentuk ini merupakan kumpulan data yang direkam, tidak ada keharusan mengikuti suatu format tertentu, bisa tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan kedatangannya. (Lihat contoh kasus)
Studi Kasus Normalisasi Data Untuk mendapatkan hasil yang paling normal, maka proses normalisasi dimulai dari normal pertama. Field-field tabel di atas yang merupakan group berulang : NoPegawai, NamaPegawai, Golongan, BesarGaji.
Bentuk Normaliasi
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Bentuk Normaliasi…
Normal Pertama (1st Normal Form) Contoh Normaliasi… Normal Pertama (1st Normal Form) Aturan : Mendefinisikan atribut kunci Tidak adanya group berulang Semua atribut bukan kunci tergantung pada atribut kunci
Normalisasi pertama Solusinya hilangkan duplikasi dengan mencari ketergantungan parsial. menjadikan field-field menjadi tergantung pada satu atau beberapa field. Karena yang dapat dijadikan kunci adalah NoProyek dan NoPegawai, maka langkah kemudian dicari field-field mana yang tergantung pada NoProyek dan mana yang tergantung pada NoPegawai.
Normalisasi Kedua (2nd Normal Form) Contoh Normaliasi… Normalisasi Kedua (2nd Normal Form) Aturan : Sudah memenuhi dalam bentuk normal ke satu Sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada field kunci. Field-field yang tergantung pada satu field haruslah dipisah dengan tepat, misalnya NoProyek menjelaskan NamaProyek dan NoPegawai menjelaskan NamaPegawai, Golongan dan BesarGaji.
Normalisasi Kedua TABEL PROYEK TABEL PEGAWAI
Untuk membuat hubungan antara dua tabel, dibuat suatu tabel yang berisi key-key dari tabel yang lain. TABEL PROYEKPEGAWAI
Normalisasi Ketiga (3rd Normal Form) Contoh Normaliasi… Normalisasi Ketiga (3rd Normal Form) Aturan : Sudah berada dalam bentuk normal kedua Tidak ada ketergantungan transitif (dimana field bukan kunci tergantung pada field bukan kunci lainnya).
Normalisasi Ketiga Pada tabel diatas masih terdapat masalah, bahwa NoPegawai 12 mendapatkan BesarGaji yang tidak sesuai dengan Golongan nya. Solusinya adalah kita harus mencari hubungan transitif (transitive relation) dimana field non-key tergantung pada field non-key lainnya. Artinya kita harus memisahkan fielfd non-kunci Golongan yang tadinya tergantung secara parsial kepada field kunci NoPegawai, untuk menghilangkan anomali penulisan data pada field BesarGaji.
TABEL PROYEKPEGAWAI TABEL PROYEK TABEL PEGAWAI TABEL GOLONGAN
Tabel-tabel yang memenuhi kriteria normalisasi ketiga, sudah siap diimplementasikan. Sebenarnya masih ada lagi bentuk normalisasi yang lain; Normalisasi Boyce-Codd dan normalisasi keempat, hanya saja sangat jarang dipakai. Pada kebanyakan kasus, normalisasi hanya sampai ketiga.
Latihan 1 : Dari Laporan Data Binaan Proyek yang diterima oleh PT.Malaya. Normalisasikan laporan di atas ke dalam bentuk 3NF. Tentukan tabel yang akan muncul untuk menjaga integritas data.
Latihan 2 : Perusahaan yang memiliki Karyawan dengan jabatan tertentu dipimpin oleh Kepala Divisi. Normalisasikan Data di atas ke dalam bentuk 3NF lalu dengan memperhatikan integritas data Tentukan tabel yang akan terbentuk.
Latihan 3 : Sebuah Tempat Bimbingan Kursus memerlukan database untuk mengolah data. Dari laporan di atas Normalisasikan data hingga bentuk Normalisasi 3NF. Tentukan Tabel yang akan terbentuk.