Basis Data - Tahapan Normalisasi

Post on 11-Jan-2016

65 views 3 download

description

Normalisasi 1,2, 3

Transcript of Basis Data - Tahapan Normalisasi

BASIS DATAPersyaratan dan Tahapan Normalisasi Basis Data

I Gede Yudhitya Suarbawa | PPL UNY | SMK N 1 Bantul

TUJUAN PEMBELAJARAN

Memahami Persyaratan Normalisasi Basis Data

Menguji Persyaratan Normalisasi Basis Data

Memahami Tahapan Normalisasi Basis Data

Memahami Bentuk Normalisasi Basis Data

Menyajikan Tahapan Normalisasi pada Tabel

Normalisasi ?

Pengertian ?

Persyaratan Normalisasi Dalam perspektif normalisasi, sebuah basis data dapat dikatakan baik,

jika setiap tabel yang menjadi unsur pembentuk basis data tersebut juga telah berada dalam keadaan baik atau normal. Selanjutnya, sebuah tabel dapat dikategorikan baik (efisien) atau normal, jika telah memenuhi 3 (tiga) kriteria berikut :

1. Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless–Join Decomposition).

2. Terpeliharanya ketergantungan fungsional pada saat perubahan data (DependencyPreservation).

3. Tidak melanggar Boyce–Code Normal Form (BCNF)

Lossless – Join Decomposition

Merupakan dekomposisi atau penguraian tabel berdasarkan ketergantungan fungsionalnya. Dekomposisi yang benar terjadi jika tabel–tabel hasil dekomposisi kita gabungkan kembali dapat menghasilkan tabel awal sebelum didekomposisi. Dekomposisi yang benar semacam ini disebut Lossless–Join Decomposition atau Lossless Decomposition (dekomposisi aman).

Pembahasan Lossy (Tidak Aman) dan Lossless (Aman)

DEPEDENCY PRESERVATION

Dependency Preservation (pemeliharaan ketergantungan) merupakan kriteria kedua yang harus dapat dicapai untuk mendapatkan tabel dan basis data yang baik. Ketika kita melakukan perubahan data, maka harus bisa dijamin agar perubahan tersebut tidak menghasilkan inkonsistensi data yang mengakibatkan ketergantungan fungsional yang sudah benar menjadi tidak terpenuhi

Contoh :

Tabel Siswa (NIS, Nama, Kelas, dsb)

Tabel Pelajaran (Kode_Pel, Nama_Pel, Guru)

Tabel Nilai (NIS, Nama, Nilai, Grade)

Ketergantungan : 1. NIS Nama ; 2. NIS, Nama, Kode_Pel Nilai

Nama harus dihilangkan karena perubahan pada tabel siswa harus diikuti dengan perubahan pada tabel nilai juga

BCNF (Boyce Code Normal Form)Kriteria berikutnya untuk mendapatkan tabel yang baik adalah dengan menerapkan BCNF. Sebuah tabel dikatakan memenuhi BCNF jika untuk semua ketergantungan fungsional dengan notasi X Y, maka X harus merupakan candidate key pada tabel tersebut. Jika tidak demikian, maka tabel tersebut harus didekomposisi berdasarkan ketergantungan fungsional yang ada, sedemikian hingga X menjadi candidat key dari tabel–tabel hasil dekomposisi.

Contoh :

E, F, G A, B, C

Salah satu dari E/F/G merupakan atribut yang tidak unik maka basis data dikatakan tidak memenuhi BCNF, dan ketergantungan harus dihilangkan.

TAHAPAN-TAHAPAN NORMALISASI

Bentuk Normalisasi Basis Data

Hasil dari proses normalisasi adalah tabel–tabel data dalam bentuk normal (normal form), yaitu tabel–tabel data yang terhindar dari dua hal yaitu:

Pengulangan informasi.

Potensi inkonsistensi data pada operasi pengubahan.

Terdapat enam bentuk normal (normal form) dalam teknik normalisasi data, keenam bentuk tersebut adalah :

1. Bentuk Normal Tahap pertama (1st Normal Form)

2. Bentuk Normal Tahap Kedua (2nd Normal Form)

3. Bentuk Normal Tahap Ketiga (3rd Normal Form)

4. Bentuk Normal Boyce - Code (BCNF)

5. Bentuk Normal Tahap Keempat (4th Normal Form)

6. Bentuk Normal Tahap Kelima (5th Normal Form)

Proses Normalisasi

Bentuk tidak normal

Bentuk tidak normal (Unnormalized Form) Bentuk ini memiliki ciri-ciri, yaitu :

Merupakan kumpulan data yang akan direkam

Tidak ada keharusan mengikuti suatu format tertentu

Dapat saja data tidak lengkap atau terduplikasi

Data dikumpulkan apa adanya sesuai dengan kedatangannya.

Normalisasi Tahap 1 (Ciri-ciri)

Bentuk normal ke satu 1 NF ini mempunyai beberapa ciri antara lain yaitu:

Setiap data dibentuk dalam flat file (file data/ rata)

Data dibentuk dalam satu record demi satu record dan nilai dari field field berupa "atomic value", tidak dapat dibagi-bagi lagi.

Tidak ada set atribute yang berulang ulang atau atribute bernilai ganda (multivalue).

Tidak ada set atribut composite atau kombinasinya dalam domain data yang sama.

Tiap field hanya satu pengertian, bukan merupakan kumpulan kata yang mempunyai arti mendua, hanya satu arti saja dan juga bukanlah pecahan kata sehingga artinya lain.

Normalisasi Tahap 1 (Contoh)

Normalisasi Tahap 1 (Kondisi yang benar)

Normalisasi Tahap 2 (Ciri-ciri)

Bentuk normal kedua mempunyai syarat yaitu:

1. Bentuk data telah memenuhi kriteria bentuk normal kesatu.

2. Atribute bukan kunci haruslah bergantung secara fungsi pada kunci utama atau primary key.

3. Sudah ditentukan kunci kunci field, dimana kunci field haruslah unik dan dapat mewakili atribute lain yang menjadi anggotanya

Normalisasi Tahap 2 (Contoh)

Normalisasi Tahap 2 (kondisi yang benar)

Normalisasi Tahap 3 (Ciri-ciri)

Untuk menjadi bentuk normal ketiga (3 NF) suatu tabel harus mempunyai ciri-ciri sebagai berikut:

1. Memenuhi bentuk 2 NF (normal kedua)

2. Atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci utama atau primary key.

3. Setiap atribute bukan kunci haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh

Normalisasi Tahap 3 (Contoh)

Pada relasi di atas, masih terdapat atribut non primary key (yakni Alamat_kota dan Alamat_Prov) yang memiliki ketergantungan terhadap atribut non primary key yang lain, yaitu Kode_pos.

Kodepos {Alamat_kota, Alamat_prov}

Untuk memenuhi syarat 3NF, maka relasi tersebut harus didekomposisi sebagai berikut :

-Siswa : (NIS, Nama_siswa, Alamat_jn, Kodepos) -Kodepos : (Kodepos, Alamat_kota, Alamat_prov)

TUGAS KELOMPOK Duduk sesuai kelompok tugas sebelumnya

Diskusikan sebuah kondisi / situasi untuk dibuat database

Jelaskan proses normalisasi database tersebut lengkap dengan :

Tugas ditulis di kertas @kelompok 1 kertas Tabel sebelum dan sesudah di setiap tahapan normalisasi

Penjelasan sesuai tahapan normalisasi

Lakukan dari data mentah hingga normalisasi ketiga