sandidharma.ac.id – Halo semuanya, selamat datang kembali di Sandi Dharma Blog. Apabila sebelumnya kita sudah membahas tentang SQL vs NoSQL Database, kali ini kita akan lanjut Buat membahas tentang database Ialah normalisasi database. Apa itu normalisasi database? Yuk kita mulai!
Normalisasi Database
Normalisasi database adalah proses mengatur struktur tabel database dengan tujuan Buat menghindari redundansi dan meningkatkan integritas data. Ini dilakukan dengan mengelompokkan data ke dalam tabel yang lebih kecil dan lebih ternormalisasi, yang kemudian dihubungkan melalui Rekanan. Eksis beberapa Derajat normalisasi, mulai dari tingkat pertama (1NF) hingga tingkat kelima (5NF). Normalisasi database sangat Krusial karena membantu menjamin integritas data, memudahkan pemeliharaan dan pembaruan data, serta meningkatkan kinerja sistem.
Normalisasi Tingkat 1NF
Tingkat pertama normalisasi database (1NF) adalah tingkat dasar normalisasi yang harus dipenuhi oleh suatu database. Berikut adalah Misalnya tabel sebelum dan sesudah diubah menjadi 1NF:
Misalnya sebelum diubah menjadi 1NF:
Nama | Alamat | No. Telp |
---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 |
Jane | Jl. Merdeka No. 20 | 08987654321 |
Misalnya sesudah diubah menjadi 1NF:
Tabel 1:
Nama | No. Telp |
---|---|
John | 08123456789 |
Jane | 08987654321 |
Tabel 2:
Nama | Alamat |
---|---|
John | Jl. Kebon Sirih No. 10 |
Jane | Jl. Merdeka No. 20 |
Setelah diubah menjadi 1NF, masing-masing tabel hanya Mempunyai satu atribut yang Aneh dan Tak terdapat atribut yang bersifat multivalued. Selain itu, setiap atribut harus terikat pada entitas yang sesuai, Ialah entitas “orang” pada Misalnya di atas. Dengan demikian, database tersebut sudah memenuhi tingkat pertama normalisasi.
Normalisasi Tingkat 2NF
Tingkat kedua normalisasi database (2NF) mengharuskan suatu tabel Buat memenuhi tingkat pertama normalisasi (1NF) dan Mempunyai setiap atribut non-kunci terikat pada kunci Penting tabel tersebut. Berikut adalah Misalnya tabel sebelum dan sesudah diubah menjadi 2NF:
Misalnya sebelum diubah menjadi 2NF:
Nama | Alamat | No. Telp | Kota |
---|---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 | Jakarta |
Jane | Jl. Merdeka No. 20 | 08987654321 | Bandung |
Misalnya sesudah diubah menjadi 2NF:
Tabel 1:
Nama | No. Telp | Kota |
---|---|---|
John | 08123456789 | Jakarta |
Jane | 08987654321 | Bandung |
Tabel 2:
Nama | Alamat |
---|---|
John | Jl. Kebon Sirih No. 10 |
Jane | Jl. Merdeka No. 20 |
Setelah diubah menjadi 2NF, setiap atribut non-kunci terikat pada kunci Penting tabel tersebut. Dalam Misalnya di atas, atribut “Alamat” adalah atribut non-kunci yang terikat pada kunci Penting tabel 2, Ialah “Nama”. Dengan demikian, database tersebut sudah memenuhi tingkat kedua normalisasi.
Normalisasi Tingkat 3NF
Tingkat ketiga normalisasi database (3NF) mengharuskan suatu tabel Buat memenuhi tingkat kedua normalisasi (2NF) dan Tak Eksis atribut yang Tak terikat secara langsung pada kunci Penting tabel tersebut. Berikut adalah Misalnya tabel sebelum dan sesudah diubah menjadi 3NF:
Misalnya sebelum diubah menjadi 3NF:
Nama | Alamat | No. Telp | Kota | Provinsi |
---|---|---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 | Jakarta | DKI Jakarta |
Jane | Jl. Merdeka No. 20 | 08987654321 | Bandung | Jawa Barat |
Misalnya sesudah diubah menjadi 3NF:
Tabel 1:
Nama | No. Telp | Kota |
---|---|---|
John | 08123456789 | Jakarta |
Jane | 08987654321 | Bandung |
Tabel 2:
Kota | Provinsi |
---|---|
Jakarta | DKI Jakarta |
Bandung | Jawa Barat |
Tabel 3:
Nama | Alamat |
---|---|
John | Jl. Kebon Sirih No. 10 |
Jane | Jl. Merdeka No. 20 |
Setelah diubah menjadi 3NF, Tak Eksis atribut yang Tak terikat secara langsung pada kunci Penting tabel tersebut. Dalam Misalnya di atas, atribut “Provinsi” Tak terikat secara langsung pada kunci Penting tabel 1, Ialah “Nama”. Oleh karena itu, atribut tersebut dipindahkan ke tabel baru yang Mempunyai kunci Penting “Kota”. Dengan demikian, database tersebut sudah memenuhi tingkat ketiga normalisasi.
Normalisasi Tingkat 4NF
Tingkat keempat normalisasi database (4NF) adalah tingkat normalisasi yang lebih tinggi daripada tingkat ketiga (3NF). Tingkat 4NF mengharuskan suatu tabel Buat memenuhi tingkat ketiga normalisasi (3NF) dan Tak Eksis atribut multivalued yang Tak terikat secara langsung pada kunci Penting tabel tersebut. Apabila suatu tabel memenuhi tingkat 4NF, maka tabel tersebut Tak akan Mempunyai atribut multivalued yang Tak terikat secara langsung pada kunci Penting tabel tersebut.
Misalnya tabel sebelum dan sesudah diubah menjadi 4NF:
Misalnya sebelum diubah menjadi 4NF:
Nama | Alamat | No. Telp | Kota | Provinsi |
---|---|---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 | Jakarta | DKI Jakarta |
John | Jl. Merdeka No. 20 | 08987654321 | Jakarta | DKI Jakarta |
Jane | Jl. Merdeka No. 20 | 08123456789, 08987654321 | Bandung | Jawa Barat |
Misalnya sesudah diubah menjadi 4NF:
Tabel 1:
Nama | No. Telp | Kota |
---|---|---|
John | 08123456789 | Jakarta |
John | 08987654321 | Jakarta |
Jane | 08123456789, 08987654321 | Bandung |
Tabel 2:
Kota | Provinsi |
---|---|
Jakarta | DKI Jakarta |
Bandung | Jawa Barat |
Tabel 3:
Nama | Alamat | No. Telp |
---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 |
John | Jl. Merdeka No. 20 | 08987654321 |
Jane | Jl. Merdeka No. 20 | 08123456789, 08987654321 |
Setelah diubah menjadi 4NF, Tak Eksis atribut multivalued yang Tak terikat secara langsung pada kunci Penting tabel tersebut. Dalam Misalnya di atas, atribut “No. Telp” merupakan atribut multivalued yang Tak terikat secara langsung pada kunci Penting tabel 1, Ialah “Nama”. Oleh karena itu, atribut tersebut dipindahkan ke tabel baru yang Mempunyai kunci Penting “Nama” dan “Alamat”. Dengan demikian, database tersebut sudah memenuhi tingkat keempat normalisasi.
Normalisasi Tingkat 5NF
Tingkat kelima normalisasi database (5NF) adalah tingkat normalisasi yang lebih tinggi daripada tingkat keempat (4NF). Tingkat 5NF mengharuskan suatu tabel Buat memenuhi tingkat keempat normalisasi (4NF) dan Tak Eksis dependensi fungsional tersembunyi di dalam tabel tersebut. Apabila suatu tabel memenuhi tingkat 5NF, maka tabel tersebut Tak akan Mempunyai dependensi fungsional tersembunyi di dalamnya.
Misalnya tabel sebelum dan sesudah diubah menjadi 5NF:
Misalnya sebelum diubah menjadi 5NF:
Nama | Alamat | No. Telp | Kota | Provinsi |
---|---|---|---|---|
John | Jl. Kebon Sirih No. 10 | 08123456789 | Jakarta | DKI Jakarta |
Jane | Jl. Merdeka No. 20 | 08987654321 | Bandung | Jawa Barat |
Jane | Jl. Merdeka No. 20 | 08123456789, 08987654321 | Bandung | Jawa Barat |
Misalnya sesudah diubah menjadi 5NF:
Tabel 1:
Nama | No. Telp | Kota |
---|---|---|
John | 08123456789 | Jakarta |
Jane | 08987654321 | Bandung |
Jane | 08123456789, 08987654321 | Bandung |
Tabel 2:
Kota | Provinsi |
---|---|
Jakarta | DKI Jakarta |
Bandung | Jawa Barat |
Tabel 3:
Nama | Alamat |
---|---|
John | Jl. Kebon Sirih No. 10 |
Jane | Jl. Merdeka No. 20 |
Setelah diubah menjadi 5NF, Tak Eksis dependensi fungsional tersembunyi di dalam tabel tersebut. Dalam Misalnya di atas, atribut “Alamat” tergantung pada atribut “Nama”, sehingga Tak Eksis dependensi fungsional tersembunyi. Dengan demikian, database tersebut sudah memenuhi tingkat kelima normalisasi.
Perlu dicatat bahwa tingkat kelima normalisasi (5NF) adalah tingkat normalisasi terakhir yang umumnya diterapkan dalam database. Tingkat normalisasi di atas tingkat kelima (5NF) jarang diterapkan dalam praktik sehari-hari karena biasanya sudah cukup memenuhi kebutuhan database.
Apakah Normalisasi Berlaku Buat NoSQL Database?
Normalisasi database merupakan suatu teknik yang diterapkan dalam sistem manajemen database relasional (RDBMS). NoSQL database merupakan jenis database yang Tak menggunakan sistem manajemen database relasional, sehingga Tak memerlukan teknik normalisasi database. Tetapi, meskipun NoSQL database Tak memerlukan teknik normalisasi database, terdapat beberapa prinsip yang dapat diterapkan dalam mengelola data di NoSQL database agar data tetap terorganisir dengan Berkualitas dan mudah diakses.
Konklusi
Normalisasi database adalah proses mengatur struktur tabel database dengan tujuan Buat menghindari redundansi dan meningkatkan integritas data. Normalisasi database terdiri dari beberapa Derajat, mulai dari tingkat pertama (1NF) hingga tingkat kelima (5NF).
Tingkat pertama normalisasi (1NF) mengharuskan setiap tabel hanya Mempunyai satu atribut yang Aneh dan Tak terdapat atribut yang bersifat multivalued. Setiap atribut harus terikat pada entitas yang sesuai.
Tingkat kedua normalisasi (2NF) mengharuskan setiap tabel memenuhi tingkat pertama normalisasi (1NF) dan Mempunyai setiap atribut non-kunci terikat pada kunci Penting tabel tersebut.
Tingkat ketiga normalisasi (3NF) mengharuskan setiap tabel memenuhi tingkat kedua normalisasi (2NF) dan Tak Eksis atribut yang Tak terikat secara langsung pada kunci Penting tabel tersebut.
Tingkat keempat normalisasi (4NF) mengharuskan setiap tabel memenuhi tingkat ketiga normalisasi (3NF) dan Tak Eksis atribut multivalued yang Tak terikat secara langsung pada kunci Penting tabel tersebut.
Tingkat kelima normalisasi (5NF) mengharuskan setiap tabel memenuhi tingkat keempat normalisasi (4NF) dan Tak Eksis dependensi fungsional tersembunyi di dalam tabel tersebut.
Normalisasi database sangat Krusial karena membantu menjamin integritas data, memudahkan pemeliharaan dan pembaruan data, serta meningkatkan kinerja sistem. Tingkat normalisasi di atas tingkat kelima (5NF) jarang diterapkan dalam praktik sehari-hari karena biasanya sudah cukup memenuhi kebutuhan database.
NoSQL database merupakan jenis database yang Tak menggunakan sistem manajemen database relasional, sehingga Tak memerlukan teknik normalisasi database.