Normalisasi
Anomali
Anomali
merupakan proses pada basisdata yang memberikan efek samping yang tidak
diharapkan, Anomali ini terjadi karena struktur tabel yang kita buat memiliki
masalah. Masalah ini akan meningkatkan kompleksitas daata dan menyulitkan dalam
pemodifikasian data itu sendiri. Sehingga harus dilakukan cara-cara yang
disebut dengan normalisasi. Terdapat 3 jenis anomali data antara lain
Anomali
update: Anomali update merupakan masalah yang timbul saat terjadi perubahan
terhadap sejumlah data yang mubazir, tetapi tidak seluruhnya diubah. Contoh :
Jika PT. Kencan pindah ke Surabaya, kemudian perubahan data hanya dilakukan
pada data pertama, sedangkan data yang lain tetap, maka akan terjadi
inkonsistensi data pada PT. Kencana. Jika hasil data setelah diubah menjadi
seperti tabel nomor 2, maka orang akan bingung apakah PT. Kencana ada dua ?
satu di bandung dan satu lagi di surabaya, padahal PT. Kencana hanya ada satu
dan sudah pindah tempat ke Surabaya.
Solusi
untuk anomali update dalam kasus ini adalah supplier dan kota dijadikan dalam
satu tabel dalam tabel pertama, dengan kode_supplier sebagai primary keynya.
Kemudian barulah kode_suplier dipakai untuk melengkapi tabel kedua. Dengan cara
seperti ini kita hanya perlu merubah kota pada tabel pertama, dan otomatis
semua data akan berubah.
Anomali Penambahan : Anomali penambahan merupakan masalah yang timbul saat melakukan penambahan data. Namun data itu adalah Primary Key atau elemen kunci. Contohnya seperti tabel dibawah menunjukkan bahwa jenis kursus bahasa hanya ada 3, dan kursus bahasa lain tidak akan dapat ditambah kecuali jika ada siswa yang mengambil kursus tersebut
Untuk penyelesaian masalah ini tabel perlu dipecah seperti kasus anomali penyisipan. Contoh tabelnya seperti dua tabel dibawah, hanya saja pada tabel kursus ditambah dengan biaya.Untuk penyelesaian masalah ini tabel perlu dipecah seperti kasus anomali penyisipan. Contoh tabelnya seperti dua tabel dibawah, hanya saja pada tabel kursus ditambah dengan biaya
Normalisasi
Normalisasi merupakan proses menstrukturkan /mendekomposisi data dalam cara-cara tertentu untuk mencegah timbulnya permasalahan pengolahan data dalam basis data. Permasalahan yang di maksud adalah berkaitan dengan penyimpangan-penyimpangan (anomalies) yang terjadi akibat adanya kerangkapan data dalam relasi dan in-efisiensi pengolahan
Tujuan Normalisasi
data
- Untuk menghilangkan kerangkapan data
- Untuk mengurangi kompleksitas
- Untuk mempermudah pemodifikasi data
Proses Normalisasi
- Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertenty ke beberapa tingkat
- Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.
Level Normalisasi
Level
normalisasi atau sering di sebut sebagai bentuk normal suatu relasi, dijelaskan
berdasarkan kriteria tertentu pada bentuk normal. Bentuk normal yang di kenal
hingga saat ini meliputi bentuk 1NF,2NF,3NF,BCNF,4NF,5NF,DKNF, dan RUNF. Secara
berturut-turut masing-masing level normal tersebut akan di bahas dari bentuk
tidak normal yang dari tahap 1NF hingga ke tahap normalisasi yang sudah sesuai
dengan syarat bentuk normal suatu data.
Relasi
bentuk tidak normal (Un Normalized Form/UNF)
Relasi bentuk
tidak normal merupakan relasi-relasi yang dirancang tanpa mengindahkan batasan
dalam definisi basis data dan karakteristik RDBM. Bentuk ini harus dihindari
dalam perancangan relasi dalam basis data.
Relasi UNF
mempunyai kriteria antara lain :
- Jika relasi mempunyai bentuk non flat file (dapat terjadi akibat data disimpan sesuai dengan kedatangannya, tidak memiliki struktur tertentu, terjadi duplikasi atau tidak lengkap).
- Jika ralasi memuat set atribut berulang (non single value).
- Jika relasi memuat atribut non atomic value
Relasi
bentuk normal pertama (First Normal Form/ 1NF)
Suatu
relasi dapat disebut dengan 1NF apabila memenuhi kriteria sebagai berikut:
- Jika seluruh atribut dalam relasi bernilai atomic (atomic value)
- Jika seluruh atribut dalam relasi bernilai tunggal (single value)
- Jika relasi tidak memuat set atribut berulang
- Jika semua record mempunyai sejumlah atribut yang sama
Artinya
suatu data dapat dikatakan normal apabila setiap atribut yang dimilikinya
memiliki satu dan hanya satu nilai. Apabila ada atribut yang memiliki nilai
lebih dari satu, atribut tersebut adalah kandidat untuk menjadi entitas
tersendiri.
Permasalahan
dalam 1NF adalah sebagai berikut:
- Tidak dapat menyisipkan informasi persial
- Terhapusnya informasi ketika menghapus sebuah record
- Pembaruan atribut non-key mengkibatkan sejumlah record harus diperbarui
Mengubah
relasi UNF menjadi 1NF dapat dilakukan dengan cara sebagai berikut:
- Melengkapi nila-nilai dalam atribut
- Mengubah struktur relasi
Bentuk Normal
Kedua (Second normal Form/ 2NF)
Relasi
disebut 2NF apabila memenuhi kriteria sebagai berikut:
- Jika memenuhi kriteria 1NF
- Jika semua aitribut nonkunci FD pada PK
model data yang dapat dikatakan memenuhi bentuk normal kedua apabila ia memenuhi bentuk normal pertama dan setiap atribut non-identifier sebuah entitas bergantung sepenuhnya hanya pada semua identifier entitas tersebut.
Pemasalahan
dalam 2NF adalah sebagai berikut:
- Kerangkapan data (data redundancy)
- Pembaharuan yang tidak benar dapat menimbulakan inkonsistensi data (data inconsistency)
- Proses pembaruan data efisien
- Penyimpangan pada saat penyisipan, penghapusan, dan pembaharuan
Kriteria
tersebut mengindikasikan bahwa di antaraatribut dalam 2NF masih mungkin
mengalami TDF. Selain itu, relasi 2NF menuntut telah didefinisikan atribut PK
dalam relasi.
Untuk mengubah
relasi 1NF menjadi bentuk 2NF dapat dilakukan dengan mengubah struktur relasi
dengan cara:
- Identifikasi FD relasi 1NF (jika perlu gambarkan diagram ketergantungan datanya)
- Berdasarkan informasi tersebut, dekomposisi relasi 1NF menjadi relasi-relasi baru sesuai FD-nya. Jika menggunakan diagram maka simpul-simpul yang berada pada puncak diagram ketergantungan data bertindak sebagai PK pada relasi baru.
Bentuk Normal
Ketiga(Third Normal Form/ 3NF)
Suatu
relasi disebut sebagai 3NF jika memenuhi kriteria sebagai berikut:
- Jika memenuhi kriteria 2NF.
- Jika setiap atribut nonkunci tidak TDF (non tramsitive dependenc) terhadap PK.
Sebuah
model data dikatakan memenuhi bentuk normal ketiga apabila ia memenuhi bentuk
normal kedua dan tidak ada satupun atribut non-identifying (bukan
pengidentifikasi unik) yang bergantung pada atribut non-identifying lain.
Apabila ada, pisahkan salah satu atribut tersebut menjadi entitas baru, dan
atribut yang bergantung padanya menjadi atribut entitas baru tersebut.
Permasalahan
dalam 3NF adalah keberadaan penentu yang tidak merupakan bagian dari PK
menghasilkan duplikasi rinci data pada atribut yang berfungsi sebagai FK
(duplikasi berbeda dengan kerangkapan data).
Mengubah
relasi 2NF menjasi bentuk 3NF dapat dilakukan dengan mengubah struktur relasi
dengan cara sebagai berikut:
- Identifikasi TDF relasi 2NF (jika perlu gambarkan diagram ketergantungan datanya)
- Berdasarkan informasi tersebut, dekomposisi relasi 2NF menjadi relasi-relasi baru sesuai TDF-nya. Jika menggunakan diagram maka simpul-simpul yang berada pada puncak diagram ketergantungan data bertindak sebagai PK pada relasi baru.
Misalkan:
Terhadap
relasi R dengan sifat sebagai berikut:
a) R=(A,B,C) dengan PK=A
b) FD:R.B?R.C
Maka
relasi R perlu di dekomposisi menjasi relasi-relasi R1 dan R2, yaitu:
a) R1=(B,C)
b) R2=(A,B), FK: B references R1
Comments
Post a Comment