TEHNIK NORMALISASI
TEHNIK
NORMALISASI
BEBERAPA
PENGERTIAN NORMALISASI :
Normalisasi
merupakan proses pengelompokan
elemen data menjadi
tabel–tabel yang menunjuk-kan
entity dan
relasinya.
Normalisasi adalah
proses pengelompokan atributeatribute
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 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
Berdasarkan teori
normalisasi, relation course dipecah
menjadi 2 relation terpisah , sebagai
berikut :
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
_ Foreign
key = KODE
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 Functionaly
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
Contoh:
PersonID, Project,
Project_budget _
time_spent_byperson_onProject
(bukan FFD)
PersonID, Project _
time_spent_byperson_onProject
(FDD)
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
Tidak ada komentar:
Posting Komentar