NORMALISASI




1. Pengertian Normalisasi
Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan. Jadi Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).
2.Tujuan normalisasi
Berikut ini merupakan tujuan dari Normalisasi :
1.      Untuk menghilangkan kerangkapan data.
2.      Untuk mengurangi kompleksitas.
3.      Untuk mempermudah pemodifikasian data.
3. macam-macam penyimpangan Anomaly
           berikut ini merupakan penyimpangan Anomaly:
1.      Insertion Anomaly
Inserion Anomaly merupakan eror atau kesalahan yang terjadi sebagai akibat dari operasi menyisipkan (insert) tupel / record pada sebuah relasi.
2.      Delet Anomaly
Delet Anomaly merupakan eror atau kesalahan yang terjadi sebagai akibat dari operasi menyisipkan (delet) tupel / record pada sebuah relasi.
3.      Update Anomaly
Update Anomaly merupakan eror atau kesalahan yang terjadi sebagai akibat dari operasi menyisipkan (Update) tupel / record pada sebuah relasi.
4. Tahapan Normalisasi
            Berikut ini adalah tahapan-tahapan Normalisasi :
1.      1 NF
Bentuk normalisasi 1NF ini mengelompokkan beberapa tipe data atau kelompok data yang sejenis agar dapat dipisahkan sehingga anomali data dapat di atasi. Contoh adalah ketika kita ingin menghapus, mengupdate, atau menambahkan data peminjam, maka kita tidak bersinggungan dengan data buku atau data penerbit. Sehingga inkonsistensi data dapat mulai di jaga.
2.      2 NF
Bentuk kedua ini adalah tidak boleh ada field yang berhubungan dengan field lainnya secara fungsional. Contoh Judul Buku tergantung dengan id_Buku sehingga dalam bentuk 2NF judul buku dapat di hilangkan karena telah memiliki tabel master tersendiri.
3.      3 NF
Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau field yang tidak berhubungan dengan primary key. Dengan demikian tidak ada ketergantungan transitif pada setiap kandidat key.
4.      Boyce Codd Normal Form BCNF
Merupakan sebuah teknik normalisasi database yang sering disebut 3.5NF, memiliki hubungan yang sangat erat dengan bentuk 3NF. Pada dasarnya adalah untuk menghandle anomali dan overlooping yang tidak dapat di handle dalam bentuk 3NF. Normalisasi database bentuk ini tergantung dari kasus yang disediakan, tidak semua tabel wajib di normalisasi dalam bentuk BCNF.
5. Contoh Normalisasi 1NF
Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang agar menjadi satu harga tunggal yang berinteraksi di antara setiap baris pada suatu tabel, dan setiap atribut harus mempunyai nilai data yang atomic (bersifat atomic value). Atom adalah zat terkecil yang masih memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat induknya.
Syarat normal ke 1NF antara lain :
1.    setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai dari field berupa “atomic value”.
2.     tidak ada set atribute yang berulang atau bernilai ganda.
3.     telah ditentukannya primary key untuk tabel / relasi tersebut.
4.    tiapatribut hanya memiliki satu pengertian.
Berikut ini merupakan contoh tabel yang tidak normal di ubah menjadi normal 1NF :
Ø  Tabel tidak normal
Id_barang
Nama_dan_jumlah
Harga
12211
Pupuk urea 3 sak
Rp.1.000.000
12212
Cangkul 5 buah
Rp.200.000
13212
Arco 5 buah
Rp.1.200.000

Ø  Tabel normal
Id_batang
Nama_barang
Jumlah
harga
12211
Pupuk urea
3 sak
Rp.1.000.000
12212
cangkul
5 buah
Rp.200.000
132 12
arco
5 buah
Rp. 1.200.000

6. Contoh normalisasi 2NF
Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut. Jika A adalah atribut-atribut dari suatu relasi, B dikatakan full functional dependency (memiliki ketergantungan fungsional terhadap A, tetapi tidak secara tepat memiliki ketergantungan fungsional dari subset (himpunan bagian) dari A.
Syarrat normal ke 1NF antara lain sebagai berikut:
1.      Tabel tersebut memenuhi 1NF
2.      Semuaatribut bukan kunci memiliki full defendent functional (FD2) terhadap ateribut ang menjadi primary key
3.      Bukan kunci merupakan atribut yang bukan merupakan bagian dari atribut primary key. Primary key bisa di gabung atribut-atribut. Simpel-nya, setiap atribut bergantung pada kunci (primary key).
4.      Umun-nya diperlukan dekomposisi (pemecahan tabel) terlebih dahilu terhadap tabel yang memenuhi 1NF agar bisa di ubah menjadi 2NF.
Berikut ini merupakan tabel 1NF di ubah menjadi 2NF (menghilangkan ketergantungan parsial) :
Ø  Tabel 1NF
Id_barang
Nama_barang
Jumlah
harga
12211
Pupuk urea
3 sak
Rp.1.000.000
12212
cangkul
5 buah
Rp.200.000
132 12
arco
5 buah
Rp. 1.200.000

Ø  Tabel 2NF (menghilangkan ketergantungan parsial)
Id_barang
Nama_barang
12211
Pupuk urea
12212
cangkul
132 12
arco

Nama_barang
jumlah
Harga
Pupuk urea
3 sak
Rp.1.000.000
cangkul
5 buah
Rp.200.000
arco
5 buah
Rp.1.200.000

7. Normalisasi 3NF  (Menghilangkan ketergantungan transitif)
Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau field yang tidak berhubungan dengan primary key. Dengan demikian tidak ada ketergantungan transitif pada setiap kandidat key .
Syarat normalisasi 3NF yaitu :
1.      Sudah tercapai-nya normalisasi 2NF.
2.      setiap atribut yang bukan kunci tidak tergantung secara fungsional terhadap atribut bukan kunci yang lain dalam relasi tsb (tidak terdapat ketergantungan transitif pada atribut bukan kunci).
Ketergantungan transitif adalah ketergantungan secara fungsional suatu atribut ke atribut lain-nya melalui atribut yang lain puala. Berikut adalah contoh nya:
Id_gudang
Nama-gudang
Kapasitas_gudang
Id_barang
Banyak_barang
122111
Gudang A
25M
1232
23
123121
Gudang B
26M
2312
53
Tabel di atas terdapat ketergantungan transitif antara id_gudang =>id_barang untuk menghilangkan ketergantungan tersebut maka dapat dilakukan penghapusan id_barang. Maka hasil-nya sebagai berikut :
Id_gudang
Nama_gudang
Kapasitas_gudang
Banyak_barang
122111
Gudang A
25M
23
12321
Gudang B
26M
53

Komentar

Postingan populer dari blog ini

CDM (Conseptual data model)

ERD (Entity Relationship diagram) keluar masuk barang