normalisasi basis data

17
Normalisasi Basis Data

Upload: zody

Post on 05-Jan-2016

43 views

Category:

Documents


0 download

DESCRIPTION

Normalisasi Basis Data. Normalisasi adalah proses pembentukan relasi basis data kedalam bentuk normal, sehingga sebagian besar ambiguity bisa dihilangkan . Bentu normal adalah aturan-aturan yang harus dipenuhi oleh relasi-relasi dalam basis data. Normalisasi. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Normalisasi Basis Data

Normalisasi Basis Data

Page 2: Normalisasi Basis Data

Normalisasi

Normalisasi adalah proses pembentukan relasi basis data kedalam bentuk normal, sehingga sebagian besar ambiguity bisa dihilangkan.

Bentu normal adalah aturan-aturan yang harus dipenuhi oleh relasi-relasi dalam basis data.

Page 3: Normalisasi Basis Data

Tahap Normalisasi dimulai dari tahap paling ringan (1NF) hingga paling ketat (5NF)

Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik.

Page 4: Normalisasi Basis Data

Normalisasi

Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggar Bentuk Normal tahap ketiga (3rd Normal Form / 3NF).

Page 5: Normalisasi Basis Data

Tabel Universal

Tabel Universal (Universal / Star Table) sebuah tabel yang merangkum semua kelompok data yang saling berhubungan, bukan merupakan tabel yang baik.

Misalnya:

Page 6: Normalisasi Basis Data

Tabel Universal

Page 7: Normalisasi Basis Data

Bentuk-bentuk Normal

1. Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)

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

3. Bentuk Normal Tahap (3rd Normal Form / 3NF)

4. Boyce-Code Normal Form (BCNF)5. Bentuk Normal Tahap (4th Normal Form /

4NF)6. Bentuk Normal Tahap (5th Normal Form /

5NF)

Page 8: Normalisasi Basis Data

Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)

Bentuk normal 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak (multivalued attribute), atribut composite atau kombinasinya dalam domain data yang sama.

Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi)

Page 9: Normalisasi Basis Data

Contoh 1Misal data mahasiswa sbb:

Atau:

Tabel-tabel di atas tidak memenuhi syarat 1NF

Page 10: Normalisasi Basis Data

Contoh 1

Didekomposisi menjadi: Tabel Mahasiswa

Tabel Hobi

Page 11: Normalisasi Basis Data

Contoh 2 (composite)

JadwalKuliah

Kodekul NamaKul Dosen Kelas Jadwal

Kodekul NamaKul Dosen Kelas JadwalHari JadwalJam

Dimana nilai pada atribut jadwal berisi gabungan antara Hari dan Jam.

Jika asumsi hari dan jam memegang peranan penting dalam sistem basis data, maka atribut Jadwal perlu dipisah sehingga menjadi JadwalHari dan JadwalJam sbb:

JadwalKuliah

Page 12: Normalisasi Basis Data

Bentuk Normal Tahap Kedua (2nd Normal Form)

Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF

Sebuah tabel tidak memenuhi 2NF, jika ada atribut yang ketergantungannya (Functional Dependency) hanya tergantung pada sebagian dari primary key

Jika terdapat atribut yang tidak memiliki ketergantungan terhadap primary key, maka atribut tersebut harus dipindah atau dihilangkan

Page 13: Normalisasi Basis Data

Contoh

Tabel berikut memenuhi 1NF tapi tidak termasuk 2NF:

Mhs_nrp mhs_nama mhs_alamat mk_kode mk_nama mk_sks nihuruf

Tidak memenuhi 2NF, karena {Mhs_nrp, mk_kode} yang dianggap sebagai primary key sedangkan:{Mhs_nrp, mk_kode} mhs_nama

{Mhs_nrp, mk_kode} mhs_alamat

{Mhs_nrp, mk_kode} mk_nama

{Mhs_nrp, mk_kode} mk_sks

{Mhs_nrp, mk_kode} nihuruf

Tabel di atas perlu didekomposisi menjadi beberapa tabel yang memenuhi syarat 2NF

Page 14: Normalisasi Basis Data

Contoh

Functional dependencynya sbb:{Mhs_nrp, mk_kode} nihuruf (fd1)

Mhs_nrp {mhs_nama, mhs_alamat} (fd2)

Mk_kode {mk_nama, mk_sks} (fd3)

fd1 (mhs_nrp, mk_kode, nihuruf) Tabel Nilaifd2 (Mhs_nrp, mhs_nama, mhs_alamat) Tabel Mahasiswafd3 (mk_kode, mk_nama, mk_sks) Tabel MataKuliah

Page 15: Normalisasi Basis Data

Bentuk Normal Tahap Ketiga (3rd Normal Form /3NF)

Bentuk normal 3NF terpenuhi jika telah memenuhi bentuk 2NF, dan jika tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya.

Page 16: Normalisasi Basis Data

Contoh

Tabel berikut memenuhi 2NF, tapi tidak memenuhi 3NF:

Nrp Nama Alm_Jalan Alm_Kota Alm_Provinsi Alm_Kodepos

Mahasiswa

karena masih terdapat atribut non primary key (yakni alm_kota dan alm_Provinsi) yang memiliki ketergantungan terhadap atribut non primary key yang lain (yakni alm_kodepos):

alm_kodepos {alm_Provinsi, alm_kota}

Sehingga tabel tersebut perlu didekomposisi menjadi:Mahasiswa (Nrp, nama, alm_jalan, alm_kodepos)

Kodepos (alm_kodepos, alm_provinsi, alm_kota)

Page 17: Normalisasi Basis Data

Normalisasikan tabel tersebut!!

latihan