TEHNIK NORMALISASI 1
NORMALISASI
Proses normalisasi menyediakan cara
sistematis untuk meminimalkan terjadinya kerangkapan data diantara relasi dalan
perancangan logikal basis data. 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.
Well Structure Relation
Adalah sebuah relation 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:
·
Setiap mahasiswa hanya boleh mengambil satu
matakuliah saja.
·
Setiap
matakuliah mempunyai uang kuliah yang standar (tidak tergantung pada mahasiswa yang mengambil matakuliah tsb.
Terdapat 3
jenis Anomali :
·
1.
Insertion Anomali
Error yang terjadi sebagai akibat
operasi insert record/tuple pada sebuah relation
·
2. Delettion
Anomali
Error yang terjadi sebagai akibat operasi
delete record/tuple pada sebuah relation
·
3. Update
Anomali
Error yang
terjadi sebagai akibat inkonsistensi data yang terjadi sebagai akibat dari
operasi update record/tuple dari sebuah relation.
RELATION COURSE
Relation
di atas merupakan sebuah relation yang sederhana dan terdiri dari 3 kolom/atribute.
Bila
diteliti secara seksama, maka akan ditemukan redundancy padadatanya, dimana biaya kuliah selalu
berulang pada setiap mhs. Akibatnya besarkemungkinan terjadi Error atau inkonsistensi data,
bila dilakukan updateterhadap relation tsb yang disebut dengan Anomali.
ANOMALY Merupakan penyimpangan-penyimpangan atau Error
atau Inkonsistensi datayang terjadi pada saat dilakukan proses insert, delete
ataupun modify.
Terdapat 3 jenis Anomali :
1.
Insertion
AnomaliError yang terjadi sebagai akibat operasi insert record/tuple pada
sebuah relation.
-
contoh
:Ada matakuliah baru (CS-600) yang akan diajarkan, maka matakuliah tsb tidak
bisadi insert ke dalam relation tsb sampai ada mhs yang mengambil matakuliah
tsb.
2.
Delettion
AnomaliError 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,
karenadia merupakan satu-satunya peserta matakuliah tsb, maka bila record/tuple
tsbdidelete akan berakibat hilangnya informasi bahwa mata-kuliah CS-400, biayanya1503.
3.
Update
AnomaliError yang terjadi sebagai akibat inkonsistensi data yang terjadi
sebagai akibat darioperasi update record/tuple dari sebuah relation
-
Contoh
:Bila biaya kuliah untuk matakuliah CS-200 dinaikan dari 75 menjadi 100, maka
harusdilakukan beberapa kali modifikasi terhadap record-record, tuple-tuple mhs
yangmengambil matakuliah CS-200, agar data tetap konsisten.
TEHNIK NORMALISASI 1
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.
Beberapa konsep yang harus diketahui :
a. Field/ Atribut Kunci
b. Kebergantungan Fungsi
a) Field (Atribut) Kunci
Setiap file selalu terdapat kunci dari file berupa field atau satu set
field yang dapat mewakili record. Misalnya Nomor Pokok Mahasiswa (NPM)
merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi, setiap pencarian
cukup dengan menyebut nomor mahasiswa tersebut maka dapat diketahui identitas
mahasiswa lainnya seperti nama, alamat dan atribut lainnya.
Nomor Pegawai (NIP) bagi data dosen, NIK untuk data karyawan, Kode_Kuliah
untuk data Mata kuliah, dan lain sebagainya.
Jenis Atribut Pada Entitas
Atribut yang melekat pada suatu entitas ada bermacam tipe seperti yang akan
dijelaskan sebagai berikut :
Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak
dapat lagi dipecah menjadi atribut lain.
Contoh :
Entitas mahasiswa mempunyai atribut sederhana berupa NIM, Nama
Mahasiswa .
Atribut Komposit : atribut
komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut
yang masing-masing memiliki arti tesendiri.
Contoh : entitas mahasiswa mempunyai atribut alamat. Alamat disini dapat
dipecah menjadi sub atribut seperti nama_kota, kode_pos.
Atribut Bernilai Tunggal : yaitu atribut yang hanya memiliki satu nilai untuk
setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut NPM, Nama, Alamat isi data
dari atribut ini hanya boleh diisi dengan 1 data. Setiap mahasiswa hanya
memiliki 1 NPM, 1 Nama, 1 Alamat.
Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap
barisnya.
Contoh : entitas mahasiswa mempunyai atribut Hobby isi data dari atribut
ini boleh lebih dari 1 data. Mahasiswa Roshita memiliki NPM 13402021 beralamat
di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga, Nyanyi, Masak dan
Nonton TV)
Atribut Harus Bernilai : yaitu
atribut yang harus memiliki nilai data untuk setiap barisnya. Biasanya atribut
seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam
pengisian dikosongi akan terjadi kesalahan.
Contoh : entitas mahasiswa mempunyai atribut NPM dan Nama_Mahasiswa yang
harus diisi datanya, sebab jika tidak diisi akan terjadi kekacauan dalam basis
data.
Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut Alamat, Hobby, Nama_Pacar yang
boleh untuk tidak diisi tetapi kalau diisi akan lebih baik.
Atribut Turunan : yaitu
atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan
dari atribut lain yang berkaitan.
Contoh : entitas mahasiswa mempunyai atribut IPK yang diperoleh dari
pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM mahasiswa
yang sama dan diproses sehingga menghasilkan IPK untuk mahasiswa yang
bersangkutan.
Super Key
Yaitu himpunan dari satu atau lebih entitas yang digunakan untuk
mengidentifikasikan secara unik sebuah entitas dalam entitas set
Kunci Kandidat (Candidate Key)
Kunci kandidat adalah satu atribut atau satu set atribut yang
mengidentifikasikan secara unik suatu kejadian spesifik dari entity. Satu set
atribut menyatakan secara tidak langsung dimana anda tidak dapat membuang
beberapa atribut dalam set tanpa merusak kepemilikan yang unik. Jika kunci
kandidat berisi lebih dari satu atribut, maka biasanya disebut sebagai
composite key (kunci campuran atau gabungan).
Kunci Primer (Primery Key)Primary key
Kunci Primer
(Primery Key)Primary key adalah satu atribut atau satu set minimal atribut
yang tidak hanyamengidentifikasi secara unik suatu
kejadian spesifik, tetapi juga dapat mewakilisetiap kejadian dari suatu
entity.Setiap kunci kandidat dapat
menjadi kunci primer tetapi sebaliknya sebaiknyadipilih satu saja yang dapat mewakili
secara menyeluruh terhadap entity yangada.
Kunci Alternatif (Alternate Key)
Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci
primer. Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya
dalam laporan.
Kunci Tamu (Foreign Key)
Kunci tamu adalah satu atribut atau satu set minimal atribut yang
melengkapi satu hubungan yang menunjukkan ke induknya. kunci tamu ditempatkan
pada entity anak dan sama dengan kunci primer induk yang direlasikan. Hubungan
antara entity induk dengan anak adalah hubungan satu lawan banyak (one to many
relationship).
TEHNIK NORMALISASI 3
MACAM-MACAM BENTUK NORMALISASI
LANGKAH- LANGKAH PEMEMBENTUK NORMALISAI :
1. 1.
Bentuk tidak normal (Unnormalized Form):Bentuk ini
merupakan kumpulan data yang akan direkam, tidak ada keharusan 1.
mengikuti suatu format tertentu. Dapat
saja data tidak lengkap atau terduplikasi. Datadikumpulkan
apa adanya sesuai dengan saat menginput.
Ket : PA = Penasehat
Akademik
Siswa yg
punya nomor siswa, nama, dan PA mengikuti 3 mata pelajaran/kelas. Disiniada perulangan kelas 3
kali ini bukan bentuk 1 NF.
1. 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 makaia tidak memiliki sifat
induknya.Ciri-ciri 1 NF :• Setiap
data dibentuk dalam flat file, data dibentuk dalam satu record demi saturecord nilai dari field berupa “atomic value• Tidak ada set atribute yang berulang atau bernilai
ganda• Tiap
field hanya satu pengertian.
1.
Bentuk Normal Ke Dua (2 NF /Second Normal
Form)
Bentuk normal kedua mempunyai
syarat yaitu bentuk data telah memenuhi kriteriabentuk normal kesatu. Atribute bukan kunci haruslah bergantung secara fungsi
padakunci utama/primary key.
Sehingga utk membentuk normal kedua haruslah sudahditentukan kunci-kunci field. Kunci
field haruslah unik dan dapat mewakili atributelain ygmenjadi anggotanya.
Misal :Daricontoh relasi Siswa pada I NF
terlihat bahwa kunci utama/primary key adalahnomor siswa. Nama siswa dan pa
bergantung fungsi pada no_siswa, tetapi kode_kelasbukanlah fungsi dari siswa, maka file
siswa dipecah menjadi 2 relasi
Relasi Siswa.
Dan
Relasi ambil_kelas
1.
Bentuk Normal Ke Tiga (3 NF / Third Normal
Form)
Untuk menjadi bentuk
normal ketiga maka relasi haruslah dalam bentuk normalkedua dan semua atribute bukan primer
tidak punya hubungan yg transitif. Dengankata lain,setiap atribute bukan kunci
haruslah bergantung hanya pada primary key danpada primary key secara menyeluruh.Contoh pada bentuk normal kedua di atas
termasuk juga bentuk normal ke tiga karenaseluruh atribute yang ada disitu bergantung penuh
pada kunci primernya
2.
Boyce-Codd Normal Form ( BCNF)BCNF mempunyai paksaan yg lebih kuat dari bentuk normal
ketiga. Untuk menjadiBCNF, relasi harus dalam bentuk normal kesatu dan setiap atribute
harus bergantungfungsi pada atribute superkeyPada contoh di bawah ini
terdapat relasi seminar dengan ketentuan sbb :
kunci primer adalah
no_siswa+seminar.
a.
Siswa boleh mengambil satu atau dua
seminar.
b.
b. Setiap siswa dibimbing oleh salah satu diantara 2
instruktur seminar tsb.
c.
c. Setiap instruktur boleh hanya mengambil satu
seminar saja.
Pada contoh ini no_siswa dan seminar
menunjuk seoranginstruktur :
Relasi seminar.
Bentuk relasi seminar adalah bentuk normal
ketiga, tetapi tidak BCNF karena nomorseminar masih bergantung fungsi pada instruktur,
jika setiap instruktur dapatmengajar hanya pada satu seminar.
Relasi pengajar.
1. Bentuk Normal Ke Empat (4 NF)
Relasi R adalah bentuk 4 NFjika dan hanya
jika relasi tersebut juga termasuk BCNFdan semua ketergantungan multivalue
adalah juga ketergantungan fungsional.
2. Bentuk Normal Ke Lima (5 NF)
Disebut juga PJNF (Projection Join Normal
Form) dari 4 NF dilakukan denganmenghilangkan ketergantungan join yang bukan
merupakan kunci kandidat.