Đăng ký Đăng nhập
Trang chủ (đề tài cấp trường) mô hình cơ sở dữ liệu có tính thời gian...

Tài liệu (đề tài cấp trường) mô hình cơ sở dữ liệu có tính thời gian

.PDF
38
121
132

Mô tả:

Phaàn Giôùi Thieäu Veà Ñeà Taøi: N gaøy nay, trong nhieàu öùng duïng thöïc teá, beân caïnh nhöõng döõ lieäu tónh- döõ lieäu coù tính oån ñònh, coøn coù raát nhieàu loaïi döõ lieäu ñoäng- döõ lieäu ñöôïc truy xuaát thay ñoåi theo thôøi gian. Trong moät soá tröôøng hôïp, nhöõng döõ lieäu ñoäng naøy coù nhöõng quy luaät thay ñoåi naøo ñoù. Vì vaäy moâ hình CSDL coù tính thôøi gian(temporal database) ñöôïc ñeà xuaát ñeå nghieân cöùu vaán ñeà treân. Nhieàu taùc giaû ñaõ nghieân cöùu veà: moâ hình döõ lieäu coù tính thôøi gian, vaø caùc daïng chuaån coù tính thôøi gian. Coù theå neâu moät soá nhöõng teân tuoåi nhö: D.Dey ñöa ra moät soá khaùi nieäm veà ñaïi soá quan heä cho moâ hình döõ lieäu thôøi gian; Z.M. Ozsoyoglu ñeà nghò moâ hình quan heä loàng nhau; J. Wijsen, J. Vandenbulcke vaø H. Olive ñeà nghò moät soá khaùi nieäm veà caùc phuï thuoäc haøm coù tính thôøi gian; vaø gaàn ñaây S. Y. Liao, H.Q. Wang, W.Y. Liu ñöa ra khaùi nieäm veà daïng chuaån 3 coù tính thôøi gian; E. Bertino, C. Bettini, E.Ferrari, P. Samarati ñöa ra khaùi nieäm veà ñieàu khieån truy xuaát trong moâ hình coù tính thôøi gian. Trong ñeà taøi naøy ñeà caäp ñeán caùc khaùi nieäm vaø moät soá keát quaû veà caùc vaán ñeà trong cô sôû döõ lieäu coù tính thôøi gian nhö sau: Caùc khaùi nieäm veà cô sôû döõ lieäu coù tính thôøi gian: löôïc ñoà quan heä tính thôùi gian vaø quan heä tính thôøi gian. Caùc pheùp toaùn veà ñaïi soá quan heä treân CSDL coù tính thôøi gian. Caùc khaùi nieäm veà phuï thuoäc haøm vaø caùc daïng chuaån coù tính thôøi gian. Caùc raøng buoäc oån ñònh coù tính thôøi gian. Phaân raõ baûo toaøn thoâng tin coù tính thôøi gian. -----------------------------****---------------------------- Giôùi thieäu khaùi nieäm cô baûn trong lyù thuyeát CSDL PHAÀN I GIÔÙI THIEÄU KHAÙI NIEÄM CÔ BAÛN TRONG LYÙ THUYEÁT CSDL I.1 Khaùi nieäm veà CSDL: CSDL laø moät taäp hôïp coù caáu truùc cuûa döõ lieäu ñöôïc löu tröõ treân caùc thieát bò kyù tin nhaèm thoûa maõn ñoàng thôøi nhieàu ngöôøi söû duïng, moät caùch coù choïn loïc vaøo luùc caàn. I.2 Taäp caáu truùc thuoäc tính: Moät thuoäc tính: moâ taû moät ñaëc tính hoaëc ñaëc ñieåm naøo ñoù cuûa moät thöïc theå(söï vaät). R={A1, A2,…,An} goïi laø moät taäp caáu truùc thuoäc tính neáu nhö R goàm höõu haïn caùc kyù hieäu goïi laø caùc thuoäc tính. Moãi thuoäc tính Ai coù giaù trò theå hieän thuoäc taäp Di= Domain(Ai). I.3 Quan heä(bieåu dieãn quan heä baèng aùnh xaï): • Moät quan heä r(R) laø moät taäp höõu haïn caùc aùnh xaï töø R={A1, A2,…,An} vaøo hôïp mieàn giaù trò caùc thuoäc tính(kyù hieäu: D= n ΥD i laø hôïp mieàn giaù trò caùc thuoäc tính). i =1 • Moät quan heä r(R) vôùi m aùnh xaï cho nhö sau: r= {t1,t2,….,tm}, trong ñoù: ti laø aùnh xaï: R Æ D Aj Æ ti(Aj) ∈ Dj (i=1,..,m; j=1,…,n) Ta coù: ti(R)= {ti1,ti2,…tin} I.4 Raøng buoäc toaøn veïn: • Laø nhöõng raøng buoäc, ñieàu kieän baát bieán maø CSDL phaûi thoaû taïi moïi thôøi ñieåm. • Raøng buoäc toaøn veïn coù theå ñònh nghóa treân moät quan heä hay nhieàu quan heä khaùc nhau. • Raøng buoäc toaøn veïn treân moät quan heä:RBTV mieàn giaù trò, RBTV lieân boä, RBTV lieân thuoäc tính. NGUYEÃN THÒ LAN ANH Trang 1 Giôùi thieäu khaùi nieäm cô baûn trong lyù thuyeát CSDL • Raøng buoäc toaøn veïn treân nhieàu quan heä: RBTV tham chieáu, RBTV do thuoäc tính toång hôïp, RBTV lieân boä- lieân quan heä, RBTV lieân thuoäc tính lieân quan heä, RBTV chu trình. I.5 Phuï thuoäc haøm treân taäp(caáu truùc) thuoäc tính R: Moät phuï thuoäc haøm treân taäp R coù kyù hieäu: (X,Y), hoaëc XÆ Y Trong ñoù: X,Y ⊆ R. I.6 Ñònh nghóa löôïc ñoà quan heä: Moät löôïc ñoà quan heä kyù hieäu S laø moät boä S=. Trong ñoù, R laø taäp caáu truùc thuoäc tính naøo ñoù cho tröôùc vaø F laø taäp caùc phuï thuoäc haøm treân taäp R cho tröôùc. Sau naøy ta coøn goïi löôïc ñoà quan heä S laø löôïc ñoà quan heä R, vôùi R laø taäp caáu truùc thuoäc tính naøo ñoù cho tröôùc vaø F laø taäp caùc phuï thuoäc haøm treân taäp R cho tröôùc. I.7 Phuï thuoäc haøm: • Cho r(R) laø moät quan heä treân taäp thuoäc tính R. X,Y ⊆ R, ta noùi coù phuï thuoäc haøm: XÆY treân quan heä r. r Y Kyù hieäu: (X,Y)r hay X ⎯ ⎯→ Neáu nhö: ∀ t,s ∈ r neáu t[X]= s[X] thì t[Y]= s[Y]. • Vôùi r(R) laø moät quan heä treân R seõ toàn taïi duy nhaát moät taäp phuï thuoäc haøm goàm taát caû caùc phuï thuoäc haøm cuûa quan heä r, kyù hieäu: Fr. I.8 Quan heä hôïp leä: • Cho taäp thuoäc tính R, X,Y ⊆ R. Ta noùi, phuï thuoäc haøm (X,Y) ñuùng treân r(quan heä r hôïp leä ñoái vôùi phuï thuoäc haøm (X,Y)) neáu nhö (X,Y) ∈ Fr. • Vôùi S= laø moät löôïc ñoà quan heä. Ta noùi quan heä r(R) laø hôïp leä ñoái vôùi S neáu nhö noù hôùp leä ñoái vôùi moïi phuï thuoäc haøm trong F. • Cho R={A1, A2,…,An} laø moät löôïc ñoà quan heä, X,Y ⊆ R, ta noùi coù phuï thuoäc haøm: XÆY cuûa löôïc ñoà quan heä R(hay X xaùc ñònh Y theo kieåu haøm; hay Y phuï thuoäc haøm NGUYEÃN THÒ LAN ANH Trang 2 Giôùi thieäu khaùi nieäm cô baûn trong lyù thuyeát CSDL vaøo X) neáu:∀ r(R) hôïp leä(quan heä r laø giaù trò hieän haønh cuûa R): XÆY laø phuï thuoäc haøm treân quan heä r. Töø ñoù ta coù khaùi nieäm quan heä hôïp leä nhö sau I.9 Phuï thuoäc haøm suy dieãn vaø bao ñoùng cuûa caùc taäp phuï thuoäc: Cho LÑQH S=, X,Y ⊆ R • (X,Y) laø phuï thuoäc haøm ñöôïc suy dieãn töø caùc phuï thuoäc haøm trong F(ñoái vôùi caùc quan heä hôïp leä) neáu nhö: Vôùi moïi quan heä r(R) hôïp leä ñoái vôùi F thì r(R) cuõng hôïp leä ñoái vôùi (X,Y). • F+ ñöôïc goïi laø bao ñoùng(closure) cuûa F neáu F+ goàm taát caû caùc phuï thuoäc haøm ñöôïc suy dieãn töø caùc phuï thuoäc haøm trong F, nghóa laø: F+ ={(X,Y): (X,Y) ñöôïc suy dieãn töø caùc phuï thuoäc haøm trong F. Nhaän xeùt: Chuùng ta khoâng xem xeùt moät quan heä r cuï theå cuûa löôïc ñoà R nhaèm suy ra caùc phuï thuoäc ñuùng trong R. Tuy nhieân, chuùng ta coù theå xem xeùt moät quan heä cuï theå cuûa R ñeå khaùm phaù ra moät soá phuï thuoäc khoâng ñuùng. I.10 Heä tieân ñeà Amstrong: Laø moät taäp nhöõng quy taéc suy dieãn ñaày ñuû, nhôø nhöõng quy taéc naøy ta coù theå suy dieãn taát caû caùc phuï thuoäc haøm trong taäp F+ töø taát caû caùc phuï thuoäc haøm trong taäp F(ñieàu naøy ñaõ ñöôïc chöùng minh): Vôùi X,Y,Z,T⊆R • Quy taéc phaûn xaï: Neáu Y⊆ X thì XÆY, quy taéc naøy ñöa ra nhöõng phuï haøm taàm thöôøng. • Quy taéc taêng tröôûng: Neáu XÆY, Z ⊆ R thì XZÆYZ. • Quy taéc baéc caàu: neáu XÆY, YÆZ thì XÆZ Caùc luaät suy dieãn boå sung: • Quy taéc hôïp: neáu XÆY vaø XÆZ thì XÆYZ. NGUYEÃN THÒ LAN ANH Trang 3 Giôùi thieäu khaùi nieäm cô baûn trong lyù thuyeát CSDL • Quy taéc taùch: neáu XÆYZ thì XÆY vaø XÆZ. • Quy taéc töïa baéc caàu: neáu XÆY vaø YZÆT thì XZÆT I.11 Bao ñoùng cuûa taäp thuoäc tính: Cho LÑQH S=, X⊆R Kyù hieäu: X+F laø bao ñoùng cuûa cuûa X treân F laø taäp taát caû caùc thuoäc tính A sao cho XÆA coù theå suy ra töø F baèng heä tieân ñeà Amstrong. X+F ={A: XÆA ∈F+} Nhaän xeùt: Muoán kieåm tra phuï thuoäc haøm XÆY coù thuoäc F+ hay khoâng, ta xeùt thaáy: Baøi toaùn tìm F+ töø F laø khoù thöïc hieän vôùi soá thuoäc tính trong R lôùn. Thay vì xaùc ñònh F+ ta tính X+F, neáu Y⊆ X+F thì XÆY thuoäc F+. I.12 Khoaù cuûa löôïc ñoà quan heä: Ñeå phaân bieät caùc thöïc theå trong moät taäp thöïc theå ta coù khaùi nieäm khoaù nhö sau: Cho LÑQH S=, K⊆ R • K goïi laø sieâu khoaù(super key) cuûa löôïc ñoà quan heä R neáu vaø chæ neáu: KÆR∈F+ Hay: K goïi laø sieâu khoaù cuûa löôïc ñoà quan heä R neáu vaø chæ neáu K+F=R. • K goïi laø khoaù ñeà nghò(candidate key) cuûa löôïc ñoà quan heä R neáu vaø chæ neáu: o K+F=R o Khoâng ∃K’⊂ K, K’+F=R (khoaù ñeà nghò cuõng laø khoaù toái tieåu) NGUYEÃN THÒ LAN ANH Trang 4 Caùc daïng chuaån trong CSDL PHAÀN II CAÙC DAÏNG CHUAÅN TRONG CSDL Vieäc chuaån hoaù caùc quan heä cuõng nhö caùc löôïc ñoà quan heä ñoùng vai troø cöïc kyø quan troïng trong vieäc thieát keá caùc heä quaûn trò cô sôû döõ lieäu. Nhôø coù söï chuaån hoaù caùc quan heä vaø caùc löôïc ñoà quan heä chuùng ta traùnh ñöôïc vieäc dö thöøa döõ lieäu vaø taêng toác ñoä cuûa caùc pheùp toaùn xöû lyù quan heä. Trong CSDL coù söï truøng laép thoâng tin. Daïng chuaån: laø caùc tieâu chuaån ñeå ñaùnh giaù ñoä truøng laép thoâng tin trong CSDL. Vì theá: - Phaûi quaûn lyù söï truøng laép thoâng tin( baûo ñaûm taát caû caùc thoâng tin truøng laép phaûi nhö nhau). - Khi caäp nhaät moät thoâng tin bò truøng laép thì phaûi caäp nhaät taát caû nhöng nôi maø thoâng tin ñoù xuaát hieän. Döïa vaøo phuï thuoäc haøm ta coù nhöõng daïng chuaån nhö sau: Cho LÑQH S=(coøn goïi laø LÑQH R) F: laø taäp caùc phuï thuoäc haøm. R: taäp caùc thuoäc tính. II.1 Ñònh nghóa Daïng chuaån 1NF: Löôïc ñoà quan heä R ñaït daïng chuaån 1NF neáu moïi thuoäc tính cuûa noù ñeàu laø thuoäc tính ñôn(nguyeân toá ). Thuoäc tính ñôn(nguyeân toá):mieàn giaù trò khoâng theå phaân chia ñöôïc nöõa. Thuoäc tính phöùc: mieàn giaù trò coù theå phaân chia ñöôïc. VD: - MSSV laø thuoäc tính ñôn NGUYEÃN THÒ LAN ANH Trang 5 Caùc daïng chuaån trong CSDL - NgaySinh laø thuoäc tính phöùc vì mieàn giaù trò coù theå phaân chia thaønh caùc giaù trò ñôn: Ngay, Thang, Nam. YÙ nghóa cuûa daïng chuaån 1NF: loaïi boû moïi nhoùm laëp. Moät thieát keá CSDL goïi laø ôû daïng chuaån 1NF neáu taát caû caùc LÑQH trong ñoù laø 1NF. LÑQH R muoán ñaït caùc chuaån 2NF, 3NF vaø BCNF thì tröôùc heát phaûi ñaït chuaån 1NF II.2 Ñònh nghóa Daïng chuaån 2NF: Phuï thuoäc haøm ñaày ñuû: Moät phuï thuoäc haøm AÆ B ñöôïc goïi laø ñaày ñuû neáu:Khoâng toàn taïi moät taäp hôïp A1⊂ A sao cho A1 Æ B. Trong tröôøng hôïp naøy ta noùi: B phuï thuoäc ñaày ñuû vaøo A. Ngöôïc laïi, ta noùi: B phuï thuoäc boä phaän vaøo A Nhö vaäy, neáu A laø moät thuoäc tính ñôn thì phuï thuoäc haøm AÆ B laø ñaày ñuû. Thuoäc tính thöù caáp: thuoäc tính a∈R goïi laø thöù caáp neáu vaø chæ neáu a ∉ ∪K(a coøn goïi laø thuoäc tính khoâng khoaùù). Ngöôïc laïi: neáu a ∈ ∪K ta goïi a laø thuoäc tính khoaù. Töø ñoù ta coù: Löôïc ñoà quan heä R ñaït 2NF khi vaø chæ khi: - Löôïc ñoà quan heä R ñaït 1NF - Moïi thuoäc tính thöù caáp ñeàu phuï thuoäc ñaày ñuû vaøo khoaù toái tieåu baát kyø. Coù theå thaáy baûn chaát daïng chuaån 2NF laø loaïi boû caùc phuï thuoäc boä phaän giöõa caùc thuoäc tính thöù caáp vaø caùc khoaù toái tieåu. Caùc daïng chuaån quan troïng nhaát laø daïng chuaån caáp 3 vaø daïng chuaån BCNF. Muïc ñích cuûa chuùng laø traùnh ñöôïc caùc dö thöøa vaø caùc baát thöôøng. II.3 Ñònh nghóa Daïng chuaån 3NF: Ñònh nghóa phuï thuoäc haøm tröïc tieáp vaø phuï thuoäc haøm baéc caàu: NGUYEÃN THÒ LAN ANH Trang 6 Caùc daïng chuaån trong CSDL Moät phuï thuoäc haøm AÆ C, ñöôïc goïi laø tröïc tieáp neáu khoâng coù B(B≠ A vaø B ≠C) thoaû: AÆB vaø BÆC Trong tröôøng hôïp neáu coù B nhö vaäy thì B ñöôïc goïi laø taäp thuoäc tính baéc caàu vaø AÆ C laø phuï thuoäc baéc caàu. Khi ñoù: R laø 3NF neáu vaø chæ neáu: - Löôïc ñoà quan heä R ñaït 1NF - Khoâng coù 1 thuoäc tính thöù caáp naøo cuûa R phuï thuoäc baéc caàu vaøo 1 khoaù toái tieåu. ⎧X ∩ Y = φ⎫ ⎬ ⎩Y ≠ φ ⎭ Löu yù: ∀ XÆY∈F, F goïi laø chính quy neáu vaø chæ neáu: ⎨ Ta coù ñònh nghóa töông töï: LÑQH S= 3NF neáu ∀ XÆY∈ F thì: - Phu thuoäc haøm XÆY laø chính quy. - X laø sieâu khoaù cuûa S - Y laø thuoäc tính khoaù. II. 4 Ñònh nghóa Daïng chuaån BCNF: R ñaït daïng chuaån BCNF neáu ∀ XÆY∈ F thì: - Phu thuoäc haøm XÆY laø chính quy. - X laø sieâu khoaù cuûa S. Hay: R ñaït daïng chuaån BCNF ⇔∀ XÆY∈F: X+=R. Muïc ñích cuûa daïng chuaån BCNF laø loaïi boû dö thöøa maø caùc phuï thuoäc haøm coù theå gaây ra. Chuùng ta keát luaän raèng trong quan heä coù daïng BCNF, khoâng coù giaù trò naøo coù theå tieân ñoaùn töø nhöõng giaù trò khaùc baèng caùch chæ duøng phuï thuoäc haøm. Nhaän xeùt: • Tuyø muïc tieâu cuûa CSDL maø quyeát ñònh choïn daïng chuaån 3 hay BCNF, bôûi vì: NGUYEÃN THÒ LAN ANH Trang 7 Caùc daïng chuaån trong CSDL o Moãi daïng chuaån ñeàu coù ñieåm maïnh yeáu. o Daïng chuaån 3 tuy ñaõ loaïi boû ñöôïc nhöõng phuï thuoäc baéc caàu, boä phaän giöõa caùc thuoäc tính thöù caáp vaø caùc khoaù toái tieåu, nhöng coøn truøng laép thoâng tin. Tuy nhieân, ñieåm maïnh laø kieåm tra raøng buoäc ít toán keùm. o Daïng chuaån BCNF öu ñieåm laø trieät tieâu söï truøng laép thoâng tin nhöng nhöôïc ñieåm laø kieåm tra raøng buoäc toaøn veïn toán keùm hôn. • Lôùp quan heä BCNF laø lôùp con thöïc söï cuûa lôùp quan heä 3NF vaø lôùp quan heä 3NF laø lôùp con thöïc söï cuûa lôùp caùc quan heä 2NF. II.5 Phaân raõ coù noái khoâng maát: Neáu R laø moät LÑQH ñöôïc phaân raõ thaønh caùc löôïc ñoà R1, R2,. . ., Rn, F laø taäp phuï thuoäc, ta goïi ñaây laø phaân raõ noái khoâng maát(öùng vôùi F) neáu vôùi moãi quan heä r cuûa R thoaû F, ta coù: r = π R1 (r ) >< π R 2 (r ) ><. . .>< π Rn (r ) Neáu ρ=( R1, R2,. . ., Rn) laø moät phaân raõ thì mρ(r) laø moät aùnh xaï ñöôïc ñònh nghóa laø mρ(r)= >< ni=1 π Ri (r ) , nghóa laø mρ(r) laø noái caùc hình chieáu cuûa r treân caùc LÑQH trong ρ. Vì vaäy ñieàu kieän noái khoâng maát öùng vôùi taäp phuï thuoäc F laø: r= mρ(r) Nhaän xeùt: ñaëc tính noái khoâng maát laø caàn thieát neáu quan heä bò phaân raõ caàn phaûi ñöôïc khoâng phuïc töø phaân raõ cuûa chính noù. Kieåm tra tính chaát noái khoâng maát:(taøi lieäu) Ñònh lyù: neáu ρ=(R1,R2) laø moät phaân raõ cuûa R, vaø F laø taäp caùc phuï thuoäc haøm, thì ρ coù noái khoâng maát öùng vôùi F neáu vaø chæ neáu: (R1∩R2)ÆR1 hoaëc (R1∩R2)ÆR2 II.6 Phaân raõ baûo toaøn phuï thuoäc: Neáu R laø moät LÑQH ñöôïc phaân raõ thaønh caùc löôïc ñoà R1, R2,. . ., Rn, F laø taäp phuï thuoäc. NGUYEÃN THÒ LAN ANH Trang 8 Caùc daïng chuaån trong CSDL Lyù do ρ caàn baûo toaøn taäp F ñoù laø caùc phuï thuoäc trong F coù theå ñöôïc xem laø caùc raøng buoäc toaøn veïn cho quan heä R. Neáu caùc phuï thuoäc hình chieáu khoâng suy ra ñöôïc F thì khi bieåu dieãn R baèng ρ=( R1, R2,. . ., Rn), chuùng ta coù theå thaáy raèng giaù trò hieän haønh cuûa caùc Ri bieåu dieãn moät quan heä R khoâng thoaû F, ngay caû neáu ρ noái khoâng maát öùng vôùi F. Khi ñoù moãi thao taùc caäp nhaät treân Ri seõ caàn phaûi thöïc hieän moät pheùp noái ñeå kieåm tra laïi caùc raøng buoäc khoâng vi phaïm. Kieåm tra tính baûo toaøn phuï thuoäc:(taøi lieäu) II.7 Thuaät toaùn phaân raõ noái khoâng maát thaønh daïng chuaån BCNF Nhaäp: LÑQH S= Xuaát: Moät phaân raõ cuûa R coù noái khoâng maát, sao cho moãi LÑQH trong phaân raõ coù daïng BCNF öùng vôùi hình chieáu cuûa F treân löôïc ñoà. Phöông phaùp: Troïng taâm cuûa thuaät toaùn laø laáy LÑQH R roài phaân raõ thaønh hai löôïc ñoà. Moät löôïc ñoà coù taäp thuoäc tính XA; noù coù daïng BCNF vaø phuï thuoäc XÆA ñuùng. Löôïc ñoà thöù hai seõ laø RA, do ñoù noái cuûa R-A vôùi XA laø noái khoâng maát. Thöïc hieän ñeä quy thuû tuïc phaân raõ, vôùi R-A ôû vò trí cuûa R cho ñeán khi löôïc ñoà R khoâng theå phaân raõ ñöôïc nöõa. Minh hoaï: result := {R }; done := false; Tính F +; while (not done) do if (coù löôïc ñoà Ri trong result maø khoâng laø BCNF) then begin Neáu AÆB laø moät phuï thuoäc haøm khoâng taàm thöôøng trong Ri maø AÆRi ∉F+ NGUYEÃN THÒ LAN ANH Trang 9 Caùc daïng chuaån trong CSDL vaø A ∩ B = ∅; result := (result – Ri ) ∪ (Ri – B) ∪ (A, B ); end else done := true; Nhaän xeùt: chuùng ta nhaän thaáy moïi LÑQH ñeàu coù moät phaân raõ noái khoâng maát thoâng tin thaønh daïng chuaån BCNF, tuy nhieân khoâng phaûi phaân raõ naøo cho moät LÑQH thaønh daïng BCNF maø vaãn baûo toaøn ñöôïc phuï thuoäc. Daïng chuaån 3NF ít khaét khe hôn BCNR, khoâng theå loaïi boû ñöôïc taát caû caùc dö thöøa. Tuy nhieân moät LÑQH phaân raõ thaønh daïng 3NF coù noái khoâng maát vaø baûo toaøn phuï thuoäc. II.8 Phuû toái thieåu: Cho LÑQH S= F={f: XÆA}, A laø moät thuoäc tính. • Phuû toái thieåu cuûa F, kyù hieåu PTT(F) laø moät taäp phuï thuoäc haøm thoaû: (PTT(F))+= F+ • Khoâng coù phuï thuoäc haøm naøo thöøa trong PTT(F), töùc laø: ¬ ∃ f: XÆA, f ∈PTT(F) sao cho: (PTT(F)/f)+= F+ • PTT(F) chæ goàm caùc phuï thuoäc haøm ñaày ñuû. II.9 Thuaät toaùn phaân raõ noái khoâng maát thaønh daïng chuaån 3NF: Nhaäp:LÑQH R vaø taäp phuï thuoäc F, chuùng ta coù theå giaû söû raèng F laø phuû cöïc tieåu maø khoâng laøm maát ñi tính toång quaùt. Xuaát: moät phaân raõ baûo toaøn phuï thuoäc cuûa R sao cho moãi LÑQH ñeàu coù daïng 3NF öùng vôùi hình chieáu cuûa F treân löôïc ñoà ñoù. Phöông phaùp: NGUYEÃN THÒ LAN ANH Trang 10 Caùc daïng chuaån trong CSDL Neáu coù nhöõng thuoäc tính cuûa R khoâng naèm trong moät phuï thuoäc naøo cuûa F duø ôû veá phaûi hay veá traùi, thì veà nguyeân taéc, moïi thuoäc tính nhö theá ñeàu coù theå taïo ra moät löôïc ñoà vaø chuùng ta coù theå loaïi chuùng ra khoûi R. Neáu moät trong nhöõng phuï thuoäc trong F coù chöùa taát caû caùc thuoäc tính cuûa R thì keát xuaát chính laø R, ngöôïc laïi, phaân raõ keát xuaát ρ seõ chöùa löôïc ñoà XA cho moãi phuï thuoäc XÆA trong F. Neáu khoâng coù löôïc ñoà naøo trong ρ chöùa moät khoaù baát kyø cuûa R thì ta thöïc hieän theâm vaøo ρ moät löôïc ñoà coù taäp thuoäc tính laø moät khoaù baát kyø cuûa R. Minh hoaï: Cho Fc laø moät phuû cöïc tieåu cuûa F; i := 0; for each phuï thuoäc haøm AÆB trong Fc do if khoâng coù löôïc ñoà Rj, 1 ≤ j ≤ i chöùa AB then begin i := i + 1; Ri := AB end if khoâng coù löôïc ñoà Rj, 1 ≤ j ≤ i chöùa moät khoaù cuûa R then begin i := i + 1; Ri := baát kyø khoaù naøo cuûa R; end return (R1, R2, ..., Ri) NGUYEÃN THÒ LAN ANH Trang 11 Khaùi nieäm veà CSDL coù tính thôøi gian PHAÀN III KHAÙI NIEÄM VEÀ CÔ SÔÛ DÖÕ LIEÄU COÙ TÍNH THÔØI GIAN Moät thuoäc tính: moâ taû moät ñaëc tính hoaëc ñaëc ñieåm naøo ñoù cuûa moät thöïc theå(söï vaät). Ví duï: Mscb, HoTen, QueQuan, DiaChi, ChucVu, PhongBan, BacLuong. . . Coù nhaän xeùt raèng, trong taäp thuoäc tính coù: - Nhöõng thuoäc tính maø giaù trò oån ñònh theo thôøi gian. Ví duï: Mscb, HoTen, . . . - Nhöõng thuoäc tính maø giaù trò thay ñoåi theo thôøi gian.Ví du: DiaChi, ChucVu, PhongBan, BacLuong,. . . Nhö vaäy, chuùng ta seõ môû roäng caùc khaùi nieäm LÑQH, quan heä, phuï thuoäc haøm, thuoäc tính thoâng thöôøng vôùi thuoäc tính thôøi gian. III.1 Khaùi nieäm thuoäc tính thôøi gian: Ta tìm hieåu veà khaùi nieäm thôøi ñieåm vaø khoaûng thôøi gian trong thuoäc tính thôøi gian. - Ta goïi khoâng gian caùc thôøi ñieåm C: laø khoâng gian 1 chieàu lieân tuïc khoâng aâm [0,+ ∞ ]. Vaø treân ñoù coù xaùc ñònh quan heä thöù töï “ ≤ ”. C 0 - ti +∞ Vôùi ti ∈ C laø moät thôøi ñieåm baát kyø, ta kyù hieäu: + Moät taäp con caùc thôøi ñieåm α ⊂ C ñöôïc goïi laø moät khoaûng thôøi gian neáu: ∀t1 , t 2 , t 3 ∈ C, t1 ≤ t 2 ≤ t 3 , t1 , t 3 ∈ α ⇒ t 2 ∈ α + Goïi T laø taäp hôïp taát caû caùc khoaûng thôøi gian: α ⊂ C T= {α : α ⊂ C} + Hai khoaûng keà nhau: α 1 vaø α 2 goïi laø keà nhau, kyù hieäu α1 < α 2 neáu: α 1 =[a,b) vaø α 2 =[c,d) vaø b=c Hoaëc α 1 =[a,b] vaø α 2 =[c,d] vaø b=c - 1 NGUYEÃN THÒ LAN ANH Trang 12 Khaùi nieäm veà CSDL coù tính thôøi gian Ví duï: Cho 3 thôøi ñieåm a,b,c bieåu thò giaù trò Naêm nhö sau: a = 1999, b= 2003, c= 2006. Coù: a,b,c ∈ thuoäc khoâng gian caùc thôøi ñieåm C. α 1 =[1999,2003), α 2 =[2003,2006) laø 2 khoaûng thôøi gian keà nhau. Coù: α 1, α 2 ∈ T vaø α1 < α 2 III.2 Löôïc ñoà quan heä coù tính thôøi gian: Môû roäng cuûa LÑQH bình thöôøng, LÑQH thôøi gian xeùt theâm vaøo trong taäp thuoäc tính R moät thuoäc tính thôøi gian. LÑQH coù tính thôøi gian(TTG) ST laø moät boä ST =(RT, FT). Trong ñoù: RT laø taäp thuoäc tính. FT laø taäp caùc phuï thuoäc haøm treân taäp RT hay phuï thuoäc haøm tính thôøi gian. Nhaän xeùt: trong LÑQH TTG, caùc thuoäc tính bao goàm : - Thuoäc tính coù giaù trò oån ñònh theo thôøi gian, goïi laø thuoäc tính oån ñònh, kyù kieäu: R - Thuoäc tính coù giaù trò thay ñoåi theo thôøi gian, goïi laø thuoäc tính coù tính thôøi gian, kyù hieäu: R . - T: laø taäp thuoäc tính thôøi gian. Nhaän xeùt: trong ñeà taøi naøy, chæ xeùt tröôøng hôïp taäp thuoäc tính thôøi gian goàm moät thuoäc tính |T|=1. Xeùt thuoäc tính thôøi gian: - Trong moät soá baøi baùo ñeà xuaát: giaù trò thuoäc tính thôøi gian T laø moät khoaûng thôøi gian [Ts, Te] hoaëc [Ts,Te) - Trong moät soá baøi baùo khaùc laïi ñeà xuaát: giaù trò thuoäc tính thôøi gian T taùch thaønh 2 giaù trò thuoäc tính thôøi gian Ts vaø Te. ∀Ai ∈RT(i=1,…,n), moãi thuoäc tính Ai coù mieàn giaù trò D(Ai)=Di töông öùng. NGUYEÃN THÒ LAN ANH Trang 13 Khaùi nieäm veà CSDL coù tính thôøi gian Neáu Ai=T(T: thuoäc tính thôøi gian) thì D(Ai)⊂ T (T: laø taäp hôïp caùc khoaûng thôøi gian). Ví duï: Xeùt quan heä THOÂNG_TIN_CAÙN_BOÄ(MACB, HOTEN, GIÔÙITINH, QUEQUAN, PHONGBAN, CHUCVU, LUONGHS, DANGVIEN) MSCB HOTEN GIOI TINH QUE QUAN PHONG BAN CHUC VU LUONG HS DANG VIEN 1234 NG.V.A NÖÕ THANH HOA MOI TRUONG CAN BO GIANG DAY 2.34 KHOÂNG 1235 NG.V.B NAM HA NOI HOA HOC CAN BO GIANG DAY 2.67 COÙ 1236 NG.V.C NAM TP.HCM VAT LY PHO KHOA 4.32 KHOÂNG 1237 NG.V.D NÖÕ HA TINH NGOAI NGU GIANG VIEÂN 3 KHOÂNG …. ….. …… …… ….. …… ….. ….. Baûng döõ lieäu naøy löu thoâng tin veà caùn boä cuûa moät tröôøng ñaïi hoïc trong khoaûng thôøi gian [2004,2005]. Moãi doøng döõ lieäu löu thoâng tin cuûa moät caùn boä vaø moät thoâng tin cuûa moät caùn boä chæ ñöôïc bieåu dieãn duy nhaát treân moät doøng. Vôùi quan heä treân deã daøng nhaän thaáy khoaù cuûa quan heä Kr laø MSCB Trong quaù trình quaûn lyù, do thoâng tin cuûa caùc caùn boä coù söï thay ñoåi neân haøng naêm seõ coù moät baûng thoâng tin môùi veà caùc caùn boä. Söï thay ñoåi coù theå naèm ôû caùc thuoäc tính: PHONGBAN, CHUCVU, LUONGHS, DANGVIEN. Do yeâu caàu quaûn lyù, ngöôøi söû duïng caàn quan taâm tôùi thoâng tin veà caùc caùn boä trong taát caùc khoaûng thôøi gian. Nhö vaäy ta coù moät quan heä THOÂNG_TIN_CAÙN_BOÄ môùi theå hieân bôûi moät baûng döõ lieäu chung, laø taäp hôïp caùc baûng döõ lieäu THOÂNG_TIN_CAÙN_BOÄ trong taát caû caùc khoaûng thôøi gian, nhö sau: NGUYEÃN THÒ LAN ANH Trang 14 Khaùi nieäm veà CSDL coù tính thôøi gian MSCB HOTEN GIOI TINH QUE QUAN PHONG BAN CHUC VU LUONG HS DANG VIEN 1234 1234 1235 1235 1236 1236 1236 1236 1236 1236 1237 1237 1237 1237 1237 1237 …. NG.V.A NG.V.A NG.V.B NG.V.B NG.V.C NG.V.C NG.V.C NG.V.C NG.V.C NG.V.C NG.V.D NG.V.D NG.V.D NG.V.D NG.V.D NG.V.D ….. NÖÕ NÖÕ NAM NAM NAM NAM NAM NAM NAM NAM NÖÕ NÖÕ NÖÕ NÖÕ NÖÕ NÖÕ …… THANH HOA THANH HOA HA NOI HA NOI TP.HCM TP.HCM TP.HCM TP.HCM TP.HCM TP.HCM HA TINH HA TINH HA TINH HA TINH HA TINH HA TINH …… MOI TRUONG MOI TRUONG HOA HOC HOA HOC VAT LY VAT LY VAT LY VAT LY VAT LY VAT LY NGOAI NGU NGOAI NGU NGOAI NGU NGOAI NGU NGOAI NGU NGOAI NGU ….. CAN BO GIANG DAY CAN BO GIANG DAY CAN BO GIANG DAY CAN BO GIANG DAY GIAÛNG VIEÂN GIAÛNG VIEÂN GIAÛNG VIEÂN GIAÛNG VIEÂN PHO KHOA PHO KHOA GIANG VIEÂN GIANG VIEÂN GIANG VIEÂN GIANG VIEÂN GIANG VIEÂN GIANG VIEÂN …… 2.34 2.34 2.67 2.67 3.0 3.0 3.5 3.5 4.32 4.32 2.67 2.67 2.67 2.67 3.0 3.0 ….. KHOÂNG COÙ COÙ COÙ KHOÂNG KHOÂNG KHOÂNG KHOÂNG KHOÂNG COÙ KHOÂNG KHOÂNG KHOÂNG KHOÂNG KHOÂNG COÙ ….. coù quaùt hôn Quan heä THOÂNG_TIN_CAÙN_BOÄ môùi tính toång THÔØI GIAN [2004,2005) [2005,2006) [2004,2005) [2005,2006) [2000,2001) [2001,2002) [2002,2003) [2003,2004) [2004,2005) [2005,2006) [2000,2001) [2001,2002) [2002,2003) [2003,2004) [2004,2005) [2005,2006) quan heä THOÂNG_TIN_CAÙN_BOÄ cuõ bôûi thuoäc tính coù tính thôøi gian T. Khoaù cuûa quan heä THOÂNG_TIN_CAÙN_BOÄ thôøi gian khoâng coøn laø MSCB. Vieäc xeùt khoaù cuûa quan heä thôøi gian ta seõ ñeà caäp ôû phaàn sau. III.3 Ñònh nghóa quan heä tính thôøi gian r(RT) hay rT: Cho: RT={A1, A2,…,An} Moät quan heä r(RT) laø moät taäp höõu haïn caùc aùnh xaï töø taäp thuoäc tính RT vaøo hôïp mieàn giaù trò caùc thuoäc tính. Goïi D(RT)= D ( R ) ∪ D ( R ) ∪ D (T ) laø hôïp mieàn giaù trò caùc thuoäc tính RT Moät quan heä r(RT) (hay rT ) vôùi m aùnh xaï cho nhö sau: rT= {t1,t2,….,tm}, trong ñoù: ti laø aùnh xaï: RT Æ D(RT) Aj Æ ti(Aj) ∈ Dj (i=1,..,m; j=1,…,n) Nhö vaäy: giaù trò cuûa ti(Aj) laø giaù trò öùng vôùi khoaûng thôøi gian ti(T), noùi caùch khaùc, moïi thuoäc tính cuûa RT ñeàu xeùt giaù trò treân nhöõng khoaûng thôøi gian. III.4 Ñònh nghóa tính töông ñöông: Xeùt quan heä r(RT) hay rT NGUYEÃN THÒ LAN ANH Trang 15 Khaùi nieäm veà CSDL coù tính thôøi gian Ta noùi hai boä t, t’∈rT laø töông ñöông, KH: t ≅ t’ t ≅ t’ ⇔ (∀A ∈ R ⇒ t ( A) = t ' ( A)) YÙ nghóa: Hai boä töông ñöông neáu vaø chæ neáu giaù trò caùc thuoäc tính oån ñònh (R) cuûa chuùng gioáng nhau treân 2 boä. Ví duï: 1236 NG.V.C NAM TP.HCM VAT LY GIAÛNG VIEÂN 3.5 COÙ [2003,2004) 1236 NG.V.C NAM TP.HCM VAT LY PHO KHOA 4.32 COÙ [2004,2005) Nhaän xeùt: Coù söï truøng laép thoâng tin ôû nhöõng boä töông ñöông. Cuï theå laø truøng laép thoâng tin ôû caùc thuoäc tính oån ñònh. Coù theå xoùa bôùt caùc boä truøng laép baèng pheùp hôïp nhaát, pheùp hôïp nhaát 2 boä t’ vaø t” ∈rT (KH: ⊕ )ñöôïc ñònh nghóa nhö sau: t=t’ ⊕ t” ⇔ (t ' ≅ t" ) ∧ (∀A ∈ R : t ( A) = t ' ( A) ∪ t" ( A)) Vaäy: muoán hôïp nhaát 2 boä t’ vaø t” cuûa quan heä thôøi gian rT tröôùc heát 2 boä t’ vaø t” phaûi töông ñöông. Keát quaû cuûa pheùp hôïp nhaát laø boä t coù: giaù trò nhöõng thuoäc tính oån ñònh(R) cuûa t gioáng hai boä t’ vaø t”, giaù trò nhöõng thuoäc tính tính thôøi gian( R ) cuûa t laø hôïp cuûa 2 boä t’ vaø t”. 1 - Toång quaùt cho n boä töông ñöông t1,t2,. . .,tn laø: t= ⊕t i n YÙ nghóa: Pheùp hôïp nhaát phaân quan heä r thaønh caùc lôùp töông ñöông. Caùc phaàn töû trong moät lôùp töông ñöông coù giaù trò gioáng nhau ôû caùc thuoäc tính oån ñònh. Xeùt quan heä THOÂNG_TIN_CAÙN_BOÄ(MACB, HOTEN, GIÔÙITINH, QUEQUAN, PHONGBAN, CHUCVU, LUONGHS, DANGVIEN) Trong thöïc teá, thôøi ñieåm moät caùn boä thay ñoåi phoøng ban, chöùc vu, löônghs hay vaøo ñaûng laø khaùc nhau. Ta ñöa ra ñònh nghóa veà quan heä loàng, cho pheùp bieåu dieãn khoaûng thôøi NGUYEÃN THÒ LAN ANH Trang 16 Khaùi nieäm veà CSDL coù tính thôøi gian gian thay ñoåi giaù trò cuûa töøng thuoäc tính vaø giuùp giaûm thieåu söï truøng laép ôû nhöõng boä töông ñöông. III.5 Quan heä loàng vôùi giaù trò thôøi gian:(moâ hình khaéc phuïc) Cuõng töông töï nhö ñònh nghóa quan heä thöôøng, quan heä loàng cuõng coù taäp thuoäc tính R nhöng thuoäc tính cuûa quan heä loàng ñöôïc bieåu dieãn bôûi 1 caëp trong ñoù: • T bieåu dieãn giaù trò thôøi gian, cuï theå laø khoaûng thôøi gian. • v bieåu dieãn giaù trò cuûa thuoäc tính töông öùng vôùi khoaûng thôøi gian t. Nhaän thaáy: trong quan heä loàng khoâng coù thuoäc tính thôøi gian T ñöùng ñoäc laäp maø thuoäc tính thôøi gian ñöôïc loàng vaøo trong caùc thuoäc tính khaùc. Ví duï: xeùt moät quan heä QUAN_LY_NHAÂN_VIEÂN nhö sau: MSCB HOTEN PHONGBAN LUONGHS <[1,10],1234> <[1,10],N.V.A> <(1,4),KEÁ TOAÙN> <(1,6),3.5> <(5,10),THIEÁTBÒ> <(7,10),4.2> Nhaän thaáy: khoaù cuûa quan heä laø thuoäc tính MSCB Ta coù theå phaù quan heä loàng thaønh quan heä sau: MSCB HOTEN PHONGBAN LUONGHS <[1,10],1234> <[1,10],N.V.A> <(1,4),KEÁ TOAÙN> <(1,6),3.5> <[1,10],1234> <[1,10],N.V.A> <(5,10),THIEÁTBÒ> <(1,6),3.5> <[1,10],1234> <[1,10],N.V.A> <(5,10),THIEÁTBÒ> <(7,10),4.2> Moät nhaân vieân trong suoát quaù trình laøm vieäc coù theå laøm ôû nhieàu phoøng vaø coù nhieàu baäc löông. Baûng thöù 2 coù theå gaây ra sö thöøa döõ lieäu khi caäp nhaät. Lyù do xaûy ra tình traïng treân laø tính khoâng phuï thuoäc laãn nhau giöõa hai thuoäc tính PHONGBAN vaø LUONGHS. Ta coù 2 phuï thuoäc ña trò :MSCB →→ PHONGBAN vaø MSCB →→LUONGHS. III.6 Caùc thao taùc treân quan heä coù TTG: NGUYEÃN THÒ LAN ANH Trang 17 Khaùi nieäm veà CSDL coù tính thôøi gian Trong ñeà taøi naøy chæ xeùt giaù trò thuoäc tính thôøi gian T laø moät khoaûng thôøi gian [Ts, Te] hoaëc [Ts,Te) vaø trong taäp thuoäc tính RT coù moät thuoäc tính thôøi gian duy nhaát. Nghóa laø: xeùt caùc thuoäc tính theo moät thuoäc tính thôøi gian. Cho t, t’∈rT. Pheùp keùo theo: T t’ neáu: t= t ⊕ t’. Ta goïi t laø keùo theo t’ treân rT, KH: t ⎯⎯→ Nghóa laø: giaù trò nhöõng thuoäc tính TTG cuûa t’ phaûi laø taäp con cuûa t, t[ R ]⊃t’[ R ]. Ví duï:(*) Boä t’ cho nhö sau: 1236 NG.V.C NAM TP.HCM VAT LY GIAÛNG VIEÂN 3.0 KHOÂNG [2000,2001) TP.HCM VAT LY GIAÛNG 3.0, KHOÂNG [2000,2001), VIEÂN, 3.5, COÙ [2001,2002), PHOÙ KHOA 4.32, [2002,2003), 4.32 [2003,2004) Boä t cho nhö sau: 1236 NG.V.C NAM [2004,2005) [2005.2006) Quan heä tính thôøi gian rT: Cho r laø moät quan heä bình thöôøng, quan heä TTG rT vôùi thuoäc tính thôøi gian T theâm vaøo trong taäp thuoäc tính. Khi ñoù quan heä tính thôøi gian rT laø taäp hôïp: T ⎯→ t' } rT={t: ∃t '∈ r , t ' ≅ t : t ⎯ Nhaän xeùt: Caùc bieåu dieãn quan heä tính thôøi gian nhö trong ví duï (*) deã daãn tôùi tình traïng thoâng tin khoâng roõ raøng, vì khoâng bieát söï thay ñoåi cuûa caùc thuoâc tính öùng vôùi khoaûng thôøi gian naøo. Vì theá sau naøy, ta coù theå duøng quan heä loàng ñeå bieåu dieãn quan heä tính thôøi gian. NGUYEÃN THÒ LAN ANH Trang 18 Khaùi nieäm veà CSDL coù tính thôøi gian MSCB HOTEN GIOI TINH QUE QUAN <[2004,20 06), 1234> <[2004,2006), NG.V.A> <[2004,2006), NÖÕ> <[2004,2006), THANH HOA> <[2004,20 06), 1235> <[2004,2006), NG.V.B> <[2000,20 06), 1236> <[2000,2006), NG.V.C> <[2000,20 06), 1237> <[2000,2006), NG.V.D> <[2004,2006), NAM> <[2000,2006), NAM> <[2000,2006), NÖÕ> <[2004,2006), HA NOI> <[2004,2006), TP.HCM> <[2000,2006), HA TINH> PHONG BAN CHUC VU LUONG HS DANG VIEN <[2004,2006), MOI TRUONG> <[2004,2006), CAN BO GIANG DAY> <[2004,2006), 2.34> <[2004,2005), KHOÂNG>, <[2005,2006), COÙ> <[2004,2006), HOA HOC> <[2004,2006), CAN BO GIANG DAY> <[2004,2006), 2.67> <[2004,2006), COÙ> <[2000,2006), HOA HOC> <[2000,2004) GIAÛNG VIEÂN>, <[2004,2006), PHOÙ KHOA> <[2000,2006), NGOAI NGU> <[2000,2006), GIAÛNG VIEÂN> <[2000,2002), 3.0>, <[2002,2004), 3.5> <[2004,2006), 4.32> <[2000,2004), 2.67>, <[2004,2006), 3.0> <[2000,2005), KHOÂNG>, <[2005,2006), COÙ> <[2000,2005), KHOÂNG>, <[2005,2006), COÙ> Ví duï: Xeùt quan heä TTG- THOÂNG_TIN_CAÙN_BOÄ(MACB, HOTEN, GIÔÙITINH, QUEQUAN, PHONGBAN, CHUCVU, LUONGHS, DANGVIEN) ñöôïc bieåu dieãn döôùi daïng quan heä loàng, nhö sau: Nhaän thaáy: Thuoäc tính thôøi gian T khoâng ñöùng ñoäc laäp maø ñöôïc loàng vaøo trong caùc thuoäc tính khaùc. Ñònh nghóa taäp con: Quan heä rT1 ñöôïc goïi laø taäp con TTG cuûa quan heä rT2, KH: rT1 ⊆ rT2 Neáu: ∀ t∈rT1 ⇒ t∈rT2 (moïi boä cuûa quan heä rT1 ñeàu thuoäc rT2) Pheùp hôïp TTG: T Cho rT1 vaø rT2. Pheùp hôïp TTG, KH: r1 ∪ r2 T T r1 ∪ r2 neáu ∀t ∈(r1 ∪ r2) ⇔ (t ∈ r1) ∧ (t ∈ r2) ∧ (∃ t’∈rT1, ∃ t” t∈rT2 :t=t’ ⊕ t”) T T Pheùp hieäu TTG: T Cho rT1 vaø rT2. Pheùp hieäu TTG, KH: r1 − r2 T T r1 − r2 neáu ∀t∈ (r1 − r2) ⇔ (t∈rT1) ∧ (t∉rT2) T Nhaän xeùt: Cho rT1 vaø rT2. Pheùp giao TTG, KH: r1 ∩ r2 NGUYEÃN THÒ LAN ANH Trang 19
- Xem thêm -

Tài liệu liên quan