NORMALISASI

28
NORMALISASI Dian Prajarini, S.T., M.Eng.

description

HEHE

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