NORMALISASI DATABASE


1. Pengertian Normalisasi

https://images.openai.com/static-rsc-4/8sMbaYpCCEFfWP5qjsFSKARiHfKylXmbp-DglmD4c4_L1B2D7P2efVOgAh-k2mS1RFi6mCPCXKn48DyB1sDyjFQVcLls2zRwcXUA-AWSSICZ0YtlimuEjPF_Fy23EEn2nonRDb2l7bXZBCJdZkw1xxuNJbDh1MeBSgSUo9WTD2Jvlklmqybc177I15_001XL?purpose=fullsize
https://images.openai.com/static-rsc-4/sUtu21sFLA5u0sSeRApH8kff1ar0SfkN5vKHxAvh3ws1sHuxCL5tKZcQEFZMpa8oGEONGR_1uh-5QwTudvRb1E1X-pYsa4OuaRb0iyXOJ05MpDx0XUdSVj2AfGrNXY29kfrjx2Cf_orfLIn1eGVC4_cYURObwsW1NUdiBQjlSE74OX0cJ_I5ES7BsEiuY2fn?purpose=fullsize
https://images.openai.com/static-rsc-4/TT5AQ-WoxTxYVzc_94w-Wp_fipmrdCvjhJDAb_ykdIYCxVBnIY_linsAelO6tYs04P_hjSecWS12mdKB0DZIrvxO3U9fH7Oi8RNbvpXdp7SFKkBGAxstsHX8hni2PUvVDs18vBYFIl6ToeCYiVQxAXALTQphm59-eogTn22TXbiJXhWN-4T13LHAVeuH1x02?purpose=fullsize

7

πŸ“– Deskripsi

Normalisasi database adalah proses mengorganisasi data dalam tabel agar lebih efisien dan mengurangi redundansi (duplikasi data).

🧠 Narasi Penjelasan

Normalisasi bertujuan untuk:

  • Menghindari data ganda
  • Menjaga konsistensi data
  • Mempermudah pengelolaan database

πŸ‘‰ Database yang tidak dinormalisasi biasanya berantakan dan rawan error.


2. Tujuan Normalisasi

https://images.openai.com/static-rsc-4/hBcLuqXvBMPHVEG4SbLtMk-sKDIoL1Y1hciCpKmHs2oIET2bUH2vj488yN_5MLcK-dvj1_Z-hT-xQmIIu9bI0hhYk9BGCLmuD7LZswnt4BwIhbb1euP8Zgz7vN6bThngGt_8evgW1oE8_kCqj9PMXvNSA5G3JpVw2VuYxR9rtxjQ4N9kLUIhnVMdWsHw3cY2?purpose=fullsize
https://images.openai.com/static-rsc-4/TT5AQ-WoxTxYVzc_94w-Wp_fipmrdCvjhJDAb_ykdIYCxVBnIY_linsAelO6tYs04P_hjSecWS12mdKB0DZIrvxO3U9fH7Oi8RNbvpXdp7SFKkBGAxstsHX8hni2PUvVDs18vBYFIl6ToeCYiVQxAXALTQphm59-eogTn22TXbiJXhWN-4T13LHAVeuH1x02?purpose=fullsize
https://images.openai.com/static-rsc-4/ds9J1urgw1f_f6uKP3rW_kzIPrSeBcCuafBAoh-NQNNjpG_3DOw4EIMnvivF3nhyVHs7QwqXo8EVa0uHM-yX7XkMhz7z-0ZVgLyTW01mzQmcSz8oDlndWO5dyT_A3CU7Fb0tuTymkVO-JJmfkCEc9zqs19IafcFVwnP9F9gFnyQHjK5bFZcTEvqNWCBmhbe6?purpose=fullsize

6

πŸ“– Deskripsi

Normalisasi meningkatkan kualitas database.

🧠 Narasi Penjelasan

Tujuan:

  • Mengurangi redundansi
  • Menghindari anomali data
  • Menjaga integritas data
  • Mempermudah update data

3. Anomali dalam Database

https://images.openai.com/static-rsc-4/0ZfAfeUY_AjuRph7skDSR97gmX3yiLMPUUDKkKuu1S7n7wbeoxpaw5EhIJGaxEZSiVRRXWFOHi9H4AdIpb9D9P19ssmp0dLUOm0TljMi_xIq1UoQiTHw-En4gPBM6S0hAj5fY7tiIwPgf6w4T04c6shNUxAjk4mvWZdZV4A5EWb-Os0aQ1G4Qq-aMhUjZEKp?purpose=fullsize
https://images.openai.com/static-rsc-4/xgZ8ZWP9W8l4nE_LCej8xi7SfI422NI2DvDMbsc-hg6tOqATbuvUiiIJGoxDRveF-ooh5XbjkWwrYW24tff43Etw2BLf5FYG2xWsdsgxUwiG-iiAG9R9eJJHcyGovnVnlGZrpZL9uqek4lIUD8OtLRejUoEYMXclW_PLOXhjSrQu0bRKtg5l-ychHMpbDrsY?purpose=fullsize
https://images.openai.com/static-rsc-4/IMNM9YpqEDGIzljBjQElzYCSlBUjO65UB_EyNYApRuecLm7RFlYeJ3YSKb4p72NRkIr50vS-Yo9mlNXKHRPDNx4tkRvpSF3dapPtQkBPl3cuPPRcKW9xS_A3JjXxAPyhznDM-6c8h3L_xTbgLCVXYI4-RW1oryO0-4ciifojQ3Yo2TNLBSP5g4l1bLK9Nhln?purpose=fullsize

6

πŸ“– Deskripsi

Masalah akibat database tidak normal.

🧠 Narasi Penjelasan

πŸ“Š Tabel:

JenisPenjelasan
InsertTidak bisa tambah data
UpdateData tidak konsisten
DeleteData hilang tidak sengaja

πŸ‘‰ Normalisasi mengatasi masalah ini.


4. Bentuk Normalisasi (Normal Forms)

https://images.openai.com/static-rsc-4/czkTRh40hNQH3EcgQba0iftxb1wGgUGvteYTqvwPpOIRQleH5J6CkPpkji065l2ZrgRleJfPJODGRh-AcJi_ZaSGVMWezlRmRBm3Byd_0jRdUdWlBh2LzX_f69ZE7xnnSNXrDrJ7EPKFz_Pl3jmP_1Yz6iQwN6TbYZ_mffHloPFJkBft01_l_1guB1nKLpKI?purpose=fullsize
https://images.openai.com/static-rsc-4/2xqE_Joh1IBYQcvAmjW6-kNIsnSqx1qyK2Vt2x2e_qKjap27YARYLYWEUiImBiZQKnFQFbCprLn_UUas0kpY6iCP0WzInGAmaPyvxqA3qn77G3ZL-_Nyw9ya6tyWgaRgJb0X1JxKIAXpC9KXwaldrrV_QjFYX9g3VhunfzBflPx4m9Pmrq3CikoiSsbghrt3?purpose=fullsize
https://images.openai.com/static-rsc-4/Lo-pWdxOVEWnOOD8Bg2Cuz7qW344lmOZSThuIx0dUJWRHATlwELQ1vGplttyNa_MZCzKbUAlJ18MeFJbanD8FMfKKdGH0ajENmZJz0xA8txdVUexS2i5cZxJpif-notZHXb-oJ-35LU2Je7MxAoC6yCKVQIhMRJpkrdemKZMfsUgjEYpEg4OliYEu74nqd4O?purpose=fullsize

8

πŸ“– Deskripsi

Normalisasi memiliki beberapa tahap.

🧠 Narasi Penjelasan

LevelNama
1NFFirst Normal Form
2NFSecond Normal Form
3NFThird Normal Form

5. First Normal Form (1NF)

https://images.openai.com/static-rsc-4/9XYmRX9gvlLfQfhAu3UPzR2PnMZCMJ76yNs2GiBf1ZfaTKfq0oD57N8fsmJ5iq3ofPjPvdc3LCYNnDnD3gcvc-lAR_EFX9I9N3Nw4nHWBcww9YJOWYISHq3pDPjKMMmDDFx_cV8AEORdAtSm1rzZWgTlaz-l6ui9phhEya1d6lSbvLNEtSfY4dIrC-9lWVC1?purpose=fullsize
https://images.openai.com/static-rsc-4/nQ-XGjKo4rvDje8lCzklnQee-fykIS1i3bEuUOphlbBbP03YLmskX81spRKEp8chREVTwDGzjlaImOPssL28LHBzdqVhsvd5pbypXMk6_xmsUx3cS-3EoZ_JaeLUpbPdAfOJo5H2cqzNJgg-XHZLFoityPC2x9q_PiNc2ncM4Qzse2Ma437aLfwDSavSlOqD?purpose=fullsize
https://images.openai.com/static-rsc-4/ZsnBMU23qAYbXKWrlmWieOULZANaY1gbTzddAm3yYK6uS2LWwMZHKnojx48zPeth4CbsSIJcW4yQN3PhdMUeGv8yJ8tUKMuG9UI6gAkYLKroqrNq5VSBqlASE4LNu5J7Oy2FoLfa0nzKGrEVi_L80kRPsB8UPyz-NDBNZ_4RZq-3k6a_e6yvz1xEMw07esi6?purpose=fullsize

5

πŸ“– Deskripsi

Data harus bersifat atomik (tidak boleh ada nilai ganda dalam satu kolom).

🧠 Narasi Penjelasan

Contoh:

  • Salah: satu kolom berisi banyak nilai
  • Benar: satu kolom satu nilai

πŸ‘‰ Setiap field harus memiliki satu nilai saja.


6. Second Normal Form (2NF)

https://images.openai.com/static-rsc-4/ZsnBMU23qAYbXKWrlmWieOULZANaY1gbTzddAm3yYK6uS2LWwMZHKnojx48zPeth4CbsSIJcW4yQN3PhdMUeGv8yJ8tUKMuG9UI6gAkYLKroqrNq5VSBqlASE4LNu5J7Oy2FoLfa0nzKGrEVi_L80kRPsB8UPyz-NDBNZ_4RZq-3k6a_e6yvz1xEMw07esi6?purpose=fullsize
https://images.openai.com/static-rsc-4/aZl5gDgK-Gc60uM_0WebBGNbHI02LKM97tdVAL2DwaHBCwDhAzXF7vNlJZs_28DTbqAnCACbIN28lWkQnVlR9kmUy3T9BFwboVCrQm5MI5sdoRa70BSWmEG0TM5GgL1WB7eFz7eHXx8FMjw0p_0zcIxzFsYCrgrsIeue3Fakh4lkinIHwVOOhgu97aKfhpcX?purpose=fullsize
https://images.openai.com/static-rsc-4/5DrQX7667yuofwE7TiE4ChQtmfZy38D2_Iq795rRzAkNB9RCIRlAdVu8f-8ll_Fb-98ALhTXauz33DQ7hXOTMYEpFbzvWXCO1UGfm8gB2M7IpNOAO6Kyo_OytvZSLcGDZt8E-Je9ZzB3Gdo04_dAinQPapyvtydA0e3qufpIDmJXG4nyPg12PsBnHo9NNSWA?purpose=fullsize

6

πŸ“– Deskripsi

Menghilangkan ketergantungan parsial.

🧠 Narasi Penjelasan

  • Berlaku pada tabel dengan primary key gabungan
  • Semua atribut harus bergantung penuh pada primary key

πŸ‘‰ Jika tidak, tabel harus dipisah.


7. Third Normal Form (3NF)

https://images.openai.com/static-rsc-4/9IvP4k8tNF0Yy1lBxcGbqDTe2a-389wt64xsAlKrFdSLzp24GCQXX2RpvRKIkfSbxnPl7hQTjnQPKx2_jNdr_3wnYFbZ3w-i7Oi29Sd7SFgS3J-HtT2V2KB1YArByyunVkP7w-imgrUnURj578wljfCyit8P5-i3AIgAZWQq7moup66DeS8Z3P4v9g3i3lRN?purpose=fullsize
https://images.openai.com/static-rsc-4/YYPi-9IIsPU96B6WB87mfacaKGwuhiIenVDQrsQAD9sJeHJpR7vhjSSaR6lPSqY_USmV_b_OLulpL2Ogfwqxc1aJYfnjLGA_9BMNdzl-inRfgxnNH_nvNkVLf2r1GVN_G-RLmWPtJ8WsDw4Gx2KBQ2Qxce7yZ1f9_aKZXBLevLKX35JhF9lrw98wPMgTR7OK?purpose=fullsize
https://images.openai.com/static-rsc-4/s5mUkc1U22vBJijRtxz_oxFNE6X5WQSKFZ6xxSW9TyZTwwKRicbKPrMe--ObpRH_-Ojq0Gq2p1dfrxiZIhyAtVIWiqZjdWHkEHuwKWJYuRLbftkBmM1dZhiu6McwAZe0m12YjGVGjyDJp90MM6D-WJYF9oo6X6FejsThHkIMLOepkAaMTgq72h3K7n3fRtE-?purpose=fullsize

6

πŸ“– Deskripsi

Menghilangkan ketergantungan transitif.

🧠 Narasi Penjelasan

  • Atribut tidak boleh bergantung pada atribut lain selain primary key

πŸ‘‰ Fokus pada hubungan langsung ke primary key.


8. Contoh Normalisasi Step-by-Step

https://images.openai.com/static-rsc-4/8sMbaYpCCEFfWP5qjsFSKARiHfKylXmbp-DglmD4c4_L1B2D7P2efVOgAh-k2mS1RFi6mCPCXKn48DyB1sDyjFQVcLls2zRwcXUA-AWSSICZ0YtlimuEjPF_Fy23EEn2nonRDb2l7bXZBCJdZkw1xxuNJbDh1MeBSgSUo9WTD2Jvlklmqybc177I15_001XL?purpose=fullsize
https://images.openai.com/static-rsc-4/czkTRh40hNQH3EcgQba0iftxb1wGgUGvteYTqvwPpOIRQleH5J6CkPpkji065l2ZrgRleJfPJODGRh-AcJi_ZaSGVMWezlRmRBm3Byd_0jRdUdWlBh2LzX_f69ZE7xnnSNXrDrJ7EPKFz_Pl3jmP_1Yz6iQwN6TbYZ_mffHloPFJkBft01_l_1guB1nKLpKI?purpose=fullsize
https://images.openai.com/static-rsc-4/5DrQX7667yuofwE7TiE4ChQtmfZy38D2_Iq795rRzAkNB9RCIRlAdVu8f-8ll_Fb-98ALhTXauz33DQ7hXOTMYEpFbzvWXCO1UGfm8gB2M7IpNOAO6Kyo_OytvZSLcGDZt8E-Je9ZzB3Gdo04_dAinQPapyvtydA0e3qufpIDmJXG4nyPg12PsBnHo9NNSWA?purpose=fullsize

7

πŸ“– Deskripsi

Proses normalisasi dari awal hingga 3NF.

🧠 Narasi Penjelasan

Langkah:

  1. Data mentah
  2. 1NF β†’ pecah nilai
  3. 2NF β†’ pisahkan ketergantungan
  4. 3NF β†’ hilangkan ketergantungan tidak langsung

9. Kelebihan Normalisasi

πŸ“– Deskripsi

Manfaat penerapan normalisasi.

🧠 Narasi Penjelasan

  • Data lebih rapi
  • Mengurangi duplikasi
  • Mudah maintenance
  • Konsistensi tinggi

10. Kekurangan Normalisasi

πŸ“– Deskripsi

Keterbatasan normalisasi.

🧠 Narasi Penjelasan

KekuranganPenjelasan
Banyak tabelQuery lebih kompleks
Join banyakPerforma bisa turun

11. Denormalisasi

https://images.openai.com/static-rsc-4/2xqE_Joh1IBYQcvAmjW6-kNIsnSqx1qyK2Vt2x2e_qKjap27YARYLYWEUiImBiZQKnFQFbCprLn_UUas0kpY6iCP0WzInGAmaPyvxqA3qn77G3ZL-_Nyw9ya6tyWgaRgJb0X1JxKIAXpC9KXwaldrrV_QjFYX9g3VhunfzBflPx4m9Pmrq3CikoiSsbghrt3?purpose=fullsize
https://images.openai.com/static-rsc-4/ZrwvdQv8R9_bD6C_YNZwlppzIvh1E2hsS5SusibYCDqdgI6bM5m14kDwwjYEdQ4iDmBtkrlxF8PhGW38cMoB6KteFvDeQ5FpJ1nv4tMA87nGC5RhjrSiZHNwQU3-s62cl38DvrvocJhMLY6TPMqxn_DnvQkOcGFtoy8eGYzHcZ58FP3JEgwFuSfIe2DJwYbV?purpose=fullsize
https://images.openai.com/static-rsc-4/nudj2BIfN3ixr8ZsGJQhykHxUwDcAsbt4gVPBZCPeapzqPu9i4cZ39SbP9vsTFuO9qpLeEAri3TYwbcUh7wtPmZlE3eryXvus-8H0KBBDvuc_BaJPE3ZYUHZOkwhpQ5SwPaPx-CNzblGwebLX5g9a2g_a6oiySb-RH3mVkA1axb58lei-rRhgpfmhEgVOrns?purpose=fullsize

7

πŸ“– Deskripsi

Kebalikan dari normalisasi.

🧠 Narasi Penjelasan

  • Digunakan untuk meningkatkan performa
  • Menggabungkan tabel kembali

πŸ‘‰ Digunakan pada sistem besar.


12. Perbandingan Normalisasi vs Denormalisasi

πŸ“Š Tabel:

AspekNormalisasiDenormalisasi
RedundansiRendahTinggi
PerformaSedangTinggi
StrukturKompleksSederhana

13. Penerapan Normalisasi dalam Sistem Nyata

https://images.openai.com/static-rsc-4/Nr_MDMNI99ZprmjJC0GnNcDGaIM_YX7_iPrAQ3KY1aHxig6Oy_x-GJmMhk_CD80Y2ASX74D_cP73PZYT5f7meT8hDeU1Q_qQlf029qmggq96v8Xrumn9J5PSt4NQ8HYDlqI9uQouwp9XFsC7mPjjsUDJThmBOAivrp8gXTlyJWEDgnmjZ_1bFcoXYgx29G8e?purpose=fullsize
https://images.openai.com/static-rsc-4/5DrQX7667yuofwE7TiE4ChQtmfZy38D2_Iq795rRzAkNB9RCIRlAdVu8f-8ll_Fb-98ALhTXauz33DQ7hXOTMYEpFbzvWXCO1UGfm8gB2M7IpNOAO6Kyo_OytvZSLcGDZt8E-Je9ZzB3Gdo04_dAinQPapyvtydA0e3qufpIDmJXG4nyPg12PsBnHo9NNSWA?purpose=fullsize
https://images.openai.com/static-rsc-4/2NrzXvjiXQjzG-HRbBhXQR5snOKsCHU3K9kUcWoztRroBrAiteM3rwnbsNuh0YpEZ9S37dKRfN17DqpiP8BQJx7rTfNPJL4gU5QT9DgfRkTf6zKDm-8LlQ3a4TQRlsuK6ERfixZqB0Ivq0ErbWsk--DHuTq_71ylwfkdjZkCIATurJtPGPDufcezy4OXJx5w?purpose=fullsize

7

πŸ“– Deskripsi

Digunakan dalam berbagai sistem.

🧠 Narasi Penjelasan

Contoh:

  • Sistem akademik
  • Sistem perbankan
  • Sistem e-commerce

14. Kesalahan Umum dalam Normalisasi

πŸ“– Deskripsi

Kesalahan yang sering terjadi.

🧠 Narasi Penjelasan

  • Tidak sampai 3NF
  • Salah menentukan primary key
  • Relasi tidak jelas

15. Ringkasan Materi

πŸ“– Deskripsi

Inti pembelajaran.

🧠 Narasi Penjelasan

  • Normalisasi mengatur struktur database
  • Mengurangi redundansi
  • Meningkatkan konsistensi

16. Kesimpulan

  • Normalisasi adalah proses penting dalam desain database
  • Membantu membuat database efisien dan rapi
  • Wajib dipahami oleh mahasiswa informatika

🎯 LATIHAN / DISKUSI

  1. Apa itu normalisasi?
  2. Jelaskan 1NF, 2NF, 3NF!
  3. Apa itu anomali data?

πŸ“ TUGAS

  • Ambil contoh data:
    • Mahasiswa / penjualan
  • Lakukan:
    • 1NF
    • 2NF
    • 3NF