Sistem Basis Data

advertisement
Sistem Basis Data
Redudancy
Anomali
Kriteria Tabel efisien
Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi
3 kriteria sbb:
1.
2.
3.
Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya
harus dijamin aman (Lossless-Join Decomposition). Artinya,
setelah tabel tersebut diuraikan / didekomposisi menjadi tabeltabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel
semula dengan sama persis.
Terpeliharanya ketergantungan fungsional pada saat perubahan
data (Dependency Preservation).
Tidak melanggar Boyce-Code Normal Form (BCNF) (-akan
dijelaskan kemudian-)
Anomali (Anomaly)
• Anomali/Penyimpangan
adalah
suatu
masalah yang timbul pada suatu tabel,
dimana masalah itu akan terjadi pada saat
tabel akan dimanipulasi
• Masalah yang timbul :
- ketidakkonsistenan data
- data menjadi hilang ketika data lain dihapus
Macam Anomali
1. Anomali Penambahan (Insert Anomaly)
2. Anomali Pengubahan (Update Anomaly)
3. Anomali Penghapusan (Delete Anomaly)
Menjadikan Form Normal
Tujuannya adalah untuk menghilangkan anomali – anomali.
• Anomali Penambahan Data
Penambahan record baru mengharuskan duplikasi nilai – nilai atribut
tertentu.
• Anomali Penghapusan Data
Penghapusan record dapat mengakibatkan hilangnya nilai atribut yang
hanya terdapat pada record tersebut (yang mungkin masih dibutuhkan).
• Anomali Modifikasi Data
Pengubahan nilai atribut suatu record mengharuskan pengubahan atribut
yang sama pada banyak record – record lain.
Anomali Penambahan (Insert Anomaly)
Anomali Penambahan terjadi pada saat
penambahan data hendak dilakukan
ternyata ada elemen data yang masih
kosong dan elemen data tersebut
diperlukan untuk proses penambahan
Contoh relasi yang menimbulkan anomali penambahan
MataKuliah
KodeMK
NamaMK
Ruang
Tempat
MK01
Pancasila
A 201
Lantai 2
MK02
Jaringan
A 302
Lantai 3
MK03
Basis Data A 204
Lantai 2
MK04
Statistika
A 401
Lantai 4
MK05
Kalkulus
A 402
Lantai 4
Relasi diatas menyatakan bahwa :
- Untuk suatu KULIAH menggunakan RUANG
tertentu
(misal Pancasila menggunakan Ruang A 201)
- Untuk suatu RUANG berada pada TEMPAT
tertentu
(misal Ruang A 201 berada pada lantai 2)
• Masalah :
Bagaimana cara menyimpan data bila terdapat
fakta ada ruang baru dengan nama A 501 yang
terdapat pada lantai 5 ?
Penyisipan tidak dapat dilakukan mengingat
tidak ada / belum ada perkuliahan yang
menggunakan ruang tersebut
Contoh Anomali Penambahan
Tidak dapat memasukkan pegawai baru yang tidak mengambil kursus.
10
Anomali Penghapusan (Delete Anomaly)
Anomali Penghapusan terjadi apabila ada
suatu tupel yang tidak terpakai dihapus
mengakibatkan adanya data lain yang hilang
Contoh relasi yang menimbulkan anomali penghapusan
Kursus
No Siswa Nama Siswa
Nama Kursus
001
Ali
Bahasa Inggris
Biaya
100000
002
003
004
Budi
Iwan
Arief
Bahasa Jerman
Bahasa Mandarin
Bahasa Inggris
150000
120000
100000
005
Putri
Bahasa Jepang
175000
• Masalah :
Seandainya data siswa dengan No Siswa 005
yang bernama Putri dihapus (dikarenakan data
tersebut tidak digunakan lagi maka recordnya
akan dihapus) maka mengakibatkan data yang
menyatakan bahwa biaya kursus bahasa
Jepang sebesar 175000 juga akan terhapus
Contoh Anomali Penghapusan
Jika pegawai dengan NIP 140 dihapus, informasi mengenai kursus Tax Acc
akan hilang
Sistem / Teknologi Basis Data
14
Anomali Pengubahan (Update Anomaly)
Anomali
pengubahan
terjadi
apabila
pengubahan pada sejumlah data yang
duplikasi
tetapi tidak seluruhnya diubah
Contoh relasi yang menimbulkan anomali pengubahan
Pemasok
Pemasok
Kota
Barang
Jumlah
Bahagia
Palemban
g
Monitor
10
Sentosa
Bandung
Keyboard
15
Makmur
Jakarta
Mouse
20
Bahagia
Palemban
g
CDROM
50
Masalah :
Seandainya pemasok Bahagia pindah ke kota
lain misalnya Semarang dan pengubahan
hanya dilakukan pada data yang pertama
(data pemasok Bahagia pada relasi Pemasok
ada 2 buah) maka hasilnya akan menyebabkan
ketidakkonsistenan
Relasi Pemasok setelah adanya pengubahan
Pemasok
Pemasok
Kota
Barang
Jumlah
Bahagia
Semarang
Monitor
10
Sentosa
Bandung
Keyboard
15
Makmur
Jakarta
Mouse
20
Bahagia
Palembang CDROM
50
• Ketidakkonsistenan yang terjadi :
- Fakta pertama menyatakan bahwa pemasok
Bahagia berlokasi di Semarang
- Fakta kedua menyatakan bahwa pemasok
Bahagia berlokasi di Palembang
Mana yang benar ?
Contoh Anomali Pengubahan
Menaikkan gaji pegawai dengan NIP 100 mengharuskan perubahan pada
beberapa record.
20
Penyebab Anomali
Mengapa anomali - anomali ini terjadi ?
• Karena menggabungkan dua tema (konsep entitas)
dalam satu relasi. Ini mengakibatkan duplikasi –
duplikasi sebagai akibat dari ketergantungan antar
atribut yang tidak pada tempatnya.
Solusi : Normalisasi
21
Redundansi (Redundancy)
• Munculnya data yang berulang kali pada suatu
tabel/relasi yang semestinya tidak diperlukan
• Kerangkapan data dapat terjadi :
- Kerangkapan data dalam satu file
- Kerangkapan data dalam beberapa file
Download