BEBERAPA
PENGERTIAN NORMALISASI :
Normalisasi
merupakan proses pengelompokan elemen data menjadi tabel–tabel yang
menunjuk-kan entity dan relasinya.
Normalisasi
adalah proses pengelompokan atribute-atribute dari suatu relasi sehingga
membentuk WELL STRUCTURE RELATION.
Keuntungan
dari normalisasi, yaitu :
1.
Meminimalkan ukuran penyimpanan yang diperlukan untuk menyimpan data.
2.
Meminimalkan resiko inkonsistensi data pada basis data
3.
Meminimalkan kemungkinan anomali pembaruan
4.
Memaksimalkan stabilitas struktur data
WELL
STRUCTURE RELATION
Adalah
sebuah relasi yang jumlah kerangkapan datanya sedikit (minimum Amount Of
Redundancy), serta memberikan kemungkinan bagi user untuk melakukan INSERT,
DELETE, dan MODIFY terhadap baris-baris data pada relation tersebut, yang tidak
berakibat terjadinya ERROR atau INKONSESTENSI DATA, yang disebabkan oleh
operasi-operasi tersebut.
Contoh :
Terdapat
sebuah relation Course, dengan ketentuan sbb:
1. Setiap
mahasiswa hanya boleh mengambil satu matakuliah saja.
2. Setiap
matakuliah mempunyai uang kuliah yang standar (tidak tergantung pada mahasiswa
yang mengambil matakuliah tsb).
RELASI
KURSUS
• Relasi di
atas merupakan sebuah relation yang sederhana dan terdiri dari 3 kolom/atribute
• Bila
diteliti secara seksama, maka akan ditemukan redundancy pada datanya, dimana
biaya kuliah selalu berulang pada setiap mhs. Akibatnya besar kemungkinan
terjadi Error atau inkonsistensi data, bila dilakukan update terhadap relation
tsb yang disebut dengan Anomali.
ANOMALY
merupakan penyimpangan-penyimpangan atau Error atau inkonsistensi data yang
terjadi pada saat dilakukan proses insert, delete maupun update.
Terdapat 3
jenis Anomali :
1. Insertion
Anomali
Error yang
terjadi sebagai akibat operasi insert record/tuple pada sebuah relation.
contoh :
Ada
matakuliah baru (CS-600) yang akan diajarkan, maka matakuliah tsb tidak bisa di
insert ke dalam relation tsb sampai ada mhs yang mengambil matakuliah tsb.
2. Deletion
Anomali
Error yang
terjadi sebagai akibat operasi delete record/tuple pada sebuah relation.
Contoh :
Mhs dengan
student-id 92-425, memutuskan untuk batal ikut kuliah CS-400, karena dia
merupakan satu-satunya peserta matakuliah tsb, maka bila record/tuple tsb
didelete akan berakibat hilangnya informasi bahwa mata-kuliah CS-400, biayanya
150
3. Update
Anomali
Error yang
terjadi sebagai akibat inkonsistensi data yang terjadi sebagai akibat dari
operasi update record/tuple dari sebuah relation
Contoh :
Bila biaya
kuliah untuk matakuliah CS-200 dinaikan dari 75 menjadi 100, maka harus
dilakukan beberapa kali modifikasi terhadap record-record, tuple-tuple mhs yang
mengambil matakuliah CS-200, agar data tetap konsisten.
PROBLEM-PROBLEM
PADA RELATION YANG SUDAH DINORMALISASI
Performance problem
Masalah
terhadap performa database
Referential Integrity Problem
Masalah yang
timbul terhadap referensi antar data-data diantara dua tabel atau lebih
BEBERAPA
KONSEP YANG HARUS DIKETAHUI:
A.
Field/Atribut Kunci
B.
Kebergantungan Fungsi
A. Key
Field/atribute kunci dalam database:
1. Super key
Yaitu
himpunan dari satu atau lebih entitas yang digunakan untuk mengidentifikasikan
secara unik sebuah entitas dalam entitas set.
2. Candidate
key
Yaitu satu
attribute atau satu set minimal atribute yang mengidentifikasikan secara unik
suatu kejadian yang spesifik dari entity.
3. Primary
key
Yaitu satu
atribute atau satu set minimal atribute yang tidak hanya mengidentifikasikan
secara unik suatu kejadian yang spesifik tapi juga dapat mewakili setiap
kejadian dari suatu entity
4. Alternate
key
Yaitu kunci
kandidat yang tidak dipakai sebagai primary key
5. Foreign
key
yaitu satu
atribute (atau satu set atribute) yang melengkapi satu relationship (hubungan
yang menunjukkan ke induknya).
Super key = S#, SNAME, KODE
Candidat key = S#, SNAME
Primary key = S#
Altenative
key = SNAME
B.
Ketergantungan Kunci
1.
Ketergantungan Fungsional (Fungsional Dependent)
Keterkaitan
antar hubungan antara 2 atribute pada sebuah relasi. Dituliskan dengan cara : A
-> B, yang berarti :
Atribute B
fungsionality Dependent terhadap atribute A atau
Isi (value)
atribute A menentukan isi atribute B
Definisi
dari functional dependent :
Diketahui
sebuah relasi R, atribute Y dari R adalah FD pada atribute X dari R ditulis R.X
-> R.Y jika dan hanya jika tiap harga X dalam R bersesuaian dengan tepat
satu harga Y dalam R
2. Fully
Functinaly Dependent (FFD)
Suatu rinci
data dikatakan fully functional dependent pada suatu kombinasi rinci data jika
functional dependent pada kombinasi rinci data dan tidak functional dependent
pada bagian lain dari kombinasi rinci data.
Definisi
dari FDD:
Atribute Y
pada relasi R adalah FFD pada atribute X pada relasi R jika Y FD pada X tida FD
pada himpunan bagian dari X
3.
Ketergantungan Partial
Sebagian
dari kunci dapat digunakan sebagai kunci utama
4.
Ketergantungan Transitif
Menjadi atribute
biasa pada suatu relasi tetapi menjadi kunci pada relasi lain.
5.
Determinan
Suatu
atribute (field) atau gabungan atribute dimana beberapa atribute lain
bergantung sepenuhnya pada atribute tersebut.
1. Bentuk
tidak normal (Unnormalized Form):
Bentuk ini
merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti suatu
format tertentu. Dapat saja data tidak lengkap atau terduplikasi. Data
dikumpulkan apa adanya sesuai dengan saat menginput.
Ket : PA =
Penasehat Akademik
Siswa yg
punya nomor siswa, nama, dan PA mengikuti 3 mata pelajaran/kelas. Disini ada
perulangan kelas 3 kali ini bukan bentuk 1 NF
2. Bentuk
Normal Ke Satu (1 NF/First Normal Form)
Suatu relasi
1NF jika dan hanya jika sifat dari setiap relasi atributnya bersifat atomik.
Atom adalah
zat terkecil yang masih memiliki sifat induknya, bila dipecah lagi maka ia
tidak memiliki sifat induknya.
Ciri-ciri 1
NF :
• Setiap
data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record
nilai dari field berupa “atomic value”
• Tidak ada
set atribute yang berulang atau bernilai ganda
• Tiap field
hanya satu pengertian
3. Bentuk
Normal Ke Dua (2 NF/Second Normal Form)
Bentuk
normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk
normal kesatu. Atribute bukan kunci haruslah bergantung secara fungsi pada
kunci utama/primary key. Sehingga untuk membentuk normal kedua haruslah sudah
ditentukan kunci-kunci field. Kunci field haruslah unik dan dapat mewakili
atribute lain yg menjadi anggotanya.
Misal :
Dari contoh
relasi Siswa pada I NF terlihat bahwa kunci utama/primary key adalah nomor
siswa. Nama siswa dan PA bergantung fungsi pada no_siswa, tetapi kode_kelas
bukanlah fungsi dari siswa, maka file siswa dipecah menjadi 2 relasi
4. Bentuk
Normal Ke Tiga (3 NF / Third Normal Form)
Untuk
menjadi bentuk normal ketiga maka relasi haruslah dalam bentuk normal kedua dan
semua atribute bukan primer tidak punya hubungan yang transitif. Dengan kata
lain, setiap atribute bukan kunci haruslah bergantung hanya pada primary key
dan pada primary key secara menyeluruh.
Contoh pada
bentuk normal kedua di atas termasuk juga bentuk normal ke tiga karena seluruh
atribute yang ada disitu bergantung penuh pada kunci primernya
5.
Boyce-Codd Normal Form ( BCNF)
BCNF
mempunyai paksaan yg lebih kuat dari bentuk normal ketiga. Untuk menjadi BCNF,
relasi harus dalam bentuk normal kesatu dan setiap atribute harus bergantung
fungsi pada atribute superkey
Pada contoh
di bawah ini terdapat relasi seminar dengan ketentuan sbb :
a. kunci
primer adalah no_siswa+seminar.
b. Siswa
boleh mengambil satu atau dua seminar.
c. Setiap
siswa dibimbing oleh salah satu diantara 2 instruktur seminar tsb.
d. Setiap
instruktur boleh hanya mengambil satu seminar saja.
Pada contoh
ini no_siswa dan seminar menunjuk seorang instruktur :
Bentuk
relasi seminar adalah bentuk normal ketiga, tetapi tidak BCNF karena nomor
seminar masih bergantung fungsi pada instruktur, jika setiap instruktur dapat
mengajar hanya pada satu seminar. Seminar bergantung fungsi pada satu
atribute bukan superkey
seperti yg disyaratkan
oleh BCNF.
Maka relasi
seminar haruslah dipecah menjadi dua yaitu :
6. Bentuk
Normal Ke Empat (4 NF)
Relasi R
adalah bentuk 4 NF jika dan hanya jika relasi tersebut juga termasuk BCNF dan
semua ketergantungan multivalue adalah juga ketergantungan fungsional
7. Bentuk
Normal Ke Lima (5 NF)
Disebut juga
PJNF (Projection Join Normal Form) dari 4 NF dilakukan dengan menghilangkan
ketergantungan join yang bukan merupakan kunci kandidat.
Tidak ada komentar:
Posting Komentar