Normalisasi
Normalisasi
TEKNIK INFORMATIKA
KOMPETENSI
BASISDATA
Page 1 Page 2
NORMALISASI NORMALISASI
Proses sistematis untuk mendekomposisi tabel Ciri-ciri tabel ternormalisasi :
guna mengeliminasi redundansi data dan 1. Jumlah atribut bersifat minimal, sesuai dengan
anomali manipulasi data (insertion, update, kebutuhan data.
delete). 2. Atribut yang berhubungan dekat (functional
dependency) ditempatkan dalam satu tabel yang
Tahap Normalisasi dimulai dari tahap paling sama.
ringan (1NF) hingga paling ketat (5NF). 3. Redundansi (kemunculan duplikasi data yang
tidak diharapkan) bersifat minimal dengan
Biasanya hanya sampai pada tingkat 3NF atau memanfaatkan foreign key.
BCNF karena sudah cukup memadai untuk
menghasilkan tabel-tabel yang berkualitas baik. Keuntungan :
1. Memudahkan pengguna mengakses dan
mengelola data.
2. Meminimalkan ruang penyimpanan.
Page 3 Page 4
1
12-Apr-15
2
12-Apr-15
Page 9 Page 10
Page 11 Page 12
3
12-Apr-15
Karena attribut NilaiHuruf tergantung pada MK dan 05001 Adi W Jakal 180387 52302 PW 3 3 Hendrik Jakal 5.7
NIM secara bersama-sama. Dalam arti lain untuk
Namakul dan NIM yang sama, maka NilaiHuruf juga 05002 Adi W Jl. Solo 100588 52302 PW 3 3 A Hendrik Jakal 5.7
sama, karena MK dan NIM merupakan key (bersifat 05230 Rusli A Jamal 200687 52303 Basis 2 3 B Hendrik Jakal 5.7
unik). data
JENIS NORMALISASI
EXERCISE
Normalisasi adalah teknik formal untuk menganalisis tabel
berdasarkan primary key (atau candidate key) dan
ketergantungan fungsional yang dimilikinya. - Prof. Codd
Dengan memperhatikan kesamaan dan
ketidaksamaan data antar baris data, Teknik ini berupa serangkaian aturan untuk mengetes setiap
tabel agar basisdata bisa ternormalisasi ke derajat tertentu.
tentukan FD-nya !
Jika hasil tes tidak terpenuhi, maka tabel harus
a. NIM mhs_nama, mhs_alamat, mhs_tgllahir didekomposisi/dipecah menjadi tabel-tabel lebih kecil.
b. MK_kode MK_nama, sks, kodesem, dsn_nama, Bentuk Normal mulai dari 1NF hingga 5NF. Persyaratan
dsn_alamat wajib sebuah basisdata adalah memenuhi 1NF, sedangkan
c. Dsn_nama dsn_alamat bentuk lainnya adalah opsional.
d. NIM, mk_kode nilaihuruf
1NF
2NF
3NF
BCNF
4NF
5NF
Page 15 up
Page 16
4
12-Apr-15
Page 17 Page 18
5
12-Apr-15
Atau:
Tabel Hobi
6
12-Apr-15
Tabel berikut memenuhi 1NF tapi tidak termasuk 2NF: Functional dependencynya sbb:
NIM Mhs_nama mhs_alamat mk_kode mk_nama mk_sks nihuruf
{NIM, mk_kode} nihuruf (fd1)
NIM {mhs_nama, mhs_alamat} (fd2)
Tidak memenuhi 2NF, karena {NIM, mk_kode} Mk_kode {mk_nama, mk_sks} (fd3)
yang dianggap sebagai primary key, sedangkan:
{NIM, mk_kode} mhs_nama NILAI
{NIM, mk_kode} mhs_alamat NIM mk_kode nihuruf
{NIM, mk_kode} mk_nama
MAHASISWA
{NIM, mk_kode} mk_sks
NIM mhs_nama mhs_alamat
{NIM, mk_kode} nihuruf
MATAKULIAH
Tabel di atas perlu didekomposisi menjadi
beberapa tabel yang memenuhi syarat 2NF. mk_kode mk_nama mk_sks
Page 25 Page 26
7
12-Apr-15
Page 29 Page 30
Mahasiswa
NIM Nama Alm_Jalan Alm_Kota Alm_Provinsi Alm_Kodepos
8
12-Apr-15
Latihan
Page 33