Pengertian Normalisasi
Database
Proses normalisasi
merupakan metode yang formal/standar dalam mengidentifikasi dasar relasi bagi
primary keynya (atau candidate key dalam kasus BCNF), dan dependensi fungsional
diantara atribut-atribut dari relasi tersebut. Normalisasi akan membantu
perancang basis data dengan menyediakan suatu uji coba yang berurut yang dapat
diimplementasikan pada hubungnan individualshingga skema relasi dapat di
normalisasi ke dalam bentuk yang lebih spesifik untuk menghindari terjadinya
error atau inkonsistansi data, bila dilakuan update tehadap relasi tersebut
dengan Anomaly.
Proses normalisasi pertama
kali diperkenalkan oleh E.F.Codd pada tahun 1972. normalisasi sering dilakukan
sebagai suatu uji coba pada suatu relasi secara berkelanjutan untuk menentukan
apakah relasi tersebut sudah baik atau masih melanggar aturan-aturan standar
yang diperlakukan pada suatu relasi yang normal (sudah dapat dilakukan proses
insert, update, delete, dan modify pada satu atau beberapa atribut tanpa mempengaruhi
integritas data dalam relasi tersebut).
Tujuan Normalisasi Database
Tujuan normalisasi database adalah untuk menghilangkan dan
mengurangi redudansi data dan tujuan yang kedua adalah memastikan dependensi
data (Data berada pada tabel yang tepat). Jika data dalam database tersebut
belum di normalisasi maka akan terjadi 3 kemungkinan yang akan merugikan sistem
secara keseluruhan.
1.INSERT Anomali : Situasi
dimana tidak memungkinkan memasukkan beberapa jenis data secara langsung di
database.
2. DELETE Anomali:
Penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut terhapus.
3. UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.
3. UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.
Fungsi Normalisasi Databasen
Pada ilmu database atau basis
data, normalisasi digunakan untuk menghindari terjadinya berbagai anomali data
dan tidak konsistensinya data. Ini merupakan fungsi database secara
umum. Dalam beberapa kasus normalisasi ini sangat penting untuk menunjang
kinerja database dan memastikan bahwa data dalam database tersebut aman dan
tidak terjadi kesalahan jika mendapat perintah SQL terutama DML yaitu update, insert,
dan delete.
Perlu diketahui dalam beberapa kasus Normalisasi database
terkadang harus diubah menjadi bentuk denormalisasi, terutama untuk data yang
telah besar dan membengkak. Denormalisasi ini ditujukan untuk meningkatkan
performance dengan meletakkan beberapa field menjadi satu tabel sehingga mudah
di tarik. Denormalisasi ini sering digunakan untuk menarik data yang besar dari
database.
Normalisasi database terdiri dari
banyak bentuk, dalam ilmu basis data ada setidaknya 9 bentuk normalisasi yang
ada yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF,DKNF, dan 6NF. Namun
dalam prakteknya dalam dunia industri
bentuk normalisasi ini yang paling sering digunakan ada sekitar 5 bentuk.
Normal Form
Data yang direkam dan dimasukkan secara mentah dalam suatu tabel
pada bentuk ini sangat mungkin terjadi inkonsistensi dan anomali data
Contoh Normal Form
Pada bentuk ini ada beberapa ciri ciri yang penting, yang pertama
adalah akan terjadi anomali dalam insert, update, dan delete. Hal ini
menyebabkan beberapa fungsi Dml Dalam Sql tidak
dapat berjalan dengan baik. Sebagai contoh jika ingin menghapus penerbit maka
data judul buku akan ikut terhapus begitu juga jika ingin menghapus peminjam,
maka data penerbit dan buku yang harusnya tidak terhapus akan ikut hilang.
First Normal Form (1NF)
Bentuk normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah database, berikut adalah fungsi dari bentuk normal pertama ini.
Bentuk normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah database, berikut adalah fungsi dari bentuk normal pertama ini.
· Menghilangkan duplikasi kolom dari tabel yang sama.
· Buat tabel terpisah untuk masing-masing kelompok data terkait dan
mengidentifikasi setiap baris dengan kolom yang unik (primary key).
Contoh Normalisasi Database 1NF
ada intinya bentuk normalisasi 1NF ini mengelompokkan beberapa tipe data atau kelompok data yang sejenis agar dapat dipisahkan sehingga anomali data dapat di atasi. Contoh adalah ketika kita ingin menghapus, mengupdate, atau menambahkan data peminjam, maka kita tidak bersinggungan dengan data buku atau data penerbit. Sehingga inkonsistensi data dapat mulai di jaga.
Second normal form (2NF)
Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF, berikut adalah beberapa fungsi normalisasi 2NF.
Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF, berikut adalah beberapa fungsi normalisasi 2NF.
· Menghapus beberapa subset data yang ada pada tabel dan menempatkan
mereka pada tabel terpisah.
· Menciptakan hubungan antara tabel baru dan tabel lama dengan
menciptakan foreign key.
· Tidak ada atribut dalam tabel yang secara fungsional bergantung pada
candidate key tabel tersebut.
Contoh normalisasi database bentuk 2NF
Contoh di atas kita
menggunakan tabel bantuan yaitu tabel transaksi, pada intinya bentu kedua ini
adalah tidak boleh ada field yang berhubungan dengan field lainnya secara
fungsional. Contoh Judul Buku tergantung dengan id_Buku sehingga dalam bentuk
2NF judul buku dapat di hilangkan karena telah memiliki tabel master
tersendiri.
Third Normal Form (3NF)
Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan
seluruh atribut atau field yang tidak berhubungan dengan primary key. Dengan
demikian tidak ada ketergantungan transitif pada setiap kandidat key. Syarat
dari bentuk normal ketiga atau 3NF adalah :
·
Memenuhi semua persyaratan dari bentuk normal kedua.
·
Menghapus kolom yang tidak tergantung pada primary key.
Contoh Normalisasi Database Bentuk 3NF
Tidak semua kasus atau tabel dapat kita sesuaikan dengan berbagai bentuk normalisasi ini, untuk contoh 3NF kita akan mengambil contoh dari tabel order.
Normalisasi Database
Bentuk 3NF
Pada tabel pertama di atas, apakah semua kolom sepenuhnya tergantung
pada primary key? tentu tidak, hanya saja ada satu field yaitu total yang
bergantung pada harga dan jumlah, total dapat dihasilkan dengan mengalikan
harga dan jumlah. Bentuk 3NF dalam tabel di atas dapat dilakukan dengan
membuang field Total.
Bentuk SQL
SELECT ORDERID, HARGA,
JUMLAH, TOTAL FROM ORDER
Menjadi
SELECT ORDERID,
HARGA*JUMLAH AS TOTAL FROM ORDER
BCNF Boyce–Codd normal form
Merupakan sebuah teknik normalisasi database yang sering disebut
3.5NF, memiliki hubungan yang sangat erat dengan bentuk 3NF. Pada dasarnya
adalah untuk menghandle anomali dan overlooping yang tidak dapat di handle
dalam bentuk 3NF. Normalisasi database bentuk ini tergantung dari kasus yang
disediakan, tidak semua tabel wajib di normalisasi dalam bentuk BCNF.
Tidak ada komentar:
Posting Komentar