RSS

Anomali Database


Anomali database menurut istilah berarti ketidaknormalan. Berarti perlu untuk di normalkan. Sedangkan menurut Kamus Besar Bahasa Indonesia disebutkan bahwa anomali berarti ketidaknormalan; penyimpangan dari normal; kelainan. Ndak normal atau menyimpang biasanya berkonotasi negatif karena pada dasarnya manusia itu pengennya hidup dalam standard yang bernilai positif. Tapi dalam beberapa hal penyimpangan juga bisa berarti positif karena konormalan yang kita temui ternyata memiliki standard negatif. “Ni agak mbulet penjelasannya”
Didalam database anomali database merupakan efek samping yang tidak diharapkan, yang ditimbulkan dari suatu proses. Untuk menormalkan perlu adanya Normalisasi. Tepatnya Normalisasi data. Normalisasi data merupakan suatu proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas dari anomali database, dan mengacu pada cara data item dikelompokkan ke dalam struktur record. Seperti yang pernahdi tulis di site ini.
Terdapat tiga macam anomali database, ialah:
a. Anomali Peremajaan, yang terjadi apabila dilakukan pengubahan data yang mengakibatkan pengubahan data lain yang tidak mempunyai hubungan secara logika. Misal dalam database ada record atau catatan yang mengalami perubahan,dengan demikian kalau hanya satu data yang berubah, maka anomali database memungkinkan untuk terjadi.
Contoh misalnya ada update atau peremajaan yang terjadi pada tabel dibawah ini, misal “citra” pada baris kedua ternyata pindah ke semarang, kalau hanya ada satu data saja yang di update maka Anomali database ini akan terjadi. Karena tidak semua data ubah.
Contoh : Tabel Pesanan
Pemasok Kota Barang Jumlah
Kartika Jakarta Mouse 5
Citra Bandung Monitor 2
Yudi Medan CPU 2
Citra Bandung Printer 1
Perhatikan tabel kedua, pada baris ke tiga, citra dengan kota bogor,sedangkan pada baris ke lima citra masih kotanya Bandung. Lihat tabel dibawah ini.
Pemasok Kota Barang Jumlah
Kartika Jakarta Mouse 5
Citra Semarang Monitor 2
Yudi Medan CPU 2
Citra Bandung Printer 1
Dari hasil disini terlihat bahwa data tentang pemasok Citra tidak sama yang menyebabkan ketidakkonsistenan data.
b. Anomali Penyisipan, yang terjadi apabila dilakukan penambahan atau penyisipan data yang mengakibatkan perlunya penambahan atau penyisipan data lain yang tidak mempunyai hubungan secara logika.
Sebagai contoh Anomali database ini terjadi pada saat penambahan data dalam sebuah tabel, ternyata ada elemen yang kosong dan elemen. Misalkan tabel pertama seperti dibawah ini:
NoSiswa Kursus Biaya
10 Bhs.Inggris 60000
10 Bhs.Perancis 80000
10 Bhs.Jepang 70000
15 Bhs.Inggris 60000
20 Bhs.Jepang 70000
Kondisi ini terjadi ketika akan dibuka kursus baru yaitu Bhs.Jerman dengan biaya 75000 akan tetapi belum ada seorangpun yang ikut kursus ini, sehingga bila ditambahkan tabel akan menjadisebagai berikut.
NoSiswa Kursus Biaya
10 Bhs.Inggris 60000
10 Bhs.Perancis 80000
10 Bhs.Jepang 70000
15 Bhs.Inggris 60000
20 Bhs.Jepang 70000
Bhs.Jerman 75000
Ini ada baris yang kosong, field yang kosong, kenyataan ini bila langsung dimasukkan kedalam tabel akan terjadi anomali database penyisipanatau anomali penyisipan.
d. Anomali Penghapusan, yang terjadi apabila dilakukan penghapusan data yang mengakibatkan hilangnya data lain yang tidak mempunyai hubungan secara logika.
Anomali ini terjadi apabila dalam satu baris/ tuple ada data yang akan dihapus sehingga akibatnya terdapat data lain yang hilang. Contoh pada table kursus data NoSiswa 20 akan dihapus karena sudah tidak ikut kursus lagi sehingga akibatnya data kursus bhs jepang dan biaya 70000 akan ikut terhapus.
Nah, bagaimana untuk mengatasi ketidak nrmalan itu? perlu dilaksanakan normalisasi. Anomali database ini dapat dieliminasi dengan mengganti format dari relasi, artinya mengganti komposisi tabel. Proses ini seringkali dilakukan dengan memecah relasi menjadi dua atau lebih relasi baru yang dibentuk dari relasi semula. Pengubahan tersebut dilakukan didalam suatu proses yang disebut dengan proses normalisasi. Untuk memahami proses normalisasi, perlu diketahui dua terminologi yang terkait ialah: ketergantungan fungsional (functional dependencies) dan kunci.
Dua terminologi ini perlu untuk dipelajari terlebih dahulu sebelum kita mendekomposisi atau menyelesaikan anomali database diatas.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comments: