Normalisasi
NORMALISASI
Definisi
Normalisasi adalah suatu teknik untuk mengorganisasi data kedalam tabel-tabel untuk memenuhi kebutuhan pemakai didalam suatu organisasi.
Teknik Normalisasi
Pengertian normalisasi ada beberapa yang berpendapat:
Istilah Normalisasi berasal dari E. F.Codd, salah seorang perintis teknologi basis data. Selain dipakai sebagai metodologi tersendiri untuk menciptakan struktur table 9 relasi dalam basis data (dengan tujuan untuk mengurangi kemubadziran data), normalisasi terkadang hanya dipakai sebagai perangkat verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain ( misalnya E-R). Normalisasi memberikan panduan yang sangat membantu bagi pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel atau mengurangi kefleksibelan.Kroenke mendefinisikan normalisasi sebagai proses untuk mengubah suatu relasi yang memiliki masalah tertentu ke dalam dua buah relasi atau lebih yang tidak memiliki masalah tersebut. Masalah yang dimaksud oleh Kroenke ini sering disebut dengan istilah anomali. Normalisasi merupakan sebuah teknik dalam logikal desain sebuah basis data/ database, teknik pengelompokan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi). Normalisasi adalah suatu proses memperbaiki/membangun dengan model data relasional, dan secara umum lebih tepat dikoneksikan dengan model data logika. 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/ menyisipkan, menghapus, mengubah dan mengakses 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.
Tujuan dari normalisasi itu sendiri adalah:
Untuk menghilangkan kerangkapan data Mengurangi kompleksitas Untuk mempermudah pemodifikasian data.
Tahapan normalisasi dapat diurai sebagai berikut: Bentuk Tidak Normal: menghilangkan perulangan group. Bentuk Normal Pertama (1NF): menghilangkan ketergantungan sebagian. Bentuk Normal Kesatu mempunyai ciri yaitu setiap data dibentuk dalam file flat, data dibentuk dalam satu record demi satu record dan nilai dari field berupa “atomic value ”. Tidak ada set atribut yang berulang-ulang atau atribut bernilai ganda (multi value). Tiap field hanya satu pengertian, bukan merupakan kumpulan data yang mempunyai arti mendua. Hanya satu arti saja dan juga bukanlah pecahan kata sehingga artinya lain. Bentuk Normal Kedua (2NF): menghilangkan ketergantungan transitif. Bentuk Normal Kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk Normal Kesatu. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama, sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci-kunci field. Kunci field harus unik dan dapat mewakili atribut lain yang menjadi anggotanya.Bentuk Normal Ketiga (3NF): menghilangkan anomali-anomali hasil dari ketergantungan fungsional. Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam bentuk Normal Kedua dan semua atribut bukan primer tidak punya hubungan yang transitif. Artinya setiap atribut bukan kunci harus bergantung hanya pada kunci primer secara menyeluruh. Bentuk Normal Boyce-Codd (BCNF): menghilangkan ketergantungan multivalue. Boyce-Codd Normal Form mempunyai paksaan yang lebih kuat dari bentuk Normal Ketiga. Untuk menjadi BNCF, relasi harus dalam bentuk Normal Kesatu dan setiap atribut dipaksa bergantung pada fungsi pada atribut super key.Bentuk Normal Keempat (4NF): menghilangkan anomali-anomali yang tersisa.Bentuk Normal Kelima: pengujian untuk memastikan kebenaran isi tabel dan hubungan antara tabel tersebut.
Tujuan dari normalisasi
Untuk menghilangkan kerangkapan data
Untuk mengurangi kompleksitas
Untuk mempermudah pemodifikasian data
Proses Normalisasi
v Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu kebeberapa tingkat.
v Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka table tersebut perlu dipecah menjadi beberapa table yang lebih sederhana sampai memenuhi bentuk yang optimal.
Tahapan Normalisasi
Bentuk Tidak Normal
Menghilangkan perulangan group
Bentuk Normal Pertama (1NF)
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 anomali-anomali yang tersisa
Bentuk Normal Kelima
Ketergantungan Fungsional
Definisi :
Atribut Y padarelasi R dikatakan tergantung fungsional pada atribut X (R.X ---> R.Y), jika dan hanya jika setiap nilai X pad relasi R mempunyai tepat satu nilai Y padaR.Misal, terdapat skema database Pemasok-barang :Pemasok (No-pem, Na-pem)
Tabel PEMASOK-BARANG
No-pem Na-pem
P01 Baharu
P02 Sinar
P03 Harapan
Ketergantungan fungsional dari tabel PEMASOK-BARANG adalah :
No-pem ---> Na-pem
Ketergantungan Fungsional Penuh
Definisi :
Atribut Y padarelasi R dikatakan tergantung fungsional penuh pada atribut X padarelasi R, jika Y tidak tergantung pada subset dari X ( bila X adalah key gabungan