Senin, 18 Juni 2012

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).














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
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