ANOMALI, REDUDANSI DAN NORMALISASI (Tugas Blog 9 dan 10)

 PERTEMUAN 9 : ANOMALI DAN REDUDANSI

ANOMALI, adalah masalah yang timbul pada tabel, pada saat akan dimanipulasi.

  •  Ketidak-konsistenan data
  •  Data menjadi hilang ketika data lain dihapus


BENTUK ANOMALI

  •  Anomali Penambahan (Insert Anomaly)
  •  Anomali Pengubahan (Update Anomaly)
  •  Anomali Penghapusan (Delete Anomaly)


ANOMALI PENAMBAHAN

    Terjadi pada saat penambahan data hendak dilakukan ternyata ada elemen yang masih kosong dan elemen data tersebut diperlukan untuk proses penambahan. 


ANOMALI PENGUBAHAN

    Terjadi apabila dilakukan pengubahan pada sejumlah data yang di duplikasi tetapi tidak seluruhnya diubah. 


ANOMALI PENGHAPUSAN 

    Terjadi apabila ada suatu tupel/record yang tidak terpakai dihapus mengakibatkan adanya data lain yang hilang.


REDUDANSI (REDUDANCY)

    Munculnya data yang berulang kali pada suatu tabel/relasi yang semestinya tidak diperlukan. Kerangkapan data dapat terjadi : 

  •  Kerangkapan data dalam suatu file
  •  Kerangkapan data dalam beberapa file


KESIMPULAN/FLASHBACK

  •  Anomali terjadi pada saat manipulasi & berefek samping buruk pada data 
    • Ketidak-konsistenan data > ANOMALI PENAMBAHAN, PENGUBAHAN
    • Data menjadi hilang ketika data lain dihapus > ANOMALI PENGHAPUSAN
  • Anomali = Tidak Normal, maka diperlukan > NORMALISASI             


PERTEMUAN 10 : NORMALISASI

NORMALISASI, merupakan sebuah teknik dalam logical desain sebuah basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik tanpa redundan. 
NORMALISASI, adalah proses pembentukan suatu basis data sehingga sebagian besar ambiguity bisa dihilangkan.

Tujuan Normalisasi 
  1. Untuk mengilangkan kerangkapan data.
  2. Untuk mengurangi kompleksitas.
  3. Untuk mempermudah permodifikasian data.

Proses Normalisasi

  • Data diuraikan kedalam bentuk tabel, kemudian dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
  • Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk optimal. 
Tahapan Normalisasi
Tahapan normalisasi dimulai dari yang paling ringan (1 NF) hingga tahap yang lebih ketat (5 NF)

Bentuk Tidak Normal

            Menghilangkan perulangan grup

Bentuk Normal Pertama (1 NF)

            Menghilangkan Ketergantungan Parsial

Bentuk Normal Kedua (2 NF)

            Menghilangkan Ketergantungan Transitif

Bentuk Normal Ketiga (3 NF)

            Menghilangkan anomali-anomali hasil dari ketergantungan fungsional

Bentuk Normal Boyce-Codd (BCNF)

            Menghilangkan ketergantungan Multivalue

Bentuk Normal Keempat (4 NF)

            Menghilangkan anomali-anomali tersisa

Bentuk Normal Kelima (5 NF)


Sebuah tabel dapat dikatakan normal apabila telah memenuhi kriteria sebagai berikut:

  1. Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya dikatakan aman. Artinya, apabila tabel telah diuraikan menjadi tabel baru maka hasilnya akan sama dengan tabel semula.
  2. Terpeliharanya ketergantungan fungsional pada saat perubahan data.
  3. Tidak melanggar peraturan Normal Boyce-Codd Form (BCNF)
    Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tidak melanggar bentuk normal tahap tahap ketiga (3 NF). 
Contoh :
Relasi tidak normal (tabel personal)

ID_Personil

Tanggal Lahir

Karakteristik

JM95

13 Oktober 1995

Tinggi 174

Berat 58

Rambut Warna Hitam

KJ92

4 Desember 1992

Tinggi 180

Berat 59

Rambut Warna Hitam

 Relasi normal (tabel personal) 

ID_Personil

Tanggal Lahir

Tinggi

Berat

Warna Rambut

JM95

13 Oktober 1995

174

58

Hitam

KJ92

4 Desember 1992

180

59

Hitam

Tabel Universal

Tabel Universal -> sebuah tabel yang merangkum semua kelompok data yang saling berhubungan, bukan merupakan tabel yang baik. 


Functional Dependency
Notasi A->B 
A dan B merupakan atribut darisebuah tabel. Secara fungsional A menentukan B, dan B tergantung pada A. 
- A/B atau AxB
    adalah kebalikan dari notasi sebelumnya.
Contoh tabel nilai

Functional Dependency pada tabel ini
  1. Nrp -> namaMHS = Karena nilai nrp sama maka, nilai namaMHS juga sama.
  2. {Namakul, nrp} -> NiHuruf = karena NiHuruf bergantung pada Namakul dan nrp secara bersama-sama. Dalam artian, jika Namakul dan nrp sama maka, NiHuruf juga akan sama.
  3. Namakul / nrp
  4. Nrp / NiHuruf
Contoh Functional Dependency 1
Andaikan ada tabel 
    NILAI (NIM, Nm-mk, Semester, Nilai)
Atribut Kunci : NIM, Nm-mk, Semester
Maka Functional Dependency nya adalah :
    NIM, Nm-mk, Semester -> Nilai

Bentuk Normal Pertama (1NF) 
Aturan :
1. Tidak adanya atribut-atribut multivalue, atribut kombinasi dan kombinasinya.
2. Mendefinisikan atribut kunci.
3. Setiap atribut harus bernilai atomic(tidak dapat dibagi-bagi lagi).

Contoh :
Data Mahasiswa
Tabel diatas belum memenuhi syarat bentuk normal pertama (1NF)
Kemudian dikomposisi menjadi :

Bentuk Normal Kedua (2NF)
Aturan :
1. Sudah memenuhi bentuk normal satu (1NF)
2. Semua atribut kunci hanya boleh tergantung pada atribut kunci.
3. Jika ada kertergantungan parsial maka atribut tersebut harus dipisah pada tabel lain.
4. Perlu ada penghubung berupa foregn key bagi atribut-atribut yang telah dipisah. 

Contoh:
Dikomposisi menjadi

Bentuk Normal Ketiga (3NF)
Aturan :
1. Sudah berada pada bentuk normal kedua (2INF).
2. Tidak ada ketergantungan transitif.






















Komentar

Postingan populer dari blog ini

TRANSFORMASI ERD KE BASIS DATA FISIK