Anda di halaman 1dari 31

TEKNIK NORMALISASI

NORMALISASI DATA
Proses normalisasi pertama kali diperkenalkan oleh
E.F.Codd pada tahun 1972.
Normalisasi sering dilakukan sebagai suatu uji coba
pada suatu relasi secara berkelanjutan untuk
menentukan apakah relasi tersebut sudah baik atau
masih melanggar aturan-aturan standar yang
diperlakukan pada suatu relasi yang normal (yaitu
sudah dapat dilakukan proses insert, update, delete, dan
modify pada satu atau beberapa atribut tanpa
mempengaruhi integritas data dalam relasi tersebut).
normalisasi terkadang hanya diipakai sebagai
perangkat verifikasi terhadap tabel-tabel yang dihasilkan
oleh metodologi lain ( misalnya model E-R)
Definisi Normalisasi
Normalisasi adalah proses pengelompokan data ke dalam
bentuk tabel atau relasi atau file untuk menyatakan
entitas dan hubungannya sehingga terwujud satu bentuk
database yang mudah untuk dimodifikasi.
Normalisasi merupakan sebuah teknik dalam logical
desain sebuah basis data/database, teknik
pengelompokkan atribut dari suatu relasi sehingga
membentuk struktur relasi yang baik (tanpa redudansi).
normalisasi sebagai proses untuk mengubah suatu
relasi/tabel yang memiliki masalah tertentu ke dalam dua
buah tabel atau lebih yang tak memiliki masalah
tersebut. Masalah yang dimaksud ini sering disebut
dengan istilah anomali.
Tujuan Normalisasi
Untuk menghilangkan kerangkapan data
Untuk mempermudah pemodifikasian data
Optimalisasi struktur-struktur tabel
Meningkatkan kecepatan
Lebih efisien dalam penggunaan media
penyimpanan
Menghindari anomali (insertion anomalies,
deletion anomalies, update anomalies).
Proses Normalisasi
Data diuraikan dalam bentuk tabel, selanjutnya
dianalisis berdasarkan persyaratan tertentu ke
beberapa tingkat.
Apabila tabel yang diuji belum memenuhi
persyaratan tertentu, maka tabel tersebut perlu
dipecah menjadi beberapa tabel yang lebih
sederhana sampai memenuhi bentuk yang
optimal.
Relasi/Tabel Berstruktur Baik
Suatu Tabel dikatakan berstruktur baik kalau :
 Mengandung redundansi sesedikit mungkin dan
 Memungkinkan pemakai memasukkan,
mengubah, atau menghapus baris/record tanpa
menimbulkan kesalahan atau tidak konsisten
Kesalahan atau akibat tidak konsisten yang
ditimbulkan pada ulasan di atas biasa dinamakan
anomali
Anomali
Masalah-masalah yang timbul dalam pembuatan
tabel disebut dengan anomali.
Anomali adalah proses pada basis data yang
mempunyai efek samping yang tidak diharapkan.
Misal : ketidakkonsistenan data, suatu data hilang
pada saat dihapus, dll.
Jenis-jenis Anomali
Anomali ada 3 jenis yaitu :
Anomali peremajaan (Update Anomaly)
Merupakan error atau kesalahan yang terjadi
sebagai akibat operasi perubahan (update)
tuple / record dari sebuah tabel.
Anomali ini terjadi karena adanya redundansi
data, bila ada perubahan pada sejumlah data
yang mubazir, tetapi tidak seluruhnya diubah.
Anomali Penyisipan (Insertion Anomali)
Merupakan error atau kesalahan yang terjadi sebagai
akibat dari operasi menyisipkan (insert) tuple / record
pada sebuah relasi. Anomali ini terjadi pada saat
penambahan data ternyata ada elemen yang kosong dan
elemen tsb justru menjadi key.

Anomali penghapusan (Delete Anomaly)


Merupakan error atau kesalahan yang terjadi sebagai
akibat operasi penghapusan (delete) terhadap tupe /
record dari sebuah relasi. Anomali ini terjadi apabila
dalam satu baris/ tuple ada data yang akan dihapus
sehingga akibatnya terdapat data lain yang hilang.
Tahapan Normalisasi
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.
Ketergantungan Fungsional /KF
(Functional Dependency)
Untuk melakukan Normalisasi harus bisa menentukan
ketergantungan fungsi (KF). Ketergantungan
Fungsional menggambarkan hubungan attributes
dalam sebuah relasi.
Functional Dependency (FD) adalah ketergantungan
yang terjadi antara atribut-atribut dalam suatu entiti.
Basis data yang baik, dalam satu entiti/tabel hanya ada 1
ketergantungan fungsional (KF) atau disebut dengan
Basis data normal
Ketergantungan Fungsional dapat disimbolkan dengan A  B
artinya B memiliki ketergantungan dengan A. Berarti A secara
fungsional menentukan B atau B secara fungsional tergantung
pada A.
Contoh Ketergantungan Fungsional
KodeMk  NamaMk
(artinya atribut NamaMk tergantung pada atribut KodeMk)
NIM  Nama,Alamat,Telp
(artinya atribut Nama,Alamat, Telp tergantung pada atribut
NIM)
Dalam format lain Notasi KF dapt dituliskan juga dalam
bagan berikut :

Nama
NIM
NIM Alamat Nilai
Kodemk
Telp
Contoh:

Functional Dependency (Ketergantungan Fungsional) dari table


diatas:
NIM  NamaMhs (NamaMhs bergantung pada NIM)
NIM, Matakuliah  NilaiHuruf (NilaiHurup bergantung pada
NIM dan Matakuliah)
Transitive Dependency (ketergantungan
transitif)
Ketergantungan transitif adalah ketergantungan
fungsional antara 2 atau lebih atribut bukan kunci.
Suatu kondisi dimana A, B, dan C adalah atribut-atribut
dari suatu relasi sedemikian sehingga A  B dan B  C,
maka A  C (C memiliki ketergantungan transitif
terhadap A melalui B), dan harus dipastikan bahwa A
tidak memiliki ketergantungan fungsional (functional
dependent) terhadap B atau C).
Contoh:

NIM  NamaMhs (NamaMhs bergantung pada NIM)


NIM, Matakuliah  Nilai (Nilai bergantung pada NIM dan
Matakuliah) Keterangan (Keterangan bergantung kepada
Nilai, Keterangan juga bergantung kepada NIM)
Ketergantungan demikian dinamakan ketergantungan Transitif
(samar/tidak langsung).
Langkah-Langkah Pembuatan Normalisasi
Bentuk Tidak Normal (Unnormalized Form)
Bentuk ini memiliki ciri-ciri, yaitu :
 Merupakan kumpulan data yang akan direkam
 tidak ada keharusan mengikukti format
tertentu
 Dapat saja data tidak lengkap atau terduplikasi
 Data dikumpulkan apa adanya sesuai dengan
kedatangannya atau sesuai dengan saat
menginput.
Bentuk Normal Kesatu (First Normal Form /
1 Nf)
Suatu relasi berada dalam bentuk normal pertama
jika relasi tidak mengandung atribut yang bernilai
ganda atau multivalue (setiap irisan baris dan
kolom hanya mempunyai satu nilai data).
Contoh Bentuk 1NF
Misal Data Mahasiswa sbb :

Atau

Tabel-tabel di atas tidak memenuhi syarat 1NF


Mahasiswa yang punya NIM, nama dan Hobby. Disini
ada perulangan Hobby.
Bentuk 1NF
Nim Nama Hobby
12020001 Heri Susanto Sepak bola
12020001 Heri Susanto Membaca Komik
12020001 Heri Susanto Berenang
12020013 Siti Zulaiha Memasak
12020013 Siti Zulaiha Menyanyi
12020015 Dini Susanti Menjahit
12020015 Dini Susanti Membuat Roti
Bentuk Normal Kedua (Second Normal
Form / 2 Nf )
Bentuk normal kedua mempunyai syarat yaitu:
 Bentuk data telah memenuhi kriteria bentuk normal
kesatu.
 Atribute bukan kunci haruslah bergantung secara
fungsi pada kunci utama/ primary key.
 Sudah ditentukan kunci-kunci field, dimana kunci
field haruslah unik dan dapat mewakili atribute lain
yang menjadi anggotanya.
Bentuk Normal Ketiga (Third Normal
Form / 3 Nf)
Suatu relasi berada dalam bentuk normal ketiga
jika:
 Relasi haruslah dalam bentuk normal kedua
 semua atribute bukan primer tidak punya
hubungan yang transitif (dependensi transitif)
 Setiap atribute bukan kunci haruslah
bergantung hanya pada primary key
Tabel mahasiswa berikut ini memenuhi syarat 2NF,
tetapi tidak memenuhi 3NF

Karena masih terdapat atribut non primary key (yakni


Kota dan Provinsi) yang memiliki ketergantungan
terhadap atribut non primary key yang lain (yakni
KodePos) :
Nim NamaMhs,jalan,KodePos  Kota, Provinsi
Sehingga tabel tersebut perlu didekomposisi menjadi :
Mahasiswa (NIM, NamaMhs, Jalan, KodePos)
KodePos (KodePos, Provinsi, Kota)
Boyce-Codd Normal Form (BCNF)
Suatu relasi dikatakan telah memenuhi kriteria
Boyce-Codd Normal Form (BCNF), jika dan hanya
jika setiap atribut kunci (key) adalah suatu
candidate key.
BCNF hampir sama dengan 3NF dengan kata lain
BCNF adalah 3NF.
Contoh Normalisasi
Diberikan tabel Mahasiswa di bawah ini, akan
dilakukan normalisasi sampai bentuk normal.

Perhatikan bahwa tabel di atas sudah dalam


bentuk normal ke Satu(1NF)
Bentuk Normal kedua (2NF)
Ketergantungan Fungsional:
 Nim  Nama_Mahasiswa, Tgl_Lahir
KdMKul  Kuliah,Sks
Nim, KdMKul  Nilai,Bobot
Belum memenuhi kriteria 3NF, karena atribut non-key
Nilai dan Bobot masih memiliki ketergantungan
fungsional.
Bentuk Normal ketiga (3NF)

Anda mungkin juga menyukai