Anda di halaman 1dari 35

Kumpulan Materi Kuliah

http://hendroagungs.blogspot.co.id
NORMALISASI

Basis Data
Definisi
• Istilah Normalisasi berasal dari E. F.Codd
• Normalisasi adalah suatu metodologi
tersendiri untuk menciptakan struktur tabel
(relasi) dalam basis data
• Normalisasi terkadang hanya diipakai sebagai
perangkat verifikasi terhadap tabel-tabel yang
dihasilkan oleh metodologi lain ( misalnya E-
Definisi
• Kroenke mendefinisikan:
• Normalisasi sebagai proses untuk mengubah
suatu relasi yang memiliki masalah tertentu ke
dalam dua buah relasi atau lebih yang tida
memiliki masalah tersebut.
• Masalah yang dimaksud oleh kroenke ini
sering disebut dengan istilah anomali.
Definisi
• Normalisasi adalah teknik dalam logical desain
sebuah basis data / database untuk
mengelompokkan atribut dari suatu relasi
sehingga membentuk struktur relasi yang baik
(tanpa redudansi).
• Normalisasi adalah proses pengelompokan
atributeatribute dari suatu relasi sehingga
membentuk WELL STRUCTURE RELATION.
Keuntungan normalisasi
• Meminimalkan ukuran penyimpanan yang
diperlukan untuk menyimpan data.
• Meminimalkan resiko inkonsistensi data pada
basis data
• Meminimalkan kemungkinan anomali
pembaruan
• Memaksimalkan stabilitas struktur data
Rancangan database
dikatakan buruk jika :
• Data yang sama disimpan di beberapa tempat
• Ketidak mampuan untuk menghasilkan
informasi tertentu
• Terjadi kehilangan informasi
• Terjadi adanya redudansi dan duplikasi data
• Timbul adanya NULL value
Anomali
• Proses pada basis data yangg memerikan efek
samping yang tidak diharapkan.
• Jenis anomali
– Update anomali
– Insert anomali
– Delete anomali
Update anomali
Error yang terjadi sebagai akibat inkonsistensi data yang terjadi sebagai akibat
dari operasi update record/tuple dari sebuah relation
PEMASOK KOTA BARANG JUMLAH
Kartika Jakarta Monitor GGG 10
Citra Bandung Zip-drive 4
Candra Jakarta Keyboard 5
Citra Bandung Mouse CCP 25

Pemasok Citra Pindah ke kota Bogor, maka setelah dilakukan perubahan data :
PEMASOK KOTA BARANG JUMLAH
Kartika Jakarta Monitor GGG 10
Citra Bogor Zip-drive 4
Candra Jakarta Keyboard 5
Citra Bandung Mouse CCP 25
Insert Anomali
Error yang terjadi sebagai akibat operasi insert record/tuple pada sebuah relation
NO_SISWA NAMA_KURSUS BIAYA
10 b. Inggris 60.000
10 b. Prancis 80.000
10 b. Mandarin 60.000
15 b. Inggris 60.000
20 b. Jepang 65.000

Jika akan dibuka kursus baru, misalnya bahasa Arab dengan biaya 70.000, tetapi
Belum ada seorangpun yang mengambil kursus ini. Akibatnya data kursus baru ini tidak
Dapat dicatat.
Delete Anomali
• Error yang terjadi sebagai akibat operasi delete record/tuple pada sebuah
relation.
Anomali delete akan terjadi jika data no_siswa 20 akan di hapus, maka
semua data tentang kursus
NO_SISWA b. Jepang akan ikut terhapus
NAMA_KURSUS BIAYA
10 b. Inggris 60.000
10 b. Prancis 80.000
10 b. Mandarin 60.000
15 b. Inggris 60.000
20 b. Jepang 65.000
Jika di normalkan
NAMA_KURSUS BIAYA
b. Inggris 60.000
b. Prancis 80.000
b. Mandarin 60.000
b. Jepang 65.000

NO_SISWA NAMA_KURSUS
10 b. Inggris
10 b. Prancis
10 b. Mandarin
15 b. Inggris
20 b. Jepang
Beberapa konsep
• Atribut / key
• Ketergantungan fungsi
Atribut / Key
• Super key
yaitu himpunan dari satu atau lebih entitas
yang digunakan untuk mengidentifikasikan
secara unik sebuah entitas dalam entitas set.
• Candidat key
yaitu satu attribute atau satu set minimal
atribute yang mengidentifikasikan secara unik
suatu kejadian yang spesifik dari entity.
• 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
• Alternate key
yaitu kunci kandidat yang tidak dipakai sebagai primary key
• Foreign key
yaitu satu atribute (atau satu set atribute) yang melengkapi
satu relationship (hubungan yang menunjukkan ke induknya.
Contoh
Ketergantungan
• Ketergantungan/dependensi menjelaskan
hubungan antar atribut, atau secara lebih
khusus menjelaskan nilai suatu atribut yang
menentukan nilai atribut lainnya.
• Macam-macam ketergantungan
– Ketergantungan fungsional
– Ketergantung fungsional sepenuhnya
– Ketergantungan total
– Ketergantungan transitif
Ketergantungan fungsional
• Suatu atribut Y mempunyai ketergantungan
fungsional terhadap atribut X jika dan hanya
jika setiap nilai X berhubungan dengan sebuah
nilai Y
X→Y
• Yang berarti X secara fungsional menentukan
Y atau Y secara fungsional tergantung pada X
Contoh
NPM

NPM → namaMhs
Namakul, npm → nihuruf
Npm -→ nihuruf
Namakul -→npm
Ketergantungan transitif
• Definisi bentuk ketergantungan transitif
adalah sebagai berikut :
atribu Z mempunyai ketergantungan transitif
tehadap X, bila :
– Y memiliki ketergantungan fungsional terhadap X
(X→Y)
– Z memiliki ketergantungan fungsional terhadap Y
( Y → Z)
Contoh

Kuliah → tempat, waktu


Tempat → Ruang
Kuliah → Tempat →
Ruang
Tahapan Normalisasi
Sebuah tabel dikatakan baik (efisien) atau
normal jika memenuhi 3 kriteria sbb:
1. Jika ada dekomposisi (penguraian) tabel, maka
dekomposisinya harus dijamin aman (Lossless-
Join Decomposition). Artinya, setelah tabel
tersebut diuraikan / didekomposisi menjadi
tabel-tabel baru, tabel-tabel baru tersebut bisa
menghasilkan tabel semula dengan sama
persis.
2. Terpeliharanya ketergantungan fungsional pada
saat perubahan data (Dependency
Preservation).
Bentuk tidak normal (unnormal)
• Bentuk ini merupakan kumpulan data yang
akan direkam, tidak ada keharusan mengikuti
suatu format tertentu. Bisa saja data tidak
lengkap atau terduplikasi. Data dikumpulkan
apa adanya sesuai dengan saat mengimput
Contoh

No Mhs Nama Mhs Jurusan KodeMK Nama MK KodeDosen Nama Dosen Nilai
2683 Welli MI MI350 Manajamen DB B104 Ati A
MI465 Analsis Prc. Sistem B317 Dita B
5432 Bakri Ak. MI350 Manajemen DB B104 Ati C
AKN201 Akuntansi Keuangan D310 Lia B

MKT300 Dasar Pemasaran B212 Lola A


No Mhs Nama Mhs Jurusan KodeMK Nama MK KodeDosen Nama Dosen Nilai
2683 Welli MI MI350 Manajamen DB B104 Ati A
MI465 Analsis Prc. Sistem B317 Dita B
5432 Bakri Ak. MI350 Manajemen DB B104 Ati C
AKN201 Akuntansi Keuangan D310 Lia B

MKT300 Dasar Pemasaran B212 Lola A


Bentuk Normal Tahap Pertama (1st NF)
• Bentuk normal 1NF terpenuhi jika sebuah
tabel tidak memiliki atribut bernilai banyak
(multivalued attribute), atribut composite
atau kombinasinya dalam domain data yang
sama.
• Setiap atribut dalam tabel tersebut harus
bernilai atomic (tidak dapat dibagi-bagi lagi)
Contoh
unnormal

Bentuk 1st NF
unnormal
No Mhs Nama Mhs Jurusan KodeMK Nama MK KodeDosen Nama Dosen Nilai
2683 Welli MI MI350 Manajamen DB B104 Ati A
MI465 Analsis Prc. Sistem B317 Dita B
5432 Bakri Ak. MI350 Manajemen DB B104 Ati C
AKN201 Akuntansi Keuangan D310 Lia B

MKT300 Dasar Pemasaran B212 Lola A

Bentuk 1 st NF
No Mhs Nama Mhs Jurusan KodeMK Nama MK KodeDosen Nama Dosen Nilai
2683 Welli MI MI350 Manajamen DB B104 Ati A
2683 Welli MI MI465 Analsis Prc. Sistem B317 Dita B
5432 Bakri Ak. MI350 Manajemen DB B104 Ati C
5432 Bakri Ak. AKN201 Akuntansi Keuangan D310 Lia B

5432 Bakri Ak. MKT300 Dasar Pemasaran B212 Lola A


Bentuk normal ke 2
• Memenuhi bentuk 1NF
• 2nd normal form : Tiap attribut bukan kunci harus bergantung fungsi ke
attribut kunci
• Bergantung fungsi
A→B,C,D,E
A adalah kunci, sedangkan B,C,D,E bergantung fungsi terhadap A
• Menjadikan pengelompokan dalam tabel-tabel yang relevan
2st NF
2 NF
No Mhs Nama Mhs Jurusan KodeMK Nama MK KodeDosen Nama Dosen Nilai
2683 Welli MI MI350 Manajamen DB B104 Ati A
2683 Welli MI MI465 Analsis Prc. Sistem B317 Dita B
5432 Bakri Ak. MI350 Manajemen DB B104 Ati C
5432 Bakri Ak. AKN201 Akuntansi Keuangan D310 Lia B

5432 Bakri Ak. MKT300 Dasar Pemasaran B212 Lola A

Bentuk 2 NF KodeMK Nama MK KodeDosen Nama Dosen


No Mhs KodeMK Nilai
MI350 Manajamen DB B104 Ati
2683 MI350 A
MI465 Analsis Prc. Sistem B317 Dita
2683 MI465 B
AKN201 Akuntansi Keuangan D310 Lia
5432 MI350 C
MKT300 Dasar Pemasaran B212 Lola
5432 AKN201 B
No Mhs Nama Mhs Jurusan
5432 MKT300 A
2683 Welli MI
5432 Bakri Ak.
Bentuk normal ke 3
• Memenuhi bentuk 2 NF
• Atribut bukan kunci tidak memiliki
ketergantungan transitif terhadap kunci utama
• Ketergantungan transitif
A→B,C,D,E
C→E
C adalah trans untuk E dan A, maka harus di
dekomposisi menjadi :
A→B,C,D dan C→E
Contoh
KodeMK Nama MK KodeDosen Nama Dosen
MI350 Manajamen DB B104 Ati
MI465 Analsis Prc. Sistem B317 Dita
AKN201 Akuntansi Keuangan D310 Lia
MKT300 Dasar Pemasaran B212 Lola

Bentuk 3 NF
KodeDosen Nama Dosen KodeMK Nama MK KodeDosen
B104 Ati MI350 Manajamen DB B104
B317 Dita MI465 Analsis Prc. Sistem B317
D310 Lia AKN201 Akuntansi Keuangan D310
B212 Lola MKT300 Dasar Pemasaran B212
Diagram Normalisasi

Anda mungkin juga menyukai