MANAJEMEN DATA
Normalisasi Pada Tabel Basis Data
Outline
 Overview Normalisasi
 Dependensi

 Bentuk Normalisasi
Deskripsi Normalisasi

Normalisasi merupakan teknik untuk mendekomposisi suatu

tabel menjadi beberapa tabel agar tidak terjadi anomali di
dalam tabel tersebut.
Tujuan Normalisasi

• Menghilangkan kerangkapan data
• Menghilangkan anomali data
• Mengurangi kompleksitas
Anomali Peremajaan (Update)
Pemasok

Kota

Barang

Jumlah

Kartika

Jakarta

Mouse

5

Citra

Bandung

Monitor

2

Yudi

Medan

CPU

2

Citra

Bandung

Printer

1

Citra  Bogor, what will happen?
Anomali Penyisipan (Insert)
No_Siswa

Kursus

Biaya

No_Siswa

Kursus

Biaya

10

B. Inggris

60000

10

B. Inggris

60000

10

B. Perancis

80000

10

B. Perancis

80000

10

B. Jepang

70000

10

B. Jepang

70000

15

B. Inggris

60000

15

B. Inggris

60000

20

B. Jepang

60000

20

B. Jepang

60000

B.Jerman

90000

Insert B. Jerman without students
Anomali Penghapusan (Delete)
No_Siswa

Kursus

Biaya

10

B. Inggris

60000

10

B. Perancis

80000

10

B. Jepang

70000

15

B. Inggris

60000

15

B. Inggris

60000

20

B. Jepang

60000

20

B. Jepang

60000

No_Siswa

Kursus

Delete student whose number is 10

Biaya
Cara Normalisasi

• Data diuraikan dalam bentuk tabel selanjutnya di analisis berdasarkan
syarat tiap bentuk normal.
• Apabila tabel belum memenuhi persyaratan maka tabel tersebut dipecah
menjadi beberapa tabel sampai memenuhi kriteria optimal.
Tahapan Normalisasi

Bentuk
Tidak
Normal

Bentuk
Normal
Pertama

Bentuk
Normal
Kedua

Bentuk
Normal
Ketiga

BCNF

Bentuk
Normal
Keempat
Bagaimana Caranya…
Hilangkan
Depedensi
Depedensi Fungsional

• Definisi :
atribut Y mempunyai depedensi fungsional terhadap atribut X jika dan
hanya jika setiap nilai X berhubungan dengan sebuah nilai Y.
• Notasi : X (Determinan/Penentu)  Y (Dependent)
Depedensi Fungsional
Pembeli

Kota

Barang

Jumlah

P1

Yogyakarta

B1

10

P1

Yogyakarta

B2

5

P2

Jakarta

B1

4

P2

Jakarta

B2

7

P3

Solo

B3

6

P3

Solo

B4

6

Pembeli  Kota
{Pembeli, Barang}  Kota
Depedensi Fungsional Sepenuhnya
Depedensi Fungsional Sepenuhnya
No_Siswa

Nama

Alamat

A1

Budi

Bandung

A2

Andi

Bogor

A3

Ani

Serang

A4

Dian

Madura

A5

Andri

Ciamis
Depedensi Fungsional Sebagian

Definisi :
atribut Y mempunyai depedensi fungsional sebagian terhadap atribut X jika Y
berdepedensi fungsional hanya terhadap bagian dari X jika X adalah
composite key.
Depedensi Transitif

Definisi :
atribut Y mempunyai depedensi transitif terhadap X jika Y memiliki depedensi
fungsional terhadap X dan Z memiliki depedensi fungsional terhadap Y
Depedensi Transitif
Kuliah

Kampus

Ruang

Waktu

RPL

5

5406

Senin

Basis Data

4

4417

Selasa

Kalkulus

2

2505

Rabu

Data Mining

5

5407

Kamis

Kuliah  {Kampus, Waktu}
Kampus  Ruang
Kuliah  Waktu (Kuliah  Kampus  Waktu)
Proses Normalisasi
Penentuan
Atribut

Dokumen Manual

Tabel Pada Basis
Data

Unnormalized
Form

Bentuk Normal
1 - BCNF
Bentuk Tidak Normal
Bentuk Normal Pertama

• Eliminasi nilai null pada repeating groups
• Identifikasi primary key
• Identifikasi seluruh depedensi
Bentuk Normal Pertama
Depedensi Bentuk Normal Pertama
Bentuk Normal Kedua
• Pastikan tabel sudah dalam bentuk normal pertama
• Eliminasi depedensi fungsional sebagian

• Tentukan atribut yang berdepedensi terhadap atribut
lain
Depedensi Bentuk Normal Kedua
Bentuk Normal Ketiga

• Pastikan tabel sudah dalam bentuk normal kedua
• Eliminasi depedensi transitif

• Tentukan kembali depedensi antar atribut
Depedensi Bentuk Normal Ketiga
BCNF (Boyce-Codd Normal Form)

• Pastikan tabel sudah dalam bentuk normal ketiga
• Hanya dilakukan jika dan hanya jika semua determinan

merupakan candidate key.
Depedensi BCNF
Depedensi BCNF

Siswa

Kursus

Tutor

Anwar

B. Perancis

Pierre

Anwar

B. Inggris

Richard

Budi

B. Perancis

Pierre

Cecep

B. Inggris

Suzanne

Normalisasi Basis Data