NORMALISASI
-
Upload
febri-zaryanto -
Category
Documents
-
view
216 -
download
1
description
Transcript of NORMALISASI
-
NORMALISASI
Dian Prajarini, S.T., M.Eng.
-
Normalisai Teknik pengelompokkan atribut dari suatu relasi
sehingga membentuk struktur relasi yang baik (tanparedudansi)
Proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya
Proses pengujian pada beberapa kondisi apakahada kesulitan pada saat menambah, mengubah ataumenghapus pada suatu basis data terdapat kesulitan perlu dipecahkan relasi pada
beberapa tabel lagi atau dengan kata lain perancangan basisdata belum optimal.
-
Mengapa dilakukan normalisasi ? Optimalisasi struktur-struktur tabel Meningkatkan kecepatan Menghilangkan pemasukan data yang sama Lebih efisien dalam penggunaan media
penyimpanan Mengurangi redundansi Menghindari anomali (insertion anomalies, deletion
anomalies, update anomalies). Integritas data yang ditingkatkan
-
Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi 3 kriteria sbb:
1. Jika ada dekomposisi (penguraian) tabel, makadekomposisinya harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel barutersebut bisa menghasilkan tabel semula dengan sama persis.
2. Terpeliharanya ketergantungan fungsional pada saatperubahan data (Dependency Preservation).
3. Tidak melanggar Boyce-Code Normal Form (BCNF)
Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggarBentuk Normal tahap ketiga (3rd Normal Form / 3NF).
-
Anomali Proses pada basis data yang memberikan efek
samping yang tidak diharapkan (misalnyaketidakkonsistenan data karena adanya redudansi) yang terjadi jika relasi tidak pada bentuk normal
Ada anomali relasi perlu dipecah menjadibeberapa tabel lagi agar diperoleh database yang optimal
-
Anomali 3 macam anomali pada suatu database:
Anomali penyisipan data (insert) terjadi ketika dilakukan penyisipan tuple/record pada suatu
relasi terjadi karena nilai primary key tidak diketahui saat penyisipan
Anomali pengubahan data (update) terjadi karena adanya redundansi data ketika akan mengubah nilai data suatu atribut, maka seluruh
pemunculan data tersebut harus ikut diubah Anomali penghapusan data (delete)
terjadi sewaktu dilakukan penghapusan tuple/record dari relasi, padahal tuple tersebut mengandung sebagian informasi yang penting dan tidak boleh dihilangkan
-
Dependency Depedensi merupakan konsep yang mendasari
normalisasi Depedensi menjelaskan nilai suatu atribut yang
menentukan nilai atribut lainnya Jenis depedensi:
Depedensi Fungsional Depedensi Transitif
-
Dependency Depedensi Fungsional
Menggambarkan hubungan attributes dalam sebuahrelasi
Suatu attribute dikatakan functionally dependant padayang lain jika kita menggunakan harga atribut tersebutuntuk menentukan harga atribut yang lain.
Simbol yang digunakan adalah untuk mewakilifunctional dependency. dibaca secara fungsional menentukan
Suatu atribut Y mempunyai dependensi fungsionalterhadap atribut X dan hanya jika setiap nilai nilai X berhubungan dengan sebuah nilai Y.
X Y
-
Dependency Depedensi Transitif
Atribut Z mempunyai depedensi transitif terhadap X bila: Y memiliki depedensi fungsional terhadap X Z memiliki depedensi fungsional terhadap Y X Y Y Z
-
Bentuk Tidak Normal Merupakan kumpulan data yang direkam, tidak ada
keharusan mengikuti suatu format tertentu, bisatidak lengkap atau terduplikasi
Data dikumpulkan apa adanya sesuai dengankedatangannya.
-
Bentuk Tidak Normal
-
Tujuan Normalisasi Minimalisasi redundansi (pengulangan data) Memudahkan identifikasi entitas Mencegah terjadinya anomali
-
Bentuk Normal (Normal Form) 1NF, 2NF, 3NF, BCNF
based on keys and functional dependencies 4NF, 5NF
based on keys and multi-valued dependencies
-
Bentuk Normal 1 (1 NF) Jika dan hanya jika setiap atribut dari relasi tersebut
hanya memiliki nilai tunggal dan tidak adapengulangan grup atribut dalam baris (atomic)
Bentuk 1NF tidak boleh mengandung grup atributyang berulang (atomic)
Tujuan membentuk 1NF : semantik tabel menjadi lebih eksplisit (say anything
once). semua operator aljabar relasional dapat diaplikasikan
pada tabel.
-
Bentuk Tidak NormalNIM NAMA HOBIA01 Doni Tenis, BerenangA02 Dina Joging, TenisA03 Reza Futsal
-
Bentuk Tidak Normal
Bentuk Normal 1 (1NF)
NIM NAMA HOBIA01 Doni Tenis, BerenangA02 Dina Joging, TenisA03 Reza Futsal
NIM NAMA HOBIA01 Doni TenisA01 Doni BerenangA02 Dina JogingA02 Dina TenisA03 Reza Futsal
-
Bentuk Tidak Normal
-
Bentuk Normal 1
Menjadi
-
Bentuk Normal 2 (2 NF) Suatu relasi disebut memenuhi bentuk normal kedua
(2NF) jika dan hanya jika : memenuhi 1NF setiap atribut yang bukan kunci utama tergantung secara
fungsional terhadap semua atribut kunci dan bukan hanyasebagian atribut kunci (fully functionally dependent).
Untuk normalisasi ke bentuk 2NF, maka tabel 1NF didekomposisi menjadi beberapa tabel yang masing-masing memenuhi 2NF
Tujuan membentuk 2NF : semantik tabel 2NF menjadi lebih eksplisit (Fully FD) mengurangi update anomali yang masih mungkin terjadi pada
1NF
-
Bentuk Normal 1
Bentuk Normal 2
NIM NAMA HOBIA01 Doni TenisA01 Doni BerenangA02 Dina JogingA02 Dina TenisA03 Reza Futsal
NIM NAMAA01 DoniA02 DinaA03 Reza
NIM HOBIA01 TenisA01 Berenan
gA02 JogingA02 TenisA03 Futsal
-
Bentuk Normal 1
-
Bentuk Normal 2 (2 NF)
-
Bentuk Normal 3 (3 NF) Suatu relasi disebut memenuhi bentuk normal ketiga
(3NF) jika dan hanya jika : memenuhi 2NF setiap atribut yang bukan kunci tidak tergantung secara
fungsional terhadap atribut bukan kunci yang lain dalamrelasi tsb (tidak terdapat ketergantungan transitif padaatribut bukan kunci).
-
Bentuk Normal 2
Bentuk Normal 3
NIM NAMAA01 DoniA02 DinaA03 Reza
NIM HOBIA01 TenisA01 Berenan
gA02 JogingA02 TenisA03 Futsal
NIM ID_HOBIA01 1A01 2A02 3A02 1A03 4
ID_HOBI HOBI1 Tenis2 Berenang3 Joging4 Futsal
Masih ada anomali
-
Hasil Normalisasi:NIM NAMAA01 DoniA02 DinaA03 Reza
NIM ID_HOBIA01 1A01 2A02 3A02 1A03 4
ID_HOBI HOBI1 Tenis2 Berenang3 Joging4 Futsal
-
Bentuk Normal 2 (2 NF)
Masih adaanomali
-
Bentuk Normal 3 (3NF)
-
Dari normalisasi data nilai mahasiswa tersebut maka akan didapat 4 tabel yaitu: Mahasiswa, Matakuliah, Nilai dan Bobot
Mahasiswa
Matakuliah
Bobot
Nilai