apa itu normalisasi pada erd

 Normalisasi adalah proses dalam desain basis data yang bertujuan untuk mengorganisir data dalam tabel untuk mengurangi redundansi dan meningkatkan integritas data. Dalam konteks Entity-Relationship Diagram (ERD), normalisasi membantu dalam merancang struktur basis data yang efisien dan terorganisir dengan baik.


Tujuan Normalisasi

Mengurangi Redundansi: Normalisasi bertujuan untuk menghilangkan data yang berulang dalam tabel, sehingga mengurangi penggunaan ruang penyimpanan dan meningkatkan efisiensi.

Meningkatkan Integritas Data: Dengan mengorganisir data dengan baik, normalisasi membantu menjaga konsistensi dan akurasi data.

Mempermudah Pemeliharaan: Struktur data yang terorganisir memudahkan pemeliharaan dan pembaruan data.

Tahapan Normalisasi

Normalisasi biasanya dilakukan dalam beberapa tahap yang dikenal sebagai "normal forms" (bentuk normal). Berikut adalah tiga bentuk normal yang paling umum:


First Normal Form (1NF):


Setiap kolom dalam tabel harus berisi nilai atom (tidak terpisah) dan tidak ada kolom yang berisi nilai berulang.

Setiap baris dalam tabel harus unik, biasanya dengan menggunakan primary key.

Second Normal Form (2NF):


Tabel harus sudah dalam 1NF.

Semua kolom non-key harus sepenuhnya bergantung pada primary key. Ini berarti tidak boleh ada ketergantungan parsial, di mana kolom non-key bergantung hanya pada sebagian dari primary key.

Third Normal Form (3NF):


Tabel harus sudah dalam 2NF.

Tidak boleh ada ketergantungan transitif, di mana kolom non-key bergantung pada kolom non-key lainnya.

Contoh Normalisasi

Misalkan kita memiliki tabel yang berisi informasi tentang siswa dan kursus yang mereka ambil:


Tabel Awal: | StudentID | StudentName | CourseID | CourseName | |-----------|-------------|----------|-------------| | 1 | Alice | 101 | Math | | 1 | Alice | 102 | Science | | 2 | Bob | 101 | Math |

Langkah 1: Mencapai 1NF


Pastikan tidak ada kolom yang berisi nilai berulang. Dalam contoh ini, tabel sudah dalam 1NF.

Langkah 2: Mencapai 2NF


Pisahkan tabel menjadi dua tabel untuk menghilangkan ketergantungan parsial:

Tabel Siswa: | StudentID | StudentName | |-----------|-------------| | 1 | Alice | | 2 | Bob |


Tabel Kursus: | CourseID | CourseName | |----------|-------------| | 101 | Math | | 102 | Science |


Tabel Pendaftaran: | StudentID | CourseID | |-----------|----------| | 1 | 101 | | 1 | 102 | | 2 | 101 |


Langkah 3: Mencapai 3NF


Pastikan tidak ada ketergantungan transitif. Dalam contoh ini, tabel sudah dalam 3NF karena tidak ada kolom non-key yang bergantung pada kolom non-key lainnya.

Kesimpulan

Normalisasi adalah langkah penting dalam desain basis data yang membantu menciptakan struktur data yang efisien dan terorganisir. Dengan menggunakan normalisasi, desainer basis data dapat mengurangi redundansi, meningkatkan integritas data, dan mempermudah pemeliharaan data. Dalam konteks ERD, normalisasi membantu dalam merancang entitas dan relasi yang tepat untuk mencerminkan kebutuhan sistem.



Komentar

Postingan populer dari blog ini

apa itu relasi pada erd? mwngapa many to many tidak baik digunakan?

jelaskan apa itu primary key, foregin key, dan candidate key