Kontrak Kuliah Functional Dependencies
Kontrak Kuliah
Functional Dependencies
Edi Sugiarto, S.Kom, M.Kom
Ketergantungan Fungsional
• Functional Dependencies(FD) / Ketergantungan
Fungsional (KF) digunakan untuk
menggambarkan atau mendeskripsikan bentuk normal atas suatu relasi FD adalah batasan terhadap gugus relasi yang berlaku. Diperoleh berdasarkan hubungan antar atribut data.
- Kegunaanya :
- – Memeriksa keabsahan apakah semua relasi sesuai dengan ketergantungan fungsional yang diberikan
– Untuk menetapkan batasan gugus relasi yang berlaku
- – Untuk menentukan kunci relasi
– Untuk melakukan normalisasi atas suatu tabel relasional
1. Semua tupel t [x], 1 ≤ i ≤ n adalah unik/tunggal i
2. Semua pasangan tupel dimana t [x] = t [x], i ≠ j, terjadi juga t [y] = t [y] i j i j
dengan kata lain :
Untuk setiap nilai x terdapat hanya satu nilai y (x menentukan secara tunggal
nilai y). Jadi apabila terdapat 2 tuple t dan t mempunyai nilai atribut x yang
1
2 sama, maka juga akan mempunyai nilai atribut y yang sama. t [x] = t [x] t [y] = t [y] pada skema relasi R
1
2
1
2
Armstrong’s Rule
⊆ ! " #
Diketahui x y Dari A2 (x,z) (y,z)
$ %
Diketahui (z,y) w Dari A3 (x,z) w
& ' ( (
Manfaat FD pada dekomposisi
% )
- # #
- , + #
- # + • -
# + # +
Uji Lossless-join
decomposition
- # * + . / #
1
2 ∩ ∩ ∩
! " # / ∩ i # + -
3
- !
- # + .
#
1
2
- ! " # #
) - + ∩ ∩ 2 +3 %- 2 3- ! " # )
%- ! # ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪
%- 2 3-
Uji Lossless-join decomposition
Diketahui skema relasi R=(A,B,C,D,E,F,G,H) didekomposisi menjadi : R1=(A,B,C,D,G) dan R2=(B,D,E,F,H). FD pada R yang berlaku adalah : (1) B A,G (2) E D,H (3) A E,C (4) D F
Buktikan (B,D) (B,D,E,F,H) Ujilah apakah dekomposisi {R1,R2} tersebut lossless atau lossy ?
%- ! # ∪ 4 5 6 ! 7 ∪ 5 ! 8 9 :
4 5 6 ! 8 9 7 :
4
%- 2
∩ ; 5 ! 5 6 ! 7 ! 5 7 ! " # 5 // $
5 7// & 8 6 ! " # 8 // < 6 // =
R1 ∩ R2 = (A,B,C,D,G) ∩ (B,D,E,F,H) = (B,D)
Akan dibuktikan bahwa paling sedikit satu kondisi berikut dipenuhi : R1 ∩ R2 R1 ; (B,D) (A,B,C,D,G) atau R1 ∩ R2 R2 ; (B,D) (B,D,E,F,H)
$ = 5 6// > 5 5// ? > ? 5 5 6 7 // !
5 5 6 7 5 ! 5 6 ! 7 2 ! " + - #
1 +( 5 ! 5 ! 8 9 :
6
7
8
9 :
5 !
Uji Lossless-join
decomposition! 5 7 ! " # 5 /// $ 5 7 /// & 8 6 ! " #
8 / < 6 // = ! $ @< 5 8 // > 8 ! :
8 ! / ? 8 : // >@ 5 : /
! >@ ? 5 ! // @ 5 9 // 5 5 // $
! $ >
5 5 8 9 :// & & 5 ! 5 ! 8 9 : 5 ! 5 ! 8 9 :
2 R1 ∩ R2 R2 ; (B,D) (B,D,E,F,H)
- + Closur FD (F )
Misal F adalah gugus ketergantungan fungsional pada skema relasi
R, maka semua FD yang mungkin dapat diturunkan dari F dengan
- .
Closure dari F hukum-hukum FD disebut : , ditulis F A #
B
9
- 6 + ) !
4 5 6 ! 9 4 . 5 5 6 6 6 !0 )
! 1 1 6 6 !
# ! 5 ! 1 1 5
6 6 ! # 5 !
B
C + . 5 5 6 6 6 ! ! 5 !0 ∈ 9 D #
3
9B
1 A + 9!
Misal skema relasi R dengan himpunan ketergantungan fungsional
F didekomposisi menjadi R1,R2,R3,…,Rn. Dan F1,F2,F3,…,Fn adalah himpunan ketergantungan fungsional yang berlaku diR1,R2,R3,…,Rn maka dekomposisi tersebut dikatakan memenuhi
sifat Dependency Preservation apabila berlaku :
(F1 ∪ F2 ∪ F3 ∪ … ∪ Fn) = F
Dependency Preservation (Pemeliharaan Ketergantungan) merupakan kriteria yang menjamin keutuhan relasi ketika suaturelasi didekomposisi menjadi beberapa tabel. Sehingga diharapkan
tidak terjadi inkonsistensi atau anomali ketika dilakukan update data.Uji dependency preservation
6 + ) ! + 4 5 6 9! ) 5 ; 5
6
- ! #
4 5 4 5 6 # # + 1 2
3 E
- 1 # #
1 + ! # " ' E ∪
4 5 ∪ 5 6 4 5 6 4
∩ 4 5 ∩ 5 6 4 5- 2
5
5 5 5 6 D
5
6
55
56 5 +
56 # 1 2 Karena A B dan B C maka A
- F ={A B, B C,A C}.
R1=(A,B) dan F1={A B}. Karena hanya A B yang berlaku di R1. R2=(B,C) dan F2={B C}. Karena hanya B C yang berlaku di R2.
F1 ∪ F2 = {A B,B C}. Karena A B dan B C maka A C.
Sehingga (F1 ∪ F2 ) ={A B,B C,A C}=F Jadi dekomposisi tsb memenuhi Dependency Preservation.
Ujilah dekomposisinya apakah Lossless dan Dependency Preservation Apabila R di atas didekoposisi menjadi R1=(A,B) dan R2=(A,C). Bagaimana bila R1=(A,B) dan R2=(B,C) tetapi FD : B
C, AC B
%- + # # + E
4 5 6 ! 8 9 7 : # - ) 4 5 6 ! 8 4 6 ! 9 7 : 9! ) 6 5 ! ; 9 7 : ; ! 8 9 4 5 6 ! 8 # - )
4 5 6 ! 4 6 ! 8 9! ) 5 ; 6 ! 8 ; 5 ! ; 8
4 F G H I % J # - )
4 F G H I
4 I % J 9! )
I F ; F H 4 5 6 ! 8 9 # - ) 4 5 6 4 ! 9 4 8 ! 9! ) 5 6 ; !
9 %- + # # " #
3 Soal Latihan
1. R = (A,B,C,D,E,F,G,H) didekomposisi menjadi :
R1 = (A,B,C,D,E) dan R2 = (C,D,F,G,H) dengan FD :
C (A,B,D) ; F (G,H) ; D (E,F)5 %- 2
%- ! # ∪ 4 5 6 ! 8 ∪ 6 ! 9 7 :
4 5 6 ! 8 9 7 :
4 ) 1 1 +( . + #
R1 ∩ R2 = (A,B,C,D,E) ∩ (C,D,F,G,H) = (C,D) dibuktikan paling sedikit satu kondisi dipenuhi :
R1 ∩ R2 R1 ; (C,D) (A,B,C,D,E) R1 ∩ R2 R2 ; (C,D) (C,D,F,G,H)
- ∩ ; 6 ! 5 6 ! 8 !
6 5 ! ! 8 9 ! " # !
8 $ ! 9 !
6 5 ! & 6 <
6
5 = 6 ! = ) >
6
8 ?
6
6 ! & < > ? 6 5 6 8 6 ! 5 6 ! 8
8 ! " # $ ! 9 9 7 :
! @ $ ! 9 7 : < ! 7 : = ! ! > ! ! 7 :
$ > ! ! 9 7 : ? 6 ! 6 ! 9 7 : 6 ! 6 ! 9 7 : " $
- ,* * *- " $
- ∩ ; 6 ! 6 ! 9 7 : ! ! 8 9 !
2. R = (A,B,C,D,E) didekomposisi menjadi : R1 = (A,B,C,D) dan R2 = (C,D,E) dengan FD : A B ; (C,D) E ; B D ; E A
%- ! # ∪ 4 5 6 ! ∪ 6 ! 8 4 5 6 ! 8
4 1 1 +( . + ) # 5 %- 2
R1 ∩ R2 = (A,B,C,D) ∩ (C,D,E) = (C,D) dibuktikan paling sedikit satu kondisi dipenuhi :
R1 ∩ R2 R1 ; (C,D) (A,B,C,D) R1 ∩ R2 R2 ; (C,D) (C,D,E)
- ∩ ; 6 ! 5 6 ! ! 6 !
8
8 & * + ". $ & 6 !
5 "/$ * , = 6 ! 6 ! ! & < =
8 $ 6 ! 6 ! ! $ # + 6 ! 6 ! 8 " $
- ,* * " $
- ∩ ; 6 ! 6 ! 8 ! 6 !
3. R = (X,Y,Z,W,U,V) didekomposisi menjadi : R1 = (X,Y,Z,W) dan R2 = (W,U,V) dengan FD : W X ; X Z
%- ! # ∪
4 F G H I ∪ I % J
4 F G H I % J
4 ) 1 1 +( . # + ∩ - *
; I F G H I
5 %- 2
!
I F
R1 ∩ R2 = (X,Y,Z,W) ∩ (W,U,V)
F H
= (w) dibuktikan paling
I ". $
I I
sedikit satu kondisi dipenuhi : R1 ∩ R2 R1 ; (W) (X,Y,Z,W)
1 2*0*1 " $
R1 ∩ R2 R2 ; (W) (W,U,V)
4. R = (A,B,C,D,E,F) didekomposisi menjadi :
R1 = (A,B,C), R2 = (A,D,F) dan R3 = (E,D) dengan FD :
1. A (B,C)
2. D (F,A)
5 %- 2 R1 ∩ R2 = (A,B,C) ∩ (A,D,F)
= (A) R2 ∩ R3 = (A,D,F) ∩ (E,D)
= (D) %- ! #
∪ ∪ 4 5 6 ∪ ! 9 ∪ 8 ! 4 5 6 ! 8 9
4 ) 1 1 +( . + #
∩ ; 5 6 ! 5 6 $
R1 ∩ R2 R2 ; (A) (A,D,F) R1 = (A,B,C), R2 = (A,D,F) dan R3 = (E,D) dengan FD : A (B,C) ; D (F,A) R2 ∩ R3 R2 ; (D) (A,D,F) atau R2 ∩ R3 R3 ; (D) (E,D) ∩
- ,*
- ,*
; ! ! 9 ! ! 9 $ ! !
∩ ; ! 8 ! ! !
9 $ ! !
- !
2 # + ∩ ; ! 9 ! 5 6 $
- !
1 " # - + 2
Ada Pertanyaan ?
Terima kasih
Daftar Pustaka
- C.J. Date (2004), “An Introduction to Database System
Sevent Edition”,Addison-Wesley Longman, Inc, New
Jersey • Silberschatz, Korth, Sudarshan (2001),” Database System Concepts Fourth Edition”, The McGraw Hill Companies • Bambang Hariyanto (2004), ”Sistem Manajemen Basisdata, Pemodelan, Perancangan dan Terapannya”, Penerbit Informatika Bandung