normalisasi basisdata 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-normalisasi data-20141118.pdf · anomali...

32
NORMALISASI BASISDATA 1 Oleh: Heru Prasetyo, M.kom Satu mesin dapat melakukan pekerjaan lima puluh orang biasa. Tidak ada mesin dapat melakukan pekerjaan dari satu orang yang luar biasa. (Elbert Hubbard)

Upload: lebao

Post on 27-Mar-2019

234 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

NORMALISASI BASISDATA

1

Oleh: Heru Prasetyo, M.kom

Satu mesin dapat melakukan pekerjaan lima puluh orang biasa. Tidak ada

mesin dapat melakukan pekerjaan dari satu orang yang luar biasa.

(Elbert Hubbard)

Page 2: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Anomali

Adalah proses pada basis data yang memberikan efeksamping yang tidak diharapkan, misalnya menyebabkan

ketidak konsistenan data atau membuat sesuatu data menjadi hilang ketika data lain dihapus.

Normalisasi perlu dilakukan karena umumnya selaluterjadi anomali/ketidaknormalan dalam suatu basisdata

Anomali ada 3 macam

Page 3: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

1. Anomali Peremajaan/Update

Anomaly

• Anomali ini terjadi apabila terjadi pengubahan

terhadap sejumlah data yang tidak

berguna/mubazir, tetapi tidak seluruhnya di

ubah. Contoh:

Page 4: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Seandainya pemasok Citra berpindah ke kota

lain, misalnya Bogor. Dan pengubahan hanya

dilakukan pada data pertama (ada 2 buah data

pemasok Citra), maka hasilnya sebagai

berikut:

Page 5: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Terlihat ada ketidak konsistenan. Fakta

pertama menyatakan bahwa pemasok Citra

berlokasi di Bogor, tetapi fakta kedua

menyatakan di Bandung.

Page 6: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

2. Anomali Penyisipan/Insertion

Anomaly

• Anomali penyisipan terjadi jika pada saat

penambahan hendak dilakukan ternyata ada

elemen data yang masih kosong dan elemen

tersebut justru menjadi kunci/key. Contoh:

Page 7: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Masalahnya, bagaimana caranya menyimpan

fakta bahwa RUANG baru bernama Arjuna

terdapat pada Gedung Selatan?

Penyisipan/penambahan tidak dapat

dilakukan mengingat tidak ada informasi

KULIAH yang menggunakan ruangan tersebut.

Page 8: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

3. Anomali Penghapusan/Delete

Anomaly

• Anomali penghapusan terjadi jika ketika

sesuatu baris (tuple, record) yang tak terpakai

dihapus,mengakibatkan juga data lain

terhapus (menjadi hilang). Contoh:

Page 9: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Apabila data siswa dengan Nomor Identitas 20

yang mengambil kursus bahasa jepang

dihapus, maka data yang menyatakan bahwa

biaya kursus bahasa jepang sebesar 65.000

juga akan terhapus.

Page 10: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Normalisasi

• Menurut E. F.Codd, perintis tehnologi basisdata, asal istilahini normalisasi,

• Selain dipakai sebagai metodologi tersendiri untukmenciptakan struktur tabel 9 relasi dalam basis data (dengan tujuan untuk mengurangi ke-mubazir-an data), normalisasi terkadang hanya dipakai sebagai perangkatverifikasi terhadap tabel-tabel yang dihasilkan olehmetodologi lain ( misalnya E-R). Normalisasi memberikanpanduan yang sangat membantu bagi pengembang untukmencegah penciptaan struktur tabel yang kurang fleksibelatau mengurangi ketidakfleksibelan.

Page 11: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Menurut Kroenke ,

• Normalisasi sebagai proses untuk mengubah suaturelasi yang memiliki masalah tertentu ke dalam duabuah relasi atau lebih yang tidak memiliki masalahtersebut. Masalah yang dimaksud oleh Kroenke inisering disebut dengan istilah anomali.

Page 12: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Kesimpulan pengertian Normalisasi:

• Normalisasi merupakan sebuah teknik dalam logikal desain sebuahbasis data/ database, teknik pengelompokan atribut dari suaturelasi sehingga membentuk struktur relasi yang baik tanparedudansi (pengulangan yang tidak perlu) dan ambiguity (ketidakterstrukturan).

• Normalisasi adalah suatu proses memperbaiki/membangun denganmodel data relasional, dan secara umum lebih tepat dikoneksikandengan model data logika. Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya.

• Pada proses normalisasi dilakukan pengujian pada beberapa kondisiapakah ada kesulitan pada saat menambah/ menyisipkan, menghapus, mengubah dan mengakses pada suatu basis data. Bilaterdapat kesulitan pada pengujian tersebut maka perlu dipecahkanrelasi pada beberapa tabel lagi atau dengan kata lain perancanganbasis data belum optimal.

Page 13: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Tujuan Normalisasi

• Untuk menghilangkan kerangkapan data

• Untuk mengurangi kompleksitas

• Untuk mempermudah pemodifikasian data

Page 14: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Bentuk Normalisasi

• Bentuk Tidak Normal (Unnormalized Form)

• Bentuk Normal (Normal Form)

Page 15: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Bentuk Tidak Normal

• Bentuk ini merupakan kumpulan data yang

direkam, tidak ada keharusan mengikuti suatu

format tertentu. Data dapat saja tidak lengkap

atau terduplikasi. Data dikumpulkan apa

adanya sesuai dengan kedatangannya/kondisi

awalnya.

Page 16: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Bentuk Normal

• 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.

Page 17: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Sebuah tabel dikatakan baik (efisien) atau normal jika

memenuhi 3 kriteria sbb:

• Jika ada dekomposisi (penguraian) tabel, makadekomposisinya harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebutdiuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabelsemula dengan sama persis.

• Terpeliharanya ketergantungan fungsional pada saatperubahan data (Dependency Preservation).

• Tidak melanggar Boyce-Codd Normal Form (BCNF)

Page 18: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

FUNCTIONAL DEPENDENCY

• Atau Ketergantungan Fungsional/DependensiFungsional.

• Konsep yang mendasari Normalisasi.

• Menjelaskan hubungan antar atribut.

• Menjelaskan suatu nilai dari atribut yang menentukan nilai atribut lain.

• Nanti akan digunakan sebagai acuanpendekomposisian data ke dalam bentuk yang paling efisien.

• Terdiri dari 4 macam.

Page 19: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

FD1-DEPENDENSI FUNGSIONAL

• Suatu atribut Y mempunyai dependensi

fungsional terhadap atribut X jika dan hanya

jika setiap nilai X berhubungan dengan sebuah

nilai Y.

• Notasi: X � Y

• Dibaca: X secara fungsional menentukan Y

Page 20: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• PESANAN_JUAL(PEMBELI. KOTA. BARANG. JUMLAH)

• Relasi Pesanan_Jual mengandung atribut Pembeli, Kota, Barang dan Jumlah.

• PEMBELI secara fungsional menentukan KOTA karenanampak bahwa PEMBELI yang sama, KOTA-nyapun jugasama.

• Notasi: PEMBELI � KOTA

Page 21: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• PEMBELI � KOTA

• {PEMBELI, BARANG} � JUMLAH

• {PEMBELI, BARANG} � KOTA

• {PEMBELI, BARANG} � {JUMLAH, KOTA}

• Kiri panah disebut DETERMINANT(Penentu)

• Kanan panah disebut DEPENDENT(Yang

Tergantung)

• Tanda “{}” digunakan jika atribut terdiri dari

lebih dari satu attribut digunakan dalam relasi.

Page 22: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

FD2-DEPENDENSI FUNGSIONAL

SEPENUHNYA/FULL FUNCTIONAL

DEPENDENT• Juga disebut Fully Dependent atau juga Irreducible

Dependent, dependensi yang tidak dapat dibagi lagi.

• Suatu atribut Y mempunyai dependensi fungsionalterhadap atribut X jika:– Y mempunyai dependensi fungsional terhadap X

– Y tidak memiliki dependensi terhadap bagian dari X.

• Contoh:

• Relasi PELANGGAN(KODE_PELANGGAN, NAMA, KOTA, NOMOR_FAX)

• Notasi Fungsional:– {KODE_PELANGGAN, KOTA} � NOMOR_FAX

– {KODE_PELANGGAN � NOMOR_FAX

Page 23: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Notasi Fungsional:

– {KODE_PELANGGAN, KOTA} � NOMOR_FAX

– KODE_PELANGGAN � NOMOR_FAX

• NOMOR_FAX bergantung pada{KODE_PELANGGAN, KOTA} , ini kondisi FD1

• NOMOR_FAX juga bergantung padaKODE_PELANGGAN, ini kondisi FD2

• Maka NOMOR_FAX tidak memiliki dependensifunsional sepenuhnya terhadap{KODE_PELANGGAN, KOTA}

• NOMOR_FAX hanya mempunyai dependensifungsional sepenuhnya terhadapKODE_PELANGGAN

Page 24: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

FD3-DEPENDENSI TOTAL• Suatu atribut Y mempunyai dependensi fungsional terhadap

atribut X jika:– Y mempunyai dependensi fungsional terhadap X

– X mempunyai dependensi terhadap Y.

• Notasi: X �� Y

• Contoh:

• Relasi PELANGGAN(KODE_PEMASOK, NAMA_PEMASOK, KOTA)• Notasi Fungsional(Asumsi, tidak ada nama pemasok yang sama):

– KODE_PEMASOK �� NAMA_PEMASOK

Page 25: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

FD4-DEPENDENSI TRANSITIF

• Suatu atribut Z mempunyai dependensi transitif

terhadap X bila:

– Y mempunyai dependensi fungsional terhadap X

– Z mempunyai dependensi terhadap Y.

• Notasi: X � Y � Z

• Contoh:

Page 26: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

• Relasi JADWAL(KULIAH, RUANG,TEMPAT, WAKTU)

• Notasi funsional:

– KULIAH � {RUANG, WAKTU}

– RUANG � TEMPAT

– KULIAH � RUANG � TEMPAT

• TEMPAT memiliki dependensi transitif terhadap

KULIAH

Page 27: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

DIAGRAM DEPENDENSI

Contoh 1 Diagram Dependensi dari Relasi JADWAL

Page 28: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Contoh 2 Diagram Dependensi dari Relasi

PESANAN_JUAL

Noted: Atribut Kota diganti Alamat.

Page 29: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

DEKOMPOSISI

• Adalah proses pemecahan sebuah Relasi dalam

Normalisasi menjadi Relasi-Relasi lain

• Dekomposisi Hilang, jika terjadi kemungkinan

hilangnya suatu informasi akibat dekomposisi. Ini

harus dihindari.

• Dekomposisi Tak Hilang, jika tak ada informasi

yang hilang atau mungkin hilang akibat proses

basisdata setelah sebuah relasi dipecah menjadi

beberapa relasi. Ini harus dipastikan dilakukan.

Page 30: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

Contoh Proses• Relasi/Tabel awal:

• Dekomposisi Tak Hilang:

• Dekomposisi Hilang:

Page 31: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

TUGAS

• Lakukan dekomposisi terhadap salah satu Tabel

pada Tugas 2, menggunakan kaidah FD1-4. Hasil

akhirnya adalah beberapa tabel yang sudah

efisien.

• Buat Diagram Dependensi antar Tabel baru yang

tercipta tersebut.

• Cukup 1 lembar HVS A4. Dikerjakan berkelompok

sesuai kelompok terdahulu.

Page 32: NORMALISASI BASISDATA 1 - pdf.nsc.ac.idpdf.nsc.ac.id/3-NORMALISASI DATA-20141118.pdf · Anomali Adalahproses padabasis data yang memberikanefek samping yang tidakdiharapkan, misalnyamenyebabkan

LANJUT KE BASISDATA 2