Model Relasional Part-3
2 Review Pertemuan 5 ► Tahap implementasi basis data merupakan upaya untuk membangun basis data fisik yang ditempatkan dalam memori sekunder dengan bantuan DBMS yang kita pilih ► Tahap implementasi basis data diawali dengan melakukan transformasi dari model data yang telah selesai dibuat ke dalam skema/struktur basis data sesuai dengan DBMS yang kita pilih ► Secara umum, sebuah diagram ER akan direpresentasikan menjadi sebuah basis data secara fisik
3 Pendahuluan Tujuan Utama Perancangan ► Mengelopokkan attribut kedalam suatu relasi untuk meminimisasi informasi yang berulang ► Mengurangi Jumlah Space yang dibutuhkan ► Memudahkan pengembangan aplikasi ► Implikasinya adalah performansi lambat
4 Normalisasi ► Suatu Teknik/Cara yang digunakan untuk menganalisa relasi berdasarkan pada primary key (atau Candidate key dalam kasus BCNF) dan ketergantungan secara fungsional. ► Pertama diusulkan oleh E.F Codd (1972)
5 Bentuk Normalisasi ► Normal I ► Normal II ► Normal III
6 Informasi yang redundan n Keanehen Update Data Mhs(Nip, Nama, alamat, Rt, Rw, KodeKlrh, NamaKlrh, NamaKcmt, KodeKcmt, NamaKcmt, KodeKab, NamaKab) Kelurahan(KodeKlrh, NamaKlrh, KodeKcmt, NamaKcmt, KodeKab, NamaKab) Kecamatan(KodeKcmt, NamaKcmt, KodeKab, NamaKab) Kabupaten(KodeKab, NamaKab)
7 Informasi yg redundan ► Terjadi pada skema relasi Mhs, Kelurahan dan Kecamatan ► Mhs terjadi pengulangan informasi untuk attribut NamaKlrh, NamaKcmt, KodeKcmt, NamaKcmt, KodeKab, NamaKab) ► Skema Kelurahan terjadi pengulangan informasi NamaKcmt, KodeKab, NamaKab) ► Skema Kecamatan terjdi pengulangan informasi, KodeKab, NamaKab
8 Insertion Anomalies ► Pada skema relasi Mhs, tdk dapat melakukan entry kelurahan saja, kecamatan saja, atau kabupaten saja ► Pada skema relasi Kelurahan tdk dapat melakukan entry kecamatan saja atau kabupaten saja ► Pada skema relasi kecamatan tdk dapat melakukan entry data kabupaten saja
9 Deletion Anomalies ► Delete data kelurahan akan berakibat
10 Modification anomalies ► Perubahan untuk data pada skema kabupaten, harus mengubah data pada skema kecamatan, kelurahan dan Mhs ► Perubahan data pada skema kecamatan haarus mengubah data pada skema kelurahan dan Mhs ► Begitu juga yang lainnya
11 Functional Dependencies ► Menggambarkan relasi antar attribut dalam satu skema relasi ► Jika A dan B adalah attribut dari skema relasi R, B bergantung secara fungsional terhadap A, dinotasikan dengan A B, Jika masing-masing nilai A dalam Skema relasi R diasosiasikan secara eksak terhadap satu nilai B dalam skema relasi R
12 Contoh FD (Functional Dependencies) ► Misalkan skema relasi Mhs(Nim, Nama, alamat, RT, RW) ► Nama, Alamat, RT, RW bergantung secara fungsional terhadap NIM ► Nim Nama, alamat, Rt, Rw ► Dg mengetahui Nim, maka akan diketahui Nama, alamat, Rt dan Rw nya
13 Bentuk Normal Pertama (1NF) ► UNF (Unnormalized Form) adalah sebuah tabel yang meuat satu atau lebih “repeating Group” ► 1NF adalah sebuah relasi
14 Contoh Unnormalized
15 BENTUK NORMAL I ► KHS(NPM, NAMA, JURUSAN, FAKULTAS, KODEMK, NAMAMK, SKS, NILAI, THNAJARAN, SEMESTER, NIPKAJUR, NAMAKAJUR)
16 HASIL NORMAL I
17 KELEMAHAN NORMAL I ► TERJADI PENGULANGAN NILAI ► UPDATING UNOMALIES (INSERT, EDIT DAN MODIFY)
18 KELEMAHAN DLM INSERT ► INSERT DATA MATAKULIAH SAJA TDK BISA ► INSERT DATA JURUSAN SAJA JUGA TDK DAPAT ► INSERT DATA JURUSAN SAJA TDK DAPAT ► INSERT DIATAS DPT DILAKUKAN, JIKA ADA TRANSAKSI
19 KELEMAHAN PADA DELETE ► DELETE MATAKULIAH BASIS DATA PADA RECORD KE 4 MENYEBABKAN INFOIRMASI TENTANG BASIS DATA AKAN HILANG ► TERMASUK JIKA MELAKUKAN DELETE YANG LAIN
20 KELEMAHAN PADA MODIFY ► ANDAI SAJA MATAKULIAHJ DIIKUTI OLEH 100 MHS, MAKA JIKA INGIN MENGGANTI MATAKULIAH BASIS DATA MENJADI MANAJEMEN BASIS DATA, MAKA KITA HARUS MELAKUKAN PERUBAHAN 100 RECORD ► CONTOH LAIN KESALAHAN NAMA JURUSAN AKAN DIGANTI, MAKA KITA HRS MENGGANTI SEMUA RECORD TERKAIT
21 FULL FD & PARTIAL FD ► FULL FD MENGINDIKASI JIKA A DAN B ATTRIBUT DARI SUATU RELASI. B BERGANTUNG PENUH SECARA FUNGSIONAL TERHADAP A, NAMUN TDK PADA SEMUA SUBSET A ► PARTIAL FD
22 BENTUK NORMAL 2 ► SUATU RELASI BENTUK NORMAL PERTAMA DAN SETIAP NON PRIMARY KEY ATTRIBUT BERGANTUNG PENUH SECARA FUNGSIONAL PADA PRIMARY KEY
23 HASIL NORMAL 2 ► KHS(NPM, KODEMK, NILAI, THNAJARAN, SEMESTER) ► MATAKULIAH(KODEMK, NAMAMK, SKS) ► MAHASISWA(NPM, NAMA, KODEJUR) ► JURUSAN(KODEJUR, NAMAJUR, KODEFAK, NIPKAJUR, NAMAKAJUR) ► FAKULTAS(KODEFAK, NAMAFAK)
24 KELEMAHAN PADA NORMAL 2 ► ADANYA TRANSITIVE DEPENDENCY ► TRANSITIVE DEPENDENCY, JIKA A B DAN B C, MAKA BERLAKU A C
25 KELEMAHAN PADA KASUS ► TERJADI PADA SKEMA RELASI JURUSAN KODEJUR NAMAJUR, KODEFAK, NIPKAJUR, NAMAKAJUR KODEJUR NAMAJUR, KODEFAK, NIPKAJUR, NAMAKAJUR NIPKAJUR NAMAKAJUR NIPKAJUR NAMAKAJUR ► SEHINGGA HARUS DIPECAH
26 BENTUK NORMAL 3 ► KHS(NPM, KODEMK, NILAI, THNAJARAN, SEMESTER) ► MATAKULIAH(KODEMK, NAMAMK, SKS) ► MAHASISWA(NPM, NAMA,KODEDJUR) ► JURUSAN(KODEJUR, NAMAJUR, KODEFAK, NIPKAJUR) ► DOSEN(NIP, NAMA) ► FAKULTAS(KODEFAK, NAMAFAK)
27 Summary ► Normalisasi adalah Suatu Teknik/Cara yang digunakan untuk menganalisa relasi berdasarkan pada primary key dan ketergantungan secara fungsional. ► Normalisasi dibagi menjadi bentuk normal I, bentuk normal II, bentuk normal III, dan BCNF ► Functional dependencies menggambarkan relasi antar attribut dalam satu skema relasi
28 Soal latihan ► Periksalah tabel di bawah ini, apakah sudah memenuhi bentuk normal I, II, III, dan BCNF ► Jika belum ubahlah tabel tersebut sehingga memenuhi keempat bentuk normal di atas !
29
30 REFERENSI ► Referensi Wajib: Raghu Ramakhrisnan, Johannes Gehrke, “Database Management System” 6th Edition, Mc Graw Hill,2006 (chapter : 3) ► Referensi Tambahan/dianjurkan: David M.Kroenke, Database Concepts 4th Edition, Prentice Hall 2004