1 / 30

CHUAÅN HOÙA CÔ SÔÛ DÖÕ LIEÄU

CHUAÅN HOÙA CÔ SÔÛ DÖÕ LIEÄU. 1. Ñaët vaán ñeà 2. Daïng chuaån 1 3. Daïng chuaån 2 4. Daïng chuaån 3 5. Daïng chuaån Boyce-Codd 6. Chuaån hoùa löôïc ñoà CSDL baèng phöông phaùp phaân raõ. 1. ÑAËT VAÁN ÑEÀ. Xeùt quan heä ÑAËT_HAØNG (SoáÑH, NgaøyÑH, MaõKH, MaõHH, SoáLöôïng ).

kovit
Download Presentation

CHUAÅN HOÙA CÔ SÔÛ DÖÕ LIEÄU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHUAÅN HOÙA CÔ SÔÛ DÖÕ LIEÄU 1. Ñaët vaán ñeà 2. Daïng chuaån 1 3. Daïng chuaån 2 4. Daïng chuaån 3 5. Daïng chuaån Boyce-Codd 6. Chuaån hoùa löôïc ñoà CSDL baèng phöông phaùp phaân raõ

  2. 1. ÑAËT VAÁN ÑEÀ Xeùt quan heä ÑAËT_HAØNG (SoáÑH, NgaøyÑH, MaõKH, MaõHH, SoáLöôïng ) Vôùi taäp Pth F = { SoáÑH  NgaøyÑH, MaõKH ; SoáÑH, MaõHH  SoáLöôïng } => Coù Truøng laép thoâng tin

  3. 1. ÑAËT VAÁN ÑEÀ Söï truøng laép thoâng tin daãn ñeán: • Taêng chí phí löu tröõ • Taêng chi phí kieåm tra RBTV • Thieáu nhaát quaùn • Vi phaïm tính toaøn veïn cuûa döõ lieäu

  4. 1. ÑAËT VAÁN ÑEÀ Toå chöùc laïi thaønh 2 quan heä nhö sau: ÑAËT_HAØNG ( SoáÑH, NgaøyÑH, MaõKH ) Vôùi F1 = { SoáÑH  NgaøyÑH, MaõKH } CHITIEÁT_ÑH (SoáÑH, MaõHH, SoáLöôïng ) Vôùi F2 = { SoáÑH, MaõHH  SoáLöôïng } => Khoâng coøn xaûy ra tình traïng truøng laép thoâng tin

  5. 1. ÑAËT VAÁN ÑEÀ Ñeå coù theå ñaùnh giaù moät caùch cuï theå chaát löôïng thieát keá cuûa moät löôïc ñoà CSDL, luùc ñaàu E.F.Codd (taùc giaû cuûa moâ hình döõ lieäu quan heä) ñöa ra 3 daïng chuaån vaø sau ñoù R.F.Boyce vaø E.F.Codd caûi tieán daïng chuaån 3 goïi laø daïng chuaån Boyce-Codd (BC) Caùc daïng chuaån ñöôïc ñònh nghóa döïa treân khaùi nieäm phuï thuoäc haøm

  6. 1. ÑAËT VAÁN ÑEÀ Muïc ñích cuûa quaù trình chuaån hoùa • Ñeå bieåu dieãn ñöôïc moïi quan heä trong CSDL • Traùnh sai soùt khi theâm, xoùa, söûa döõ lieäu • Traùnh phaûi xaây döïng laïi caáu truùc cuûa caùc quan heä khi caàn ñeán caùc kieåu döõ lieäu môùi

  7. 2. DAÏNG CHUAÅN 1 Thuoäc tính ñôn: Giaû söû coù löôïc ñoà quan heä Q. Moät thuoäc tính A cuûa Q goïi laø thuoäc tính ñôn neáu noù khoâng phaûi laø moät söï tích hôïp cuûa nhieàu thuoäc tính khaùc Ví duï 1:Moân khoâng laø thuoäc tính ñôn CHUYEÂN_MOÂN (MAÕGV, MOÂN ) MAGV MOÂN GV01 PASC, CTDL GV02 CSDL, PTTKHT

  8. 2. DAÏNG CHUAÅN 1 Ñònh nghóa: • Moät löôïc ñoà quan heä Q ñöôïc goïi laø ôû daïng chuaån 1 neáu moïi thuoäc tính cuûa Q ñeàu laø thuoäc tính ñôn • Moät löôïc ñoà CSDL ñöôïc goïi laø ôû daïng chuaån 1 neáu moïi löôïc ñoà quan heä con Qi cuûa noù ñeàu ôû daïng chuaån 1

  9. 2. DAÏNG CHUAÅN 1 Ví duï: Quan heä CHUYEÂN_MOÂN khoâng ñaït daïng chuaån 1 Khaéc phuïcCHUYEÂN_MOÂN (MAÕGV, MOÂN )

  10. 3. DAÏNG CHUAÅN 2 Phuï thuoäc ñaày ñuû: Giaû söû coù 1 löôïc ñoà quan heä Q vaø taäp phuï thuoäc haøm F. Thuoäc tính A ñöôïc goïi laø phuï thuoäc ñaày ñuû vaøo 1 taäp thuoäc tính X neáu: • A  X+F • X  A laø phuï thuoäc haøm nguyeân toá ( khoâng toàn taïi X’  X, maø X’  A )

  11. 3. DAÏNG CHUAÅN 2 Ñònh nghóa: • Moät löôïc ñoà quan heä Q ñöôïc goïi laø ôû daïng chuaån 2 neáu • Q ôû daïng chuaån 1 • Moïi thuoäc tính khoâng khoùa cuûa Q ñeàu phuï thuoäc ñaày ñuû vaøo caùc khoùa cuûa Q • Moät löôïc ñoà CSDL ñöôïc goïi laø ôû daïng chuaån 2 neáu moïi löôïc ñoà quan heä con Qi cuûa noù ñeàu ôû daïng chuaån 2

  12. 3. DAÏNG CHUAÅN 2 Ví duï: Quan heä ÑAËT_HAØNG (SoáÑH, MaõHH, NgaøyÑH, MaõKH, SoáLöôïng ) Vôùi taäp Pth F = { SoáÑH  NgaøyÑH, MaõKH ; SoáÑH, MaõHH  SoáLöôïng }  Khoâng ñaït daïng chuaån 2 Khaéc phuïc:Taùch thaønh 2 quan heä: ÑAËT_HAØNG ( SoáÑH, NgaøyÑH, MaõKH ) Vôùi F1 = { SoáÑH  NgaøyÑH, MaõKH } CHITIEÁT_ÑH (SoáÑH, MaõHH, SoáLöôïng ) Vôùi F2 = { SoáÑH, MaõHH  SoáLöôïng }

  13. 3. DAÏNG CHUAÅN 2 Nhaän xeùt • Neáu löôïc ñoà quan heä Q chæ coù 1 khoùa K vaø K chæ coù 1 thuoäc tính thì Q ôû daïng chuaån 2 • Moät löôïc ñoà quan heä Q ôû daïng chuaån 2 vaãn coù theå chöùa ñöïng söï truøng laép thoâng tin.

  14. 4. DAÏNG CHUAÅN 3 Phuï thuoäc baéc caàu: Thuoäc tính A  Q+ ñöôïc goïi laø phuï thuoäc baéc caàu vaøo taäp thuoäc tính X neáu YQ+ : • X  Y  F+ vaø Y  A  F+ • Y  X  F+ • A  (X  Y) Khi ñoù X  A ñöôïc goïi laø phuï thuoäc haøm baéc caàu

  15. 4. DAÏNG CHUAÅN 3 Ñònh nghóa: • Moät löôïc ñoà quan heä Q ñöôïc goïi laø ôû daïng chuaån 3 neáu • Q ôû daïng chuaån 2 • Moïi thuoäc tính khoâng khoùa cuûa Q ñeàu khoâng phuï thuoäc baéc caàu vaøo moät khoùa naøo cuûa Q • Moät löôïc ñoà CSDL ñöôïc goïi laø ôû daïng chuaån 3 neáu moïi löôïc ñoà quan heä con Qi cuûa noù ñeàu ôû daïng chuaån 3

  16. 4. DAÏNG CHUAÅN 3 Ví duï: Quan heä GIAÛNG_DAÏY(MaõLôùp, MaõsoáGV, TeânGV, Ñòachæ ) Vôùi taäp Pth F = { Maõlôùp  MaõsoáGV; MaõSoáGV  TeânGV, Ñòachæ }  Khoâng ñaït daïng chuaån 3 Khaéc phuïc:Taùch thaønh 2 quan heä: GIAÛNG_DAÏY(MaõLôùp, MaõsoáGV) Vôùi taäp Pth F1 = { Maõlôùp  MaõsoáGV} GIAÙO_VIEÂN(MaõsoáGV, TeânGV, Ñòachæ ) Vôùi taäp Pth F2 = {MaõSoáGV  TeânGV, Ñòachæ }

  17. 4. DAÏNG CHUAÅN 3 Nhaän xeùt • Chính phuï thuoäc haøm baéc caàu laø nguyeân nhaân daãn ñeán tình traïng truøng laép thoâng tin • Daïng chuaån 3 laø tieâu chuaån toái thieåu trong thieát keá cô sôû döõ lieäu

  18. 5. DAÏNG CHUAÅN BOYCE-CODD Ñònh nghóa: • Moät löôïc ñoà quan heä Q ñöôïc goïi laø ôû daïng chuaån Boyce-Codd (BC) neáu moïi phuï thuoäc haøm khoâng hieån nhieân cuûa F ñeàu coù veá traùi laø khoùa • Moät löôïc ñoà CSDL ñöôïc goïi laø ôû daïng chuaån BC neáu moïi löôïc ñoà quan heä con Qi cuûa noù ñeàu ôû daïng chuaån BC

  19. 5. DAÏNG CHUAÅN BOYCE-CODD Nhaän xeùt: • Neáu 1 löôïc ñoà quan heä Q ôû daïng chuaån BC thì cuõng ôû daïng chuaån 3 • Trong 1 löôïc ñoà quan heä Q ôû daïng chuaån BC, vieäc kieåm tra phuï thuoäc haøm chuû yeáu laø kieåm tra khoùa noäi

  20. Ví dụ PCGD(Malop, Mamon, MAGV) F={Malop, Mamon->MAGV; MAGV->Mamon} Phân rã PCGD(Malop, MAGV) GV(MAGV, Mamon)

  21. 5. DAÏNG CHUAÅN BOYCE-CODD Ví duï: ÑAËT_HAØNG ( SoáÑH, NgaøyÑH, MaõKH ) Vôùi F1 = { SoáÑH  NgaøyÑH, MaõKH } CHITIEÁT_ÑH (SoáÑH, MaõHH, SoáLöôïng ) Vôùi F2 = { SoáÑH, MaõHH  SoáLöôïng } => 2 quan heä ñeàu ñaït daïng chuaån Boyce-Codd.

  22. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ • Quaù trình chuaån hoùa 1 löôïc ñoà CSDL nhaèm muïc ñích naâng cao chaát löôïng thieát keá hay cuï theå hôn laø ñöa caùc löôïc ñoà quan heä con töø daïng chuaån thaáp leân daïng chuaån cao hôn maø toái thieåu phaûi laø daïng chuaån 3. • Phöông phaùp phaân raõ laø 1 phöông phaùp duøng ñeå chuaån hoùa 1 löôïc ñoà CSDL

  23. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Söï baûo toaøn thoâng tin • Vieäc chuaån hoùa 1 löôïc ñoà quan heä hay 1 löôïc ñoà CSDL phaûi baûo ñaûm 1 yeâu caàu: baûo toaøn thoâng tin • Pheùp phaân raõ Q thaønh Q1, Q2, … ñöôïc goïi laø baûo toaøn thoâng tin neáu: TQ: TQ = TQ [Q1] ►◄ TQ [Q2] … ►◄ …

  24. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Ñònh lyù Delobel Cho löôïc ñoà quan heä Q(XYZ) vaø taäp phuï thuoäc haøm F Neáu X  Y  F+ thì pheùp phaân raõ Q thaønh 2 löôïc ñoà quan heä con: Q1(XY) vaø Q2(XZ) laø baûo toaøn thoâng tin

  25. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Phöông phaùp phaân raõ: Begin F+ = F \ { f  F+ / VT(f)  VP(f)  Q+ } IF (F+  ) Then Begin B1.Choïn 1 f0: X  Y  F+ B2.Taïo caùc löôïc ñoà quan heä con Q1 vaø Q2:

  26. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Q1 = X  Y F1 ={ f  F+ / VT(f)  VP(f)  Q1+ } Q2 = Q+ \ Y F2 = { f  F+ / VT(f)  VP(f)  Q2+ } B3.Phaân raõ ñeä quy Q1 vaø Q2 End; End;

  27. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Ví duï: Cho löôïc ñoà quan heä Q(ABCDEG) vaø taäp pth F = { AE  C (f1), CG  A (f2), BD  G (f3), GA  E (f4) } • Khoùa cuûa Q laø {BDA}, {BDC} • BD  G : khoâng ñaït daïng chuaån 2 => Söû duïng phöông phaùp phaân raõ

  28. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Ví duï: Q(ABCDEG) f3 Q1(BDG) Q2(BDACE) F1={BD  G} F2 = {AE  C} Q21(AEC) Q22(BDAE) F21={AE  C} F22={BDA  E}

  29. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Nhaän xeùt: • Thuaät toaùn phaân raõ nhö treân laø baûo toaøn thoâng tin (ñònh lyù Delobel) • Caùc löôïc ñoà quan heä con cuoái cuøng (nuùt laù trong caây phaân raõ) ñeàu ít nhaát laø daïng chuaån 3 • Thuaät toaùn phaân raõ coù theå taïo ra nhöõng löôïc ñoà quan heä con khoâng coù nhieàu ngöõ nghóa trong thöïc teá

  30. 6. CHUAÅN HOÙA LÖÔÏC ÑOÀ CSDL BAÈNG PHÖÔNG PHAÙP PHAÂN RAÕ Nhaän xeùt: • Chaát löôïng cuûa CSDL keát quaû coù phuï thuoäc vaøo vieäc choïn pth f0 ôû töøng böôùc phaân raõ • Thoâng thöôøng pth ñöôïc choïn laø pth gaây ra chaát löôïng xaáu cuûa löôïc ñoà quan heä. (pth khoâng ñaày ñuû, pth baéc caàu)

More Related