04. normalisasi data
MODUL MATA KULIAH
SISTEM BASIS DATA 1
STIMIK EL RAHMA
JOGJAKARTA 2015
JURUSAN : SISTEM INFORMASI
SEMESTER GENAP 2015
BAB 4 : NORMALISASI DATA
Normalisasi adalah suatu proses formal untuk menentukaan atribut-atribut yang
seharusnya dikelompokkan secara bersama-sama dalam suatu relasi
Bentuk normal adalah suatu aturan yang dikenakan pada relasi-relasi dalam basis data
dan harus dipenuhi oleh relasi-relasi tersebut pada langkah-langkah normalisasi
Alasan utama diperlukannya normalisasi karena Permasalahan Redundansi
Redundansi : Perulangan yang berlebihan
Redundansi menyebabkan :
Pemborosan ruang penyimpanan
Anomali pada saat insert (simpan), Update (edit/pembaharuan), Delete (hapus)
Bisa menyebabkan inkonsistensi
Contoh Redundansi: NIM, Nama, Alamat yang sama ditulis berulang-ulang
Anomali yang terjadi
:
Anomali
Insert
(Penyisipan)
–
Keadaan yang
tidak diingini atau
munculnya masalah
saat
akan
menyisipkan data baru ke dalam relasi dengan struktur yang tidak lengkap
–
Data baru bernama Rudi tetapi hobby belum tercatat…?
Anomali Update (Pembaharuan)
– Keadaan di mana apabila satu nilai atribut perlu diperbaharui, jika lebih daripada satu
data yang terlibat yang disebabkan adanya pengulangan data maka apabila tidak semua
data diperbaharui akan menimbulkan inkonsistensi data
- Andi berpindah alamat…?
Anomali Delete (Penghapusan)
Keadaan di mana apabila satu data dihapuskan pada suatu relasi, terjadi kehilangan data
lain yang masih diperlukan
Data hobby bersepeda dihilangkan �Data Antok ikut hilang
Penyebab Redundansi
Perulangan fakta yang sama
Adanya atribut turunan
Umur (diperoleh dari tgl lahir)
Subtotal (diperoleh dari Qty x Harga)
Solusi Redundansi
– Penghilangan data turunan
– Dekomposisi: pemecahan sebuah relasi menjadi 2 atau lebih relasi
Lossy decomposition/lossy-join decomposition (kehilangan informasi ketika relasi
dipecah menjadi relasi-relasi lain)
Lossless-join decomposition (tidak ada informasi yang hilang ketika relasi dipecah
menjadi relasi-relasi lain)
Proses Normalisasi
Penormalan adalah
proses menguraikan
relasi-relasi
yang
bermasalah mengikut
aturan atau ciri-ciri
tertentu.
Penormalan dilaksanakan langkah demi langkah, yaitu dari satu bentuk normal ke satu
bentuk normal yang lebih tinggi.
Setiap bentuk normal mempunyai syarat-syarat kelayakan tertentu yang mesti dipenuhi
sebelum relasi tersebut diuji untuk bentuk normal yang lebih tinggi.
Ada 6 tingkat bentuk Normal
– Bentuk Normal pertama (1NF)
– Bentuk Normal Kedua (2NF)
– Bentuk Normal Ketiga (3NF)
– Bentuk Normal Boyce-Codd (BCNF)
– Bentuk Normal Keempat (4NF)
– Bentuk Normal Kelima (5NF)
Untuk relasi sederhana biasanya sudah dalam kondisi yang baik pada 2NF atau 3NF
Contoh
Tahapan
dalam Normalisasi
1.
Bentuk
UnNormalized
(Tidak Normal)
Kondisi Relasi
tidak normal (unnormalized) adalah kondisi data apa adanya, tidak mengikuti suatu
format tertentu termasuk ketidak lengkapan ataupun redundansi
Contoh: Unnormal karena composit, datanya multi value (banyak nilai/bernilai ganda)
2. Bentuk Normal
Pertama (1NF)
Definisi: Suatu
relasi berada dalam
bentuk
normal
pertama jika relasi
tidak
mengandung
atribut yang bernilai ganda (harus bersifat atomik: hanya mengandung 1 nilai) dan harus
diisi datanya (tidak boleh kosong)
Pemecahan:
-
Buang
atribut
berganda
-
Caranya: Atur
setiap kolom berisi
satu nilai; Bila isi
suatu kolom untuk suatu baris berisi n nilai, maka pecahlah baris menjadi n baris
Contoh lain
(Relasi yang salah):
ada field yang sejenis
(Item1, Item2, Item3,
Item4) dan ada data
yang kosong
Kadangkala
bentuk normal masih memiliki masalah
Masalah yang paling umum adalah kemubaziran
3. Bentuk Normal Kedua (2NF)
Telah memenuhi 1NF
Atribut bukan kunci primer harus bergantung fungsional/dependensi sepenuhnya pada
primary key (kunci utama), contoh nama, jabatan tergantung pada NIP, karena NIP kunci
primer
Pengertian dependensi sepenuhnya:
Definisi: Suatu atribut Y mempunyai dependensi sepenuhnya terhadap atribut X jika:
- Y mempunyai dependensi terhadap X
- Y tidak mempunyai dependensi terhadap bagian dari X
Primary Key harus unik dan bisa menjadi identitas atribut lain yang menjadi
anggotanya
Perlu dilakukan dekomposisi dan penghapusan atribut turunan
Contoh tidak memenuhi Bentuk Normal Ke Dua
Penyelesaian Bentuk
normal Ke dua
Terdapat Relasi R:
R (A, B, C, D)
Kunci Primer (A, B)
A → D (D bergantung pada A)
R didekomposisi menjadi R1 dan R2
R1 (A, D)
Kunci Primer (A)
R2 (A, B, C)
Kunci Primer (A, B)
Kunci Tamu (A) Referensi R1
4. Bentuk Normal
Ketiga (3NF)
Telah memenuhi
2NF
Semua atribut
bukan primer tidak
punya
hubungan
yang transitif (tidak ada dependensi transitif)
Suatu atribut Z mempunyai dependensi transitif terhadap X jika:
- Y memiliki dependensi terhadap X dan
- Z memiliki dependensi terhadap Y
X→Z
X →Y→ Z
Semua atribut bukan kunci hanya bergantung pada primary key
Untuk Contoh data pembelian, pada relasi nota terdapat permasalahan :
–
Atribut QTY dan Harga tidak tergantung penuh pada nomor nota tetapi juga
bergantung fungsional terhadap kode barang (ketergantungan transitif)
–
Masih terdapat redundansi (nonota, tanggal, kodesup, total) jika pada satu nota
dilakukan pembelian lebih dari 1 item barang
Contoh dependensi transitif
Contoh
lain
dependensi transitif
Contoh
lain
dependensi transitif
Problem
pada
Dependensi Transitif
SISTEM BASIS DATA 1
STIMIK EL RAHMA
JOGJAKARTA 2015
JURUSAN : SISTEM INFORMASI
SEMESTER GENAP 2015
BAB 4 : NORMALISASI DATA
Normalisasi adalah suatu proses formal untuk menentukaan atribut-atribut yang
seharusnya dikelompokkan secara bersama-sama dalam suatu relasi
Bentuk normal adalah suatu aturan yang dikenakan pada relasi-relasi dalam basis data
dan harus dipenuhi oleh relasi-relasi tersebut pada langkah-langkah normalisasi
Alasan utama diperlukannya normalisasi karena Permasalahan Redundansi
Redundansi : Perulangan yang berlebihan
Redundansi menyebabkan :
Pemborosan ruang penyimpanan
Anomali pada saat insert (simpan), Update (edit/pembaharuan), Delete (hapus)
Bisa menyebabkan inkonsistensi
Contoh Redundansi: NIM, Nama, Alamat yang sama ditulis berulang-ulang
Anomali yang terjadi
:
Anomali
Insert
(Penyisipan)
–
Keadaan yang
tidak diingini atau
munculnya masalah
saat
akan
menyisipkan data baru ke dalam relasi dengan struktur yang tidak lengkap
–
Data baru bernama Rudi tetapi hobby belum tercatat…?
Anomali Update (Pembaharuan)
– Keadaan di mana apabila satu nilai atribut perlu diperbaharui, jika lebih daripada satu
data yang terlibat yang disebabkan adanya pengulangan data maka apabila tidak semua
data diperbaharui akan menimbulkan inkonsistensi data
- Andi berpindah alamat…?
Anomali Delete (Penghapusan)
Keadaan di mana apabila satu data dihapuskan pada suatu relasi, terjadi kehilangan data
lain yang masih diperlukan
Data hobby bersepeda dihilangkan �Data Antok ikut hilang
Penyebab Redundansi
Perulangan fakta yang sama
Adanya atribut turunan
Umur (diperoleh dari tgl lahir)
Subtotal (diperoleh dari Qty x Harga)
Solusi Redundansi
– Penghilangan data turunan
– Dekomposisi: pemecahan sebuah relasi menjadi 2 atau lebih relasi
Lossy decomposition/lossy-join decomposition (kehilangan informasi ketika relasi
dipecah menjadi relasi-relasi lain)
Lossless-join decomposition (tidak ada informasi yang hilang ketika relasi dipecah
menjadi relasi-relasi lain)
Proses Normalisasi
Penormalan adalah
proses menguraikan
relasi-relasi
yang
bermasalah mengikut
aturan atau ciri-ciri
tertentu.
Penormalan dilaksanakan langkah demi langkah, yaitu dari satu bentuk normal ke satu
bentuk normal yang lebih tinggi.
Setiap bentuk normal mempunyai syarat-syarat kelayakan tertentu yang mesti dipenuhi
sebelum relasi tersebut diuji untuk bentuk normal yang lebih tinggi.
Ada 6 tingkat bentuk Normal
– Bentuk Normal pertama (1NF)
– Bentuk Normal Kedua (2NF)
– Bentuk Normal Ketiga (3NF)
– Bentuk Normal Boyce-Codd (BCNF)
– Bentuk Normal Keempat (4NF)
– Bentuk Normal Kelima (5NF)
Untuk relasi sederhana biasanya sudah dalam kondisi yang baik pada 2NF atau 3NF
Contoh
Tahapan
dalam Normalisasi
1.
Bentuk
UnNormalized
(Tidak Normal)
Kondisi Relasi
tidak normal (unnormalized) adalah kondisi data apa adanya, tidak mengikuti suatu
format tertentu termasuk ketidak lengkapan ataupun redundansi
Contoh: Unnormal karena composit, datanya multi value (banyak nilai/bernilai ganda)
2. Bentuk Normal
Pertama (1NF)
Definisi: Suatu
relasi berada dalam
bentuk
normal
pertama jika relasi
tidak
mengandung
atribut yang bernilai ganda (harus bersifat atomik: hanya mengandung 1 nilai) dan harus
diisi datanya (tidak boleh kosong)
Pemecahan:
-
Buang
atribut
berganda
-
Caranya: Atur
setiap kolom berisi
satu nilai; Bila isi
suatu kolom untuk suatu baris berisi n nilai, maka pecahlah baris menjadi n baris
Contoh lain
(Relasi yang salah):
ada field yang sejenis
(Item1, Item2, Item3,
Item4) dan ada data
yang kosong
Kadangkala
bentuk normal masih memiliki masalah
Masalah yang paling umum adalah kemubaziran
3. Bentuk Normal Kedua (2NF)
Telah memenuhi 1NF
Atribut bukan kunci primer harus bergantung fungsional/dependensi sepenuhnya pada
primary key (kunci utama), contoh nama, jabatan tergantung pada NIP, karena NIP kunci
primer
Pengertian dependensi sepenuhnya:
Definisi: Suatu atribut Y mempunyai dependensi sepenuhnya terhadap atribut X jika:
- Y mempunyai dependensi terhadap X
- Y tidak mempunyai dependensi terhadap bagian dari X
Primary Key harus unik dan bisa menjadi identitas atribut lain yang menjadi
anggotanya
Perlu dilakukan dekomposisi dan penghapusan atribut turunan
Contoh tidak memenuhi Bentuk Normal Ke Dua
Penyelesaian Bentuk
normal Ke dua
Terdapat Relasi R:
R (A, B, C, D)
Kunci Primer (A, B)
A → D (D bergantung pada A)
R didekomposisi menjadi R1 dan R2
R1 (A, D)
Kunci Primer (A)
R2 (A, B, C)
Kunci Primer (A, B)
Kunci Tamu (A) Referensi R1
4. Bentuk Normal
Ketiga (3NF)
Telah memenuhi
2NF
Semua atribut
bukan primer tidak
punya
hubungan
yang transitif (tidak ada dependensi transitif)
Suatu atribut Z mempunyai dependensi transitif terhadap X jika:
- Y memiliki dependensi terhadap X dan
- Z memiliki dependensi terhadap Y
X→Z
X →Y→ Z
Semua atribut bukan kunci hanya bergantung pada primary key
Untuk Contoh data pembelian, pada relasi nota terdapat permasalahan :
–
Atribut QTY dan Harga tidak tergantung penuh pada nomor nota tetapi juga
bergantung fungsional terhadap kode barang (ketergantungan transitif)
–
Masih terdapat redundansi (nonota, tanggal, kodesup, total) jika pada satu nota
dilakukan pembelian lebih dari 1 item barang
Contoh dependensi transitif
Contoh
lain
dependensi transitif
Contoh
lain
dependensi transitif
Problem
pada
Dependensi Transitif