NORMALISASI
1. Teori Dasar
Definisi dari Normalisasi
Normalisasi
adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk
memenuhi kebutuhan pemakai di dalam suatu organisasi.
Normalisasi adalah proses pengelompokan data ke
dalam bentuk tabel atau relasi atau file untuk menyatakan entitas dan hubungan
mereka, sehingga terwujud satu bentuk basis data yang mudah untuk di
modifikasi.
Normalisasi
adalah suatu prosses untuk mengidentifikasi “tabel” kelompok atribut yang
memiliki ketergantungan sangat tinggi antara satu atribut dengan atribut
lainnya.
Secara garis
besar, dapat disimpulkan normalisasi adalah sebuah proses yang digunakan untuk
membentuk struktur basis data agar terhindar dari ambiguitas sehingga lebih
efisien.
Normalisasi
dilakukan sebagai uji coba pada suatu relasi secara berkelanjutan untuk
menentukan apakah relasi itu sudah baik, yaitu dapat dilakukan proses insert,update,delete,
dan modifikasi pada satu atau beberapa atribut tanpa mempengaruhi integritas
data dalam relasi tersebut.
- Untuk Menghilangkan kerangkapan data
- Untuk mengurangi kompleksitas
- Untuk mempermudah pemodifikasian data
- Meminimalkan jumlah penggunaan storage space
- Meminimalkan inkonsistensi data dalam suatu basis data
- Menghilangkan anomali yang berkaitan dengan modifikasi data: operasi insert,update,delete.
- Memaksimalkan stabilitas dari struktur data sehingga mengurangi kebutuhan modifikasi skema dimasa datang.
Proses Normalisasi
- Data diuraikan dalam bentuk
tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa
tingkat.
- Apabila tabel yang diuji belum
memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi
beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.
Tahapan Normalisasi Data :
1. Unnormalization Form
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.
2. 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
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.
4. 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.
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.
6. Fourth Normal Form (4NF)
Dilakukan jika terdapat anomali pada (3NF)
7. Fifth Normal Form (5NF)
Langkah ini untuk memecah relasi menjadi dua
sehingga relasi tersebut tidak gabungkan kembali manjadi satu dan jika terdapat
anomali pada (5NF)
Contoh permasalahan dalam Normalisasi
Terdapat suatu hasil kartu studi yang bersifat manual dan akan kita anilisis menggunakan teknik Normalisasi sebagai berikut :
Tahap anilisis dengan Normalisasi :
Biasanya ketika mencapai pada tahap Third Normal Form (3NF) sudah memenuhi
syarat untuk digunakan dalam pembuatan aplikasi database. Namun
apabila masih terdapat anomali maka bisa dilanjutkan ke tahap berikutnya
sampai tidak terdapat anomali.
2. Hasil Praktikum
Buatlah Normalisasi dari data tersebut :
Sistem Informasi toko serba_ada
1. Tahap Unnormalization
2. Tahap First Normal Form ( 1NF )
3. Tahap Second Normal Form ( 2NF )
4. Tahap Third Normal Form (3NF)
3. KESIMPULAN
Normalisasi dilakukan sebagai uji coba pada suatu
relasi secara berkelanjutan untuk menentukan apakah relasi itu sudah baik,
yaitu dapat dilakukan proses insert,update,delete, dan modifikasi pada satu
atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut.
Normalisasi terdiri dari beberapa tahapan yang terdiri dari
Unnormalization, First Normal Form (1NF), Second Normal Form
(2NF), Third Normal Form (3NF), Boyce Codd Normal Form
(BCNF), Fourth Normal Form (4NF), Fifth Normal Form (5NF). Dalam
penerapannya biasanya tahapan-tahapan normalisasi hanya sampai bentuk 3NF,
karena dalam bentuk 3NF sudah bisa dikatakan mencukupi. Bentuk 4NF dan 5NF
hanya dibutuhkan jika masih terdapat anomali-anomali pada bentuk sebelumnya.
Kritik Dan Saran
Mungkin dalam materi ini saya kurang
jelas, maka untuk diperjelaskan lagi ya pak :)
Manfaat
Semoga dengan adanya postingan ini, pembaca bisa
memahaminya dan bisa menerapkannya :)
Daftar Pustaka
- Fathansyah,
2012, BASIS DATA, Bandung : Informatika
- Suntata.
edi, 2004, SISTEM BASIS DATA, Yogyakarta : Graha Ilmu.
- Modul
Praktikum Desain Basis Data BAB VI (Normalisasi)
- http://jewyner.wordpress.com/category/pengertian-normalisasi-data-base-dan-contohnya/
- http://komparkompor.blogspot.com/p/normalisasi-1nf-2nf-3nf.html