Dependensi. Disebarluaskan oleh Abdul Aziz Efendy

dokumen-dokumen yang mirip
Kontrak Kuliah. Functional Dependencies. Edi Sugiarto, S.Kom, M.Kom

Contents. Normalisasi. Bentuk Normalisasi. Dependency. Status Kunci (Key) Dekomposisi

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

BASIS DATA. Desain Database dan Normalisasi. Fakultas Ilmu Komputer UDINUS

Bagian 4 Normalisasi. Kuliah Basis Data Pra S2 Ilmu Komputer - FMIPA Drs. Agfianto Eko Putra, M.Si.

Menurut E.F. Codd: Normalisasi dipakai untuk membuat struktur tabel (relasi) dalam basis data mengurangi kemubaziran data; Kadang dipakai sebagai

20 Bhs.Jepang Misalnya akan dibuka kursus baru yaitu Bhs.Jerman dengan biaya akan tetapi belum ada seorangpun yang ikut kursus ini, shg

SISTEM BASIS DATA AUB SURAKARTA

Perancangan Basis Data

Normalisasi Lanjut. I. Review Normalisasi

NORMALISASI UNTUK BASIS DATA RELASIONAL

PERTEMUAN 9. Penyempurnaan Skema dan Bentuk-bentuk Normal

Pertemuan 5 TEHNIK NORMALISASI

Normalisasi 1 Functional Dependency

SISTEM BASIS DATA. Pertemuan 9. Functional Dependencies. Copyright 2007 Ramez Elmasri and Shamkant B. Navathe.

Dibuat oleh: Tim Pengajar Basis Data

Normalisasi Bagian I

Emp_Dept(EmpName, SSN, Bdate, Address, DeptNumber, DeptName, DeptMngSSN) Emp_Proj(SSN,ProjNumber, Hours, EmpName, ProjName, ProjLoc)

Teknik Normalisasi. Normalisasi

Kontrak Kuliah. Bentuk-Bentuk Normalisasi. Edi Sugiarto, S.Kom, M.Kom

NORMALISASI. By Mrs Imana Malia Kondou

Perancangan Database Bagian II (Normalisasi( Normalisasi) TUJUAN PEMBELAJARAN

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

PERTEMUAN 6. Normalisasi Database (Conoly-chap 14) (Ramakisman -chap 15)

Pertemuan 5 TEHNIK NORMALISASI

Database System 4 Normalization

Teknik Normalisasi. Normalisasi adalah proses pengelompokan atribute-atribute dari suatu relasi sehingga membentuk WELL STRUCTURE RELATION.

PART 2: 1. Langkah Langkah Normalisasi 2. Bentuk Bentuk Normal 1 st NF, 2 nd NF, 3 rd NF, BCNF Dan bentuk-bentuk normal lainnya 3.

NORMALISASI (1) E.F Codd,1970. Normalisasi dilakukan terhadap desain tabel yang sudah ada untuk: 1/28/2012 1/28/2012

Normalisasi Donny Yulianto, S.Kom

Normalisasi Data. Author : Minarni, S.Kom.,MM

ANOMALI. Terlihat ada ketidak konsistenan. Fakta pertama menyatakan bahwa pemasok citra berlokasi di Bogor, tetapi fakta kedua menyatakan di Bandung.

Copyright 2005 PENS-ITS C H A P T E R

Pertemuan VI Functional Dependency Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

Normalisasi Database

diketahui table R=(A,B,C,D,E,F) dimana telah memenuhi normalisasi 1 dan Diketahui FD sebagai berikut :

Normalisasi. Didi Supriyadi, S.T., M.Kom Pertemuan ke-6

Konsep Normalisasi dan Anomali Tabel

NORMALISASI. Dr.Budi Setiyono, MT

Pertemuan 7-8 NORMALISASI

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

DESAIN DATABASE DAN NORMALISASI

C H A P T E R 5-8. Normalisasi Database. Arif Basofi, S.Kom, MT.

Modul 9 : Normalisasi 1st NF sampai dengan BCNF

PART 2: 1. Langkah Langkah Normalisasi 2. Bentuk Bentuk Normal 1 st NF, 2 nd NF, 3 rd NF, BCNF Dan bentuk-bentuk normal lainnya. 3.

PERTEMUAN 6 TEKNIK NORMALISASI

Copyright 2005 PENS-ITS C H A P T E R. Normalisasi Database

Functional Dependency And Normalization

NORMALISASI (2) Beberapa Bentuk Normal yang penting: Bentuk Normal Pertama (1 st Normal Form) Bentuk Normal Ke-2 (2 nd Normal Form)

NORMALISASI. Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

di definisikan hanya dengan memperhatikan functional dependencies dan key constrains

PERANCANGAN BASIS DATA

ANOMALI. Anomali ada 3 jenis yaitu: Anomali pengubahan Anomali penyisipan Anomali penghapusan

Normalisasi. Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.

C H A P T E R. Copyright 2005 PENS-ITS

BAB 6 BENTUK BENTUK NORMALISASI

BAB V. dimengerti, mudah dipelihara, mudah memprosesnya, dan mudah untuk dikembangkan sesuai kebutuhan baru

FUNCTIONALLY DEPENDENT DAN FUNCTIONALLY DETERMINES

NORMALISASI PRAKTIKUM BERKAS DAN BASIS DATA 2010/2011. Rizki Arif Firdaus

BAB IV PERANCANGAN BASIS DATA RELASIONAL

Desain Sistem Basis Data. 1. Struktur Basis Data 2. Normalisasi Data 3. ERD (entity relationship diagram)

Basis Data 1 - TIS3333

BAB 3 ANALISIS DAN PERANCANGAN. menentukan dan mengungkapkan kebutuhan sistem. Kebutuhan sistem terbagi menjadi

Normalisasi 1 Normalisasi 2 Normalisasi 3 BCNF

TEKNOLOGI KOMUNIKASI DAN INFORMATIKA UNIVERSITAS NASIONAL 2008 DKNF 5NF 4NF BCNF 3NF 2NF 1NF

NORMALISASI BASISDATA 2

REKOMENDASI PRIMARY KEY SUATU TABEL MELALUI PEMERIKSAAN DUPLIKASI DATA

NORMALISASI DAN TUGAS PRAKTEK

NORMALISASI DAN TUGAS PRAKTEK

NORMALISASI FAKULTAS TEKNOLOGI KOMUNIKASI DAN INFORMATIKA UNIVERSITAS NASIONAL 2008 DKNF 5NF 4NF BCNF 3NF 2NF 1NF

OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

NORMALISASI BASIS DATA. Institut Teknologi Sumatera

Database desain juga termasuk diagram ER (Entity-hubungan model). Diagram ER adalah diagram yang membantu merancang database secara efektif dan

Desain Database. Dr. Khamami Herusantoso 1/107

Pertemuan VII Normalization (1) Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

MODUL 1 SEPUTAR PERANCANGAN DATABASE. 1.1 Entity-Relationship Model (ER Model) dan Entity Relationship Diagram (ERD)

MODEL RELASI DAN NORMALISASI DATABASE

Normalisasi. Normalisasi. Normalisasi. Tabel Universal. Tabel Universal 02/12/2010. (Pert. 8) Normalisasi

Pengampu : Agus Priyanto. STIKOM YOS SUDARSO PURWOKERTO Smart, Mastery, Innovative, Loving, Enterpreneurship

Copyright 2005 PENS-ITS C H A P T E R. Normalisasi 1NF

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Modul 8 : Relational Key dan Functional Dependency

Mata Kuliah : Matematika Diskrit Program Studi : Teknik Informatika Minggu ke : 2

BAB III ANALISIS SISTEM

NORMALISASI BASISDATA 1

CHAPTER 5 LEBIH LANJUT TENTANG DEPENDENSI DAN KUNCI RELASI

BAB III PERANCANGAN BASIS DATA DGN TEKNIK NORMALISASI

NORMAL FORM. Normalisasi Table sendiri terbagi atas bentuk normal ke 1 sampai bentuk normal ke 5. lebih jelasnya

BASIS DATA I/2011-GANJIL MODEL RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2011-GANJIL 1

BAB IV PENGUJIAN DAN ANALISIS

Normalisasi Basis Data

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

BAB III ANALISA DAN DESAIN SISTEM

Database Systems : A Practical Approach to Design, Implementation and. Dasar Perancangan & Implementasi Database Relasional Abdul Kadir

Cynthia Banowaty Pembimbing : Lely Prananingrum, S.Kom., MMSi

STK 572 Manajemen Data Statistik. Tim Dosen: Dr. Farit Muhammad Affendi Dr. Agus M Soleh

Soal Babak Penyisihan 7 th OMITS SOAL PILIHAN GANDA

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

P9 Normalisasi. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta

BASISDATA. Basis Data Secara Umum

Transkripsi:

Normalisasi dan Fungsional Dependensi STMIK Swadharma Disebarluaskan oleh Abdul Aziz Efendy

Normalisasi Standard dindustri adalah dlh3 rd Normal lf Form (NF) Anomali : Efek samping yang tidak diharapkan dalam basisdata Normalisasi menghilangkan Modification anomalies : Terjadi jika saat perubahan pada sejumlah data yang mubazir, tetapi tidak seluruhnya ikut berubah. b Deletion anomaly: Terjadi jika suatu tuple (baris) yang tidak terpakai di hapus dan akibatnya ada data lain yang ikut terhapus. Insertion anomaly: ay: Terjadi ejadjikapada saat penyisipan pa pada baris, terdapat elemen ee e (atribut) yang masih kosong dan elemen data tersebut menjadi kunci. Anomali dapat di hilangkan dengan memisah satu relasi menjadi dua atau lebih relasi, yang masing masing dalam tema yang berbeda dan unik. Memecah relasi menciptakan (menghasilkan) referential integrity constraints Normalisasi bekerja melalui kelas relasi yang dinamakan normal forms

Normalisasi (Definisi) Dipakai i untuk membuat Relasi idl dalam Basisdata id dengan tujuan mengurangi kemubaziran dt data.(e.f. (EFCodd) Juga dipakai sebagai perangkat verifikasi thd tabel yang dihasilkan metodologi lainnya. Mencegah penciptaan struktur tabel yang kurang atau mengurangi ketidak efisienan. Proses merubah suatu relasi yang bermasalah ke dalam dua atau lebih relasi yang tidak bermasalah (Kroenke). Masalah==Anomali

Integritas Disain database (Problems) Menghindari redundansi Menghilangkan ambiguitasitas Performance Akses Efisien dalam penyimpanan Maintainability Mudah di remajakan Mudah di sisipkan Mudah di hilangkan

Disain database (Good) Jika dilakukan k normalisasi i maka: Tetap dapat merepresentasikan Informasi Dekomposisi tetap menjaga integritas Informasi lain dalam elemen tidak hilang (lossy dan lossless) Dependency Preservation Good relation (no anomali), easy maintainance (update,inser,del), No Redundancy 3 rd NF or BCNF Minimalisasi Perulangan

Contoh Tabel Universitas StdSSN SSN StdClass OfferNo OffYear EnrGrade CourseNo CrsDesc S1 JUN O1 2006 3.5 C1 DB S1 JUN O2 2006 3.3 C2 VB S2 JUN O3 2006 31 3.1 C3 OO S2 JUN O2 2006 3.4 C2 VB Perkecualian utk penghilangan 2 kolom (StdCity and OffTerm) Kesalahan Typical pemula: menggunakan satu tabel utk seluruh database Anomali: PK: kombinasi dari StdSSN dan OfferNo Insert: Tdk dpt menyisipkan student baru tanpa enrolling pada offering (OfferNo bag dari PK) Update: perubahan pd desk. Course ; merubah tiap enrollment pada course Delete: hapus baris ke 3; info padacourse C3 hilang (lossy) Redundancies mudah di query: tanpa join Susah dirubah: dapat bekerja, tapi menyusahkan (dummy PK)

Modification Anomaly Examples Insertion Insert data lebih dari yang di inginkan Harus tahu student number dan offering number utk melakukaninsert lkk course baru Update Merubah multiple rows : merubah satu fakta Harus merubah 2 baris untuk merubah kelas student dari student S1 Deletion Menghapus baris menyebabkan fakta lain hilang Menghapus enrollment dari student S2 dalam offering O3 menyebabkan hilangnya informasi tentang offering O3 dan course C3

Update Anomali Pemasok Kota Barang Jumlah Dewi Jakarta Monitor 10 Candra Bandung ZIP 4 Fanda Jakarta Keyboard 5 Candra Bandung Mouse 25 Jika Candra berpindah kota di Bogor, maka seluruh nilai atribut kota milik pemasok Candra harus di rubah semua Pemasok Kota Barang Jumlah Dewi Jakarta Monitor 10 Candra Bogor ZIP 4 Fanda Jakarta Keyboard 5 Candra Bandung Mouse 25

Insert Anomali Kuliah Ruang Tempat Jarkom D.4.1 Gedung D SBD D.4.3 Gedung D Kalkulu s 1 D.4.5 Gedung E Sistem Pakar D.4.10 Gedung E AI D41 D.4.1 Gedung D Bagaimana menambahkan infromasi ruangan baru? Ruang ada di suatu gedung.

Delete Anomali NoSiswa Kursus Biaya 10 Inggris 60000 10 Prancis 80000 10 Mandarin 60000 25 Inggris 60000 20 Jepang 65000 Siswa no 10 yang ikut bahasa inggris dihapus?

Dependensi Konsep yang mendasari normalisasi pada relasi. Menjelaskan hubungan antar atribut atau secara khusus menjelaskan nilai atribut yang menentukan nilai atribut lainnya Fungsional Dependensi Fungsional Dependensi Sepenuhnya Fungsional Total Fungsional Tranfsitif

Fungsional Dependensi (FD) Konsep dasar Functional ldependency muncul saatnilai i atribut pertama (himpunan atribut) menentukan nilai pada atribut (himpunan atribut) yang kedua. Suatu Atribut Y mempunyai dependensi fungsional terhadap atribut X, JIKA DAN HANYA JIKA setiap NILAI X berhubungan dengan SEBUAH nilai i Y Notasi X Y (X secara fungsional menentukan Y) X==Penentu (determinan), Y==Tergantung (dependen) Contoh StdSSN > StdClass Ada setidaknya satu class bagi tiap student Tempatkan StdSSN dan StdClass sendri dalam tabel ang sama StdSSN merupakan candidate key

Contoh FD Pembeli Kota Barang Jumlah lh P1 Yogya B1 10 P1 Yogya B2 5 P2 Solo B1 7 P2 Solo B2 6 P2 Solo B3 6 P3 Semarang B3 7 P3 Semarang B4 6 Pembeli Kota {Pembeli,Barang} Jumlah {Pembeli, Barang} Kota {Pembeli,Barang} {Jumlah, Kota}

FD Lanj. Atribut di sebelah kiri FD disebut determinant SID DormName, Fee (CustomerNumber, ItemNumber, Quantity) Price PK adalah selalu suatu determinant, tetapi suatu determinant tidak selalu suatu PK. Apakah Candidate keys selalu suatu determinant?

FD lanj. X Y X (secara fungsional) menentukan Y X: left hand side (LHS) or determinan (penentu) Untuk semua nilai X, ada setidaknya paling banyak satu nilai Y Mirip dengan candidate keys. FD Trivial X Y jika Y X X X ; XY X X,Y X; XY Y X,Y Y; X,Y,Z X,Z; X,Y,Z X,Z; X,Y,Z X,Y,Z

FD Lanj. Diberikan α R and β R, maka FD adalah α ββ pada R, jika t i (α) adalah unik, dengan 1 i n adalah nilai pada index tuple/record ke i dan α adalah atribut t i (α)= t j (α), i j dan t i (β)= t j (β) A B C A B? t 1 4 C1 1 (A)= t 2 (A), ya t 1 (B) t 2 (B), tidak 1 5 C1 Maka A B 2 7 C2 A C? t 1 (A)= t 2 (A), ya T 1 (C)= t 2 (C), ya Maka A C

Contoh lain DiKetahui i R(A,B,C,D) A C Y C A N (A,B) C Y(unik) (A,B) B Y(unik) A B,? A D,? B D,? AB D,? A B C D A1 B1 C1 D1 A1 B2 C1 D2 A2 B2 C2 D2 A2 B3 C2 D3 A3 B3 C2 D4

Closure Set of FD Diberikan ik F berupa set of FD dipenuhi oleh lhr, dan X, Y, K mrp subset dari R. F (logically) implies X Y if setiap R memenuhi (semua FD dalam) F, R juga memenuhi X Y. Closure F, dinotasikan F+, adalah set dari FD yang diimplikasikan oleh F, dengan demikian F+ = {X Y F implies X Y}. Dengan kata lain bahwa Jika R memenuhi F, maka F+ merupakan set semua ALL FD yang dipenuhi oleh R.

F+: Contoh F = {AB C, C B} set darifd yang dipenuhi R(A, B, C). F+ = {A φ φ, A A, AB φ φ, AB A, AB B, AB C, AB AB, AB AC, AB BC, AB ABC, AC φ, AC A, AC B, AC C, AC AB, AC AC, AC BC, AC ABC,, ABC φ,abc A, ABC B, ABC C, ABC AB, ABC AC, ABC BC, ABC ABC, B φ, B B,BC φ, BC B, BC C, BC BC, C φ, C B, C C, C BC, φ φ }

Contoh F AB C union AB BCD decomp aug A D AB BD AB trans BCDE AB CDE aug D E BCD BCDE Jadi AB BD AB BCD AB BCDE dan AB Jadi, AB BD, AB BCD, AB BCDE, dan AB CDE adalah semua elemen dari F +

Candidate Key & Trivial FD F adalah set of FD yg dipenuhi R, dan K adalah candidate key dari R JIKA, K R berada dalam F+ (F implies K R); and, R. K Tidak ada X K, sdmk rupa shg X R juga berada dalam F+ (minimality). Suatu trivial FD X Y, jikay X. contoh: AB B, A φ, φ φ.

Penurunan FD dg Amstrong s Rules Rfl Reflexive Jika y xmakax y Augmentation Jika x y maka (x,z) (y,z) Transitive Jika x ydany zmakax z Decomposition Jika x (yz) x (y,z) maka x y dan x z Union Jika x ydanx zmakax (y,z) Psuedotransitive Jika x y dan (z,y) w maka (x,z) w jika x y Augmentation (x,z) (y,z) Jika (z,y) w Transitive z wdany w (x,z) w

FD Diagram dan List StdSSN StdClass OfferNo OffYear EnrGrade CourseNo CrsDesc S1 JUN O1 2006 3.5 C1 DB S1 JUN O2 2006 3.3 C2 VB S2 JUN O3 2006 31 3.1 C3 OO S2 JUN O2 2006 3.4 C2 VB Diagram StdSSN StdCity StdClass OfferNo OffTerm OffYear CourseNo CrsDesc EnrGrade StdSSN StdCity, StdClass LIST OfferNo OffTerm, OffYear, CourseNo, CrsDesc CourseNo CrsDesc StdSSN, OfferNo EnrGrade

Fungsional Dependensi Sepenuhnya Suatuatribut tib ty mempunyai dependensid fungsional sepenuhnya terhadap atribut X, JIKA : Y mempunyai FD thd X, dan Y tidak memiliki dependensi thd bagian dari X Contoh : Cust(kode,nama,kota,faks) maka tdpt : {kode,kota} faks Kode faks Irreducible dependen (dependensi yang tak dapat di bagi) atau full llfunctional ldependend atau fully dependen

Dependensi Total Suatu atribut Y mempunyai dependensi total terhadap X, JIKA : Y memiliki FD thd X, dan X mempunyai FD thd Y Notasi X Y Kode Nama Kota K1 Kartika Jakarta C1 Candra Bandung C2 Manda Jakarta Kode Nama

Dependensi Transitif Atribut Z mempunyai dependensi transitif terhadap X bila : Y memilikifd lk thd X Z memiliki FD thd Y Notasi X Z Y Kuliah Ruang Tempat Waktu Jarkom D.4.1 Gedung D Senin 1 SBD D43 D.4.3 Gd Gedung D Sl Selasa 2 Kalkulu s 1 D.4.5 Gedung E Rabu 2 Kuliah {ruang, waktu} Ruang tempat t Kuliah ruang tempat Sistem Pakar D.4.10 Gedung E Selasa 1

FD dalam Data StdSSN StdClass OfferNo OffYear EnrGrade CourseNo CrsDesc S1 JUN O1 2006 35 3.5 C1 DB S1 JUN O2 2006 3.3 C2 VB S2 JUN O3 2006 3.1 C3 OO S2 JUN O2 2006 34 3.4 C2 VB Buktikan bahwa tidak ada FD dengan melihat data 2 baris yang punya nilai sama pada X tetapi berbeda pada nilai Y Jawabdengan Lihat Data: Berguna pd saat menjelaskan pada user Ada tool yang otomatis dapat menghilangkan FD pada baris data diatas Contoh: OfferNo > StdSSN: baris kontradiksi ( 2, 4) (OfferNo sama tetapi StdSSN berbeda) StdSSN > OfferNo: baris kontradiksi (<1,2>, <3,4>) StdSSN > OffYear: datatidakmemiliki tidak kontradiksi tambahkan baris utk proof. kontradiksi (enroll S1 pada offering year = 2001)

Identifikasi FD Easy identification (Mudah) Adanya keunikan PK dan CK dihasilkan dari konversi ERD 1 M relationship: FD dari child ke parent Difficult identification (Sulit) LHS bukan PK atau CK dalam tabel yang dikonversi LHS mrpk bagian dari kombinasi PK atau CK Buat minimalitas pada LHS (Left Hand Side)

Key dan FD Rule 1 FD memuat atribut dimana LHS nya adalah SK R(W,X,Y,Z);FD=XY WZ, jadi XY adalah SK Bukti : XY WZ XY XY (reflextive) XY XYWZ (union) XY R Karena XY R, maka XY=SK

Key dan FD lanj. Rule 2 Atribut secara fungsional menentukan SK tabel, jadi atribut tsb adalah SK R(W,X,Y,Z); FD=Z W, jadi Z=SK Bukti Z W W WXZY (sebab W = SK), maka Z WXYZ (transitif) iif) Z R maka Z adalah SK

Trick If an attribute never appears on the RHS of any FD, it must be part of the key If an attribute never appears on the LHS of any FD, but appears on the RHS of any FD, it must not be part of any key

Contoh Lain R(ABCD), (A,B)= SK dari R ((A,B) R)?? )?? Karena tupel t i i[ [A,B], 1 i 5, adalah unik t 1 [A,B]=(A1,B1) t 2 [A,B]=(A1,B2) t 3 [A,B]=(A2,B2) t 4 [A,B]=(A2,B3) B3) t 5 [A,B]=(A3,B3) A B C D A1 B1 C1 D1 A1 B2 C1 D2 A2 B2 C2 D2 A2 B3 C2 D3 A3 B3 C2 D4 Maka (A,B) (A,B,C,D) ) atau (A,B) R, sehingga (A,B) R

Contoh Lain S(ABCDEF)FD S=(A,B,C,D,E,F); FD=A BC; B D; C EF; BF A Temukan SK dan CK dari S dengan FD? A BC dekomposisi menjadi A B dan A C Karena A B dan B D, maka A D Karena A C dan C EF maka A EF, A A, sehingga A A,B,C,D,E,F Jadi A S superkey B D, maka BC D,C (Aug) C EF, maka BC BEF (Aug) Jadi BC B,C,D,E,F (Union) BC A,B,C,D,E,F dan B,C A, maka B A,B,C,D,E,F Jadi BC S merupakan Superkey BF A dan A A,B,C,D,E,F maka BF A,B,C,D,E,F Jadi BF S Jadi A,BC, BF dan gabungan atribut yang mengandung A,BC dan BF merupakan Superkey Candidate C t Key daris adalah dlhabc A,BC, dan BF

Dekomposisi Lossy (ada informasi yang hilang pada saat terjadi dekomposisi) Lossless (tidak ada informasi yang hilang pada saat terjadi dekomposisi) Manfaat FD pada dekomposisi: Lossless Join Decomposition No Redundancy Dependecy Preservation (Terjaminya pemeliharaan ketergantungan, utk mengatasi update Anomali)

Konsep Lossles join Decomposition R{R1,R2,R3..,Rn} merupakan Lossless join Decomposition Jika : R1 R2 R3 Rn Ri, untuk 1 i n Jika R didekomposisi menjadi {R1,R2} R2} maka disebutlossless join decomposition jika : R1 R2 R1 atau R1 R2 R2 Lossless Join decomposition didapatkan dengan : Uji Dekomposisi : R1 R2 R3 Rn R Uji Lossless join : FD

Contoh Lossless join Decomposition R(A,B,C,D,E,F,G), dk dekomposisi menjadi R1(A,B,C,D,G) dan R2(B,D,E,F,H) sedang FD nya adalah : (1)B A,G ;(2) E D,H ; (3)A E,C ; (4)D F Apakah R1 dan R2 Lossless atau Lossy? Uji Dekomposisi R1 R2 =(A,B,C,D,G) (B,D,E,F,H) =(A,B,C,D,E,F,G,H) =R, YES!

Contoh Lossless join Decomposition Uji Lossless dengan FD R1 R2=(A,B,C,D,G) (B,D,E,F,H)=(B,D) R1 R2 R1 atau R1 R2 R2 (B,D) (A,B,C,D,G) atau (B,D) (B,D,E,F,H) (B,D) (A,B,C,D,G) (1) B (A,G) dari (8) B A (5) B,D A,G,D (Aug) dan (6) B,D B,D (Refl) shg (7) B,D A,B,D,G (union) (1) B A,G menjadi jdi (8) B A dekomposisi (9) B G (3) A E,C menjadi jdi (10) A E dekomposisi (11) A C dan (11) A C maka (12) dan (13) Dari (7) dan (13) union didapat BD A B,D A,B,C,D,G BCDG B C (transitif) B,D C,D (Aug) YES Kerjakan untuk (B,D) (B,D,E,F,H) FD= (1)B A,G ;(2) E D,H ; (3)A E,C ; (4)D F

Dekomposisi Tak Hilang (data) Terjadi pemecahan satu relasi menjadi 2 atau lebih (dekomposisi) Dekomposisi itakhilang : tidak ada informasi iyang hilang ketika relasi di pecah menjadi relasi relasi lain Dekomposisi Tak Hilang NIM Nama Progdi 95001 Budi TI 95002 Edi MI 95003 Budi TI NIM Nama 95001 Budi 95002 Edi 95003 Budi NIM Nama 95001 Budi NIM Progdi 95001 TI 95002 MI 95003 TI Nama Progdi Budi TI 95002 Edi Edi MI Dekomposisi Hilang 95003 Budi Budi TI

Closure dari F (F + ) Jika F himpunan FD dari relasi R, maka semua FD yang mungkin diturunkan dari F dengan hukum hukum FD disebut Closure dari F (ditulis F + ). Jika R=(A,B,C,D), F={A B, B C,A C,C D}, maka, A D, sebab bba C dan C D (transitif) iif) B D, sebab B C dan C D (transitif) Sehingga {A B, B C,A C,C D,A D, B D} F + F + berguna pada Uji Dependency Preservation

Menghitung Closure dari set FD Mulai F+ dengan yang diberikan dari set of FD, Ulangi terus dengan memakai Reflexivity,Augmentation,Transitivity, tambahkan turunannya (FD baru) ke F+, hingga tidak ada FD baru yang dapat diturunkan.

contoh Buktikan: kik { X YZ } = { X Y, X Z } yang memenuhi R(XYZ) bukti: x YZ (1) ; x y (2) dan x z (3) Fd1 (x y) (Ref), kita punya YZ Y (4) dan YZ Z (5) Ingat FD trivial x yjikay subset x dengan X YZ (1), YZ Y (4) dan dengan trans menjadi X Y (2); Fd2 (x z) sama, X YZ (1), YZ Z (5) secara trans menjadi X Z (3).

Closure of Attributes X + Q: Apakah set F darifd berimplikasi i pada X Y? Method 1: Hitung F+ & test jika X Y maka beradadalamdalam F+. Problem: F+ susah di hitung! Method 2: Hitung closure X di dalam F., yang mana merupakan set attribute yang secara fungsional ditentukan oleh X dalam F, atau X+ = { A X A F+ } Theorem: X Y F+jikadan hanya jikay X+. Bukti: Use Dekom & Union.

Menghitung Closure Atribut X + Algorithm menemukan X + Input: F: set FD yang dipenuhi R X: set atribut dari R Output: X + (= xplus). Method: xplus := X; whilexplus berubah do for tiap FD Y Z dalam F do if Y xplus then xplus := xplus Z; return xplus

Contoh R(ABCDEF) R=(A,B,C,D,E,F) F: AB C, BC AD, D E, CE B Hitung {A,B} +? 1. X={A,B} X{AB} 2. Tambah C ke X (dari AB C); X={A,B,C} 3. Tambah hadk A,D ke X (dari ibc AD; X{ABCD} X={A,B,C,D} 4. Tambah E ke X (dari D E); X={A,B,C,D,E} 5. Tidak ada lagi atribut tib tyang dapatdi tambahkan ke X 6. {A,B} + = {A,B,C,D,E}

Contoh Compute (AG) + dalam {A B, CG HI, Init: xplus := AG; B H, A C} iterasi1: XPlus FD Xplus Baru AG A B ABG ABG CG HI ABG ABG B H ABGH ABGH A C ABCGH Xplus berubah maka, ulangi loop.

Lanjutan Iterasi 2 XPlus FD Xplus Baru ABCGH A B ABCGH ABCGH CG HI ABCGHI ABCGHI B H ABCGHI ABCGHI A C ABCGHI Iterasi 3 XPlus FD Xplus Baru ABCGHI A B ABCGHI ABCGHI CG HI ABCGHI ABCGHI B H ABCGHI ABCGHI A C ABCGHI (AG)+ = ABCGHI

Check Candidate Key Diberikan ik R yang memenuhi set F dari FD dan K R. Apakah K suatu candidate key? Kita tahu bahwa K adalah candidate key JIKA R memenuhi K R; dengan dmk K + =R dalam F, dan Untuk setiap subset X dari K, X + R. Dalam contoh tadi, karena (AG)+ = ABCGHI = R, dan A+ = ABCH R, G+ = G R, AG adalah candidate key dari R(ABCGHI) dibawah F

Contoh lagi Hitung closure attribute dari AB (AB + ) Dengan FD : Solusi AB C A D D E AC B (a) (b) (c) (d) Initi closure = {AB} dengan(a) closure = {ABC} dengan(b) closure = {ABCD} dengan(c) closure = {ABCDE} B bagian (d) tetap di hitung tetapi karena Closure tidak berubah, B bagian (d) tetap di hitung tetapi karena Closure tidak berubah, ABCDE U B=ABCDE, dan AB adalah CK dari R(ABCDE)

R(A, B, C, D, E, F) dan S: A BC E CF B E CD EF Hitung closure {A, B} + dari set {A, B} pada S.

Contoh Lagi R( A, B, C, D, E ) F={AB C,BC AD,D E,CF B},,,, Hitung Closure {A, B} + dari {A, B} di bawah S. 1{A,B} + = {A,B} 2 AB C {A,B} + = {A,B,C} 3 BC AD {A,B} + = {A,B,C,D},, 4 D E {A,B} + = {A,B,C,D,E} 5 {A,B A,B} + = {A,B,C,D,E}

Contoh lagi R = {A, B, C, D, E} F = { B CD,, D E, B A, E C, AD B } Is B E in F +? B + = B Is AD a key for R? AD + = AD B + = BCD AD + = ABD dan B = key Yes! B + = BCDA Is AD a candidate key B + = BCDAE Yes! for R? dan B = key bagi R! A + = A Is D a key for R? D + = D D + = DE D + = DEC bukan! A not a key, so Yes! Is ADE a candidate key for R? No! AD is a key, so ADE is a superkey, but not a cand. key

Dependency Preservation (DP) R adalah dlhskema relasi, dimana R di dekomposisi menjadi R1,R2,R3,,Rn dan F1,F2,F3,,Fn adalah himpunan FD yang berlaku untuk R, maka dekomposisi tersbut dikatakan memenuhi DP jika : (F1 F2 F3 Fn) + =F + DP merupakan kriteria penjamin keutuhan relasi, ketika suatu relasi di dekomposisi, jadi dapat menghindari anomali dan inkonsistensi

Dependecy Preservation Contoh R=(A,B,C) dan FD:A B, B C didekomposisikan menjadi R1=(A,B) dan R2=(B,C) Lossles join decomposition?? Dependency Preservation?? R1 R2=(A,B) (B,C)=(A,B,C)=R (dekomposisi) R1 R2=(A,B) (B,C)=(B) R2 (B (B) Jika B (A,B) atau B (B,C) maka lossless karenab C maka BB BC atau B C (Aug) Jadi dekomposisi nya lossless join

Dependecy Preservation lanj. R=(A,B,C), FD={A B,B C} Karena A B dan B C maka A C, sehingga F + ={A B,B C, A C} R1=(A,B), F1={A B}, krn hanya A B yg berlaku pada R1 R2=(B,C), F2={B C}, krn hanya B C yg berlaku pada R2 F1 F2={A B, B C}, krn A B dan B C maka A C Shi Sehingga (F1 F2) + ={A B, B C,A C}=F + Jadi memenuhi DP

Relationships of Normal Forms 1NF 2NF 3NF/BCNF 4NF 5NF DKNF 1NF: tip table beradapada d 1NF 2NF: tiap tabel dalam 2NF juga dalam 1NF 3NF/BCNF: BCNF adalah edisi revisi dari 3NF, 4NF: Mengurangi penggunaan M way relationship;relationship independence and MVDs; does not involve FDs 5NF: tidak melibatkan FD; Inappropriate usage sageofan an M way relationship; morespecialized ed than 4NF DKNF: bentuk ideal secara teori