Halaman

Sabtu, 29 Desember 2012

Normalisasi dalam Basis data



NAMA           : RUPINTAMALA
KELAS          : SI3B
TUGAS          : SISTEM BASIS DATA


NORMALISASI

Proses memecah tabel tunggal menjadi beberapa tabel yang saling berhubungan disebut normalisasi. Normalisasi adalah suatu proses untuk mengubah suatu tabel yang memiliki  masalah tertentu  ke dalam dua buah tabel atau lebih, yang tidak lagi memiliki masalah tersebut (Abdul Kadir, 2002: 52). Masalah tersebut biasanya merupakan suatu ketidakkonsistenan (tidak normal) apabila dilakukan penghapusan (delete), pengubahan (update) dan pembacaan (retrieve) pada suatu basis data. sumber: http://blog.re.or.id/normalisasi.htm
Normalisasi adalah proses pengelompokan atribute-atribute dari suatu relasi sehingga membentuk WELL STRUCTURE RELATION.
WELL STRUCTURE RELATION adalah sebuah relasi yang jumlah kerangkapan datanya sedikit (minimum Amount Of Redundancy), serta memberikan kemungkinan bagi user untukmelakukan INSERT, DELETE, dan MODIFY terhadap baris-baris data pada relation tersebut, yang tidak berakibat terjadinya ERROR atau INKONSESTENSI DATA, yang disebabkanolehoperasi–operasitersebut.

ANOMALI merupakan penyimpangan-penyimpangan atau Error atau inkonsistensi data yang terjadi pada saat dilakukan proses insert, delete maupun modify.
Tujuan normalisasi
§  Mengatur data dalam kelompok-kelompok sehingga mempermudah dalam penanganan data.
§  Menjamin perawatan data
§  Untuk menghilangkan kerangkapan data
§  Untuk mengurangi kompleksitas
§  Untuk mempermudah pemodifikasian data dll.
Manfaat normalisasi
§  Meminimalkan terjadinya anomaly pada operasi tuple/record
§  Meminimalkan resiko data yang tidak konsisten
§  Memaksimalkan stabilitas struktur data dll.
Proses Normalisasi
proses normalisasi juga digunakan pada beberapa operasi yang berhubungan dengan data record yaitu :
1) operasi penambahan ( insert )
2) operasi penghapusan ( delete )
3) operasi pengubahan ( update )
4) operasi pembacaan data
Data diuraikan dalam bentuk tabel, selanjutnya dianalisiberdasarkan persyaratan tertentu ke beberapa tingkat.Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yanglebih sederhana sampai memenuhi bentuk yang optimal.
Istilah normalisasi dapat disederhanakan menjadi memecah relasi menjadi beberapa tabel untuk mendapat database yang optimal
Istilah penting dalam teknik normalisasi
§  Field / atribut kunci  Setiap file selalu terdapat kunci dari file berupa satu field atau satu field yang dapat mewakili record.
§  Candidate key adalah Kumpulan atribut minimal yang secara unik mengidentifikasi sebuah baris fungsinya sebagai calon primary key.
§  Composite key adalah Kunci kandidat yang berisi lebih dari satu atribut
§  Primary key adalah Candidate key yang dipilih untuk mengidentifikasi baris secara unik
§  Alternate key adalah Candidate key yang tidak dipilih sebagai primary key
§  Foreign key adalah Key di tabel lain yang terhubung dengan primary key pada sebuah tabel
Misalkan terdapat sebuah tabel siswa dengan field sebagai berikut
Atribut kunci      -> NIS
Candidate key   -> NIS dan Nama
Composit key    -> Nama bisa dibagi menjadi nama depan dan nama belakang Alamat bisa dibagi menjadi jalan, kota, propinsi
Primary key        -> NIS
Alternate key    -> Nama
Foreign key        -> NIS pada tabel nilai merupakan foreign key
Ketergantungan fungsi
Diberikan sebuah relasi R, atribut Y dari R adalah bergantung fungsi pada atribut X dari R jika dan hanya jika setiap nilai X dalam R punya hubungan dengan tepat satu nilai Y dalam R (dalam setiap satu waktu)
Bentuk-bentuk normalisasi
proses normalisasi tabel secara umum dibagi dalam 5 tahap sehingga dikenal
bentuk-bentuk tabel normal sesuai dengan tahapan normalisasi yang telah
dilakukan yaitu bentuk normal pertama, kedua, ketiga, keempat, dan
kelima.

1.      Bentuk tidak normal
adalah kumpulan data yang tidak disimpan tidak mempunyai format tertentu, data disimpan apa adanya sesuai masukan yang diperoleh dalam bentuk ini data mungkin saja tidak lengkap tidak konsisten / terduplikasi.

2.      Bentuk normalisasi pertama (1NF)
Dikenakan pada tabel yang sama sekali belum ternomalisasi. Tabel yang belum ternomalisasi adalah tabel yang mempunyai atribut berulang. Contoh : terdapat suatu data sebagai berikut :
NIP
Nama
Jabatan
Keahlian
Lama Kerja
107
Ilham
Analis Senior
Cobol
6



Oracle
1
109
Ryan
Analis Junior
Cobol
2



C++
2
120
Fika
Programmer
Dbase
3



Sybase
1



Cobol
1

Pada contoh di atas, keahlian mempunyai atribut yang berulang. Untuk itu akan dibentuk ke normal 1NF. Syarat Normal 1NF adalah suatu relasi dikatakan dalam bentuk normal pertama jika dan hanya jika setiap atribut bernilai tunggal dalam satu baris.

NIP
Nama
Jabatan
Keahlian
Lama Kerja
107
Ilham
Analis Senior
Cobol
6
107
Ilham
Analis Senior
Oracle
1
109
Ryan
Analis Junior
Cobol
2
109
Ryan
Analis Junior
C++
2
120
Fika
Programmer
Dbase
3
120
Fika
Programmer
Sybase
1
120
Fika
Programmer
Cobol
1
Tabel d i atas sudah memenuhi bentuk normal 1NF

3.      Bentuk Normal 2NF
Bentuk ini didefinisikan berdasarkan dependensi fungsional dengan syarat adalah :
v  Berada pada bentuk normal pertama
v  Semua atribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci primer
Contoh :
v  Nama  dan jabatan mempunyai dependensi fungsional terhadap NIP
v  Lama mempunyai dependensi fungsional terhadap NIP dan keahlian
v  Bentuk tabelnya adalah : NNJ (NIP, Nama, Jabatan) dan NKL (NIP, Keahlian, Lama Kerja)

NIP
Nama
Jabatan
107
Ilham
Analis Senior
109
Ryan
Analis Junior
120
Fika
Programmer

NIP
Keahlian
Lama Kerja
107
Cobol
6
107
Oracle
1
109
Cobol
2
109
C++
2
120
Dbase
3
120
Sybase
1
120
Cobol
1

4.      Bentuk Normal 3NF
v    Berada dalam bentuk normal 2 NF
v    Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci primer
Contoh di atas sudah memenuhi normal 3NF karena : Tidak memiliki dependensi transitif, yaitu
NIP                  {Nama, Jabatan}
{NIP, Keahlian}                Lama Kerja

5.      Bentuk Normal boyce-codd (BCNF)
Bentuk ini dilakukan jika dan hanya jika semua penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik). BCNF merupakan perbaikan dari 3NF. Relasi yang memenuhi BCNF pasti memenuhi 3NF tetapi tidak sebaliknya. Contoh : Tabel SKT
Siswa
Kursus
Tutor
Anwar
Bhs. Perancis
Pierre
Anwar
Bhs. Inggris
Richard
Budi
Bhs. Perancis
Pierre
Cecep
Bhs. Inggris
Suzanne

Tabel di atas adalah suatu relasi yang memenuhi 3NF tetapi tidak memenuhi BCNF. Relasi diatas didasarkan oleh fakta :
v  Seorang siswa dapat mengambil sejumlah kursus
v  Setiap tutor hanya mengajar satu kursus bahasa
v  Setiap siswa dalam satu kursus diajar oleh satu tutor
v  Suatu kursus bis dipegang oleh beberapa tutor
Pada keadaan tersebut di atas dapat digambarkan sebagai berikut : Siswa & Kursus  dan Siswa & Tutor.

Memenuhi bentuk 3NF karena tidak ada dependensi transitif pada relasi tersebut. Tetapi tidak memenuhi BCNF karena adanya determinan Tutor yang berdiri sebagai kunci kandidat. Realsi SKT menyebabkan anomali karena baris Cecep dihapus maka Suzane sebagai tutor jug akan terhapus. Cara konversi dari 3NF ke BCNF adalah :
v  Carilah semua penentu
v  Bila terdapat penentu yang bukan kunci kandidat, maka :
ü  Pisahkan relasi tersebut
ü  Buat penentu sebagai kunci primer
ü  Dekomposisi berupa : ST (Siswa, Tutor) dan TK (Tutor, Kursus)

Siswa
Tutor
Anwar
Pierre
Anwar
Richard
Budi
Pierre
Cece
Suzanne
Tutor
Kursus
Pierre
Bhs.Perancis
Richard
Bhs. Inggris
Suzanne
Bhs. Inggris


0 komentar:

Posting Komentar