Dasar-dasar Normalisasi Database

Normalisasi Database Anda

Jika Anda telah bekerja dengan database untuk sementara waktu, kemungkinan Anda pernah mendengar istilah normalisasi. Mungkin seseorang bertanya kepada Anda "Apakah database itu dinormalisasi?" atau "Apakah itu di BCNF ?" Normalisasi sering disisihkan sebagai kemewahan yang hanya dimiliki oleh para akademisi. Namun, mengetahui prinsip-prinsip normalisasi dan menerapkannya pada tugas desain database harian Anda sebenarnya tidak terlalu rumit dan secara drastis dapat meningkatkan kinerja DBMS Anda.

Dalam artikel ini, kami akan memperkenalkan konsep normalisasi dan melihat sekilas bentuk normal yang paling umum.

Apa itu Normalisasi?

Normalisasi adalah proses mengatur data secara efisien dalam database. Ada dua tujuan dari proses normalisasi: menghilangkan data redundan (misalnya, menyimpan data yang sama di lebih dari satu tabel) dan memastikan ketergantungan data masuk akal (hanya menyimpan data terkait dalam tabel). Keduanya merupakan sasaran yang layak karena mereka mengurangi jumlah ruang yang dikonsumsi database dan memastikan bahwa data disimpan secara logis.

Bentuk Normal

Komunitas basis data telah mengembangkan serangkaian pedoman untuk memastikan bahwa database dinormalkan. Ini disebut sebagai bentuk normal dan diberi nomor dari satu (bentuk terendah normalisasi, disebut sebagai bentuk normal pertama atau 1NF) melalui lima (bentuk normal kelima atau 5NF). Dalam aplikasi praktis, Anda akan sering melihat 1NF, 2NF, dan 3NF bersama dengan 4NF sesekali. Bentuk normal kelima sangat jarang terlihat dan tidak akan dibahas dalam artikel ini.

Sebelum memulai diskusi kita tentang bentuk normal, penting untuk menunjukkan bahwa itu hanya pedoman dan pedoman. Kadang-kadang, menjadi perlu untuk menyimpang dari mereka untuk memenuhi persyaratan bisnis praktis. Namun, ketika variasi terjadi, sangat penting untuk mengevaluasi setiap konsekuensi yang mungkin terjadi pada sistem Anda dan memperhitungkan kemungkinan inkonsistensi. Yang mengatakan, mari kita jelajahi bentuk normal.

Formulir Normal Pertama (1NF)

Bentuk normal pertama (1NF) menetapkan aturan yang sangat dasar untuk database terorganisir:

Formulir Normal Kedua (2NF)

Bentuk normal kedua (2NF) membahas lebih lanjut konsep penghapusan data duplikasi :

Formulir Normal Ketiga (3NF)

Bentuk normal ketiga (3NF) berjalan satu langkah besar lebih jauh:

Bentuk Normal Boyce-Codd (BCNF atau 3.5NF)

Bentuk Normal Boyce-Codd, juga disebut sebagai "bentuk normal ketiga dan setengah (3.5)", menambahkan satu persyaratan lagi:

Bentuk Normal Keempat (4NF)

Akhirnya, bentuk normal keempat (4NF) memiliki satu persyaratan tambahan:

Ingat, pedoman normalisasi ini bersifat kumulatif. Untuk database yang akan di 2NF, itu harus terlebih dahulu memenuhi semua kriteria dari 1NF database.

Haruskah saya menormalkan?

Meskipun normalisasi database sering kali merupakan ide yang bagus, itu bukanlah persyaratan mutlak. Bahkan, ada beberapa kasus yang dengan sengaja melanggar aturan normalisasi adalah praktik yang baik. Untuk lebih lanjut tentang topik ini, baca Haruskah Saya Menormalkan Basis Data Saya?

Jika Anda ingin memastikan database Anda dinormalisasi, mulailah dengan belajar bagaimana menempatkan database Anda ke dalam Bentuk Normal Pertama .