Your SlideShare is downloading. ×
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
265
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Never stop improving quality www.elarion.com
  • 2. Mục Đích chẩn hóa CSDL
    • Biểu diễn đư ợc mọi quan hệ trong CSDL
    • 3. Tránh sai sót khi thêm, xóa, sửa dữ liệu
    • 4. Tránh phải xây dựng lại cấu trúc của các quan hệ khi cần đ ến các kiểu dữ liệu mới
  • 5. Giới thiệu
    • Các dạng chuẩn : Có 4 dạng chuẩn cơ bản.
      • Dạng chuẩn1 (1 Normal Form - 1NF)
      • 6. Dạng chuẩn 2 (2 Normal Form - 2NF
      • 7. Dạng chuẩn 3 (3 Normal Form - 3NF)
      • 8. Dạng chuẩn Boyce-Codd
  • 9. Dạng chuẩn 1 (1/3)
    • Định nghĩa:
      • Một lược đồ quan hệ Q được gọi là đạt chuẩn 1 nếu mọi thuộc tính của Q đều là thuộc tính đơn .
      • 10. Một lược đồ CSDL được gọi là đạt chuẩn 1 nếu mọi lược đồ quan hệ con Qi của nó đều đạt dạng chuẩn 1.
      • 11. Thuộc tính đơn :
        • Giả sử có lược đồ quan hệ Q.
        • 12. Một thuộc tính A được gọi là thuộc tính đơn nếu nó không phải là sự tích hợp của nhiều thuộc tính khác.
  • 13. Dạng chuẩn 1 (2/3)
    • Ví dụ:
      • Ta có quan hệ sau :
        • Phan_Cong( MaNV , MaPhong)
      • MaPhong không là thuộc tính đơn.
      • 14. Quan hệ Phan_Cong không đạt chuẩn 1.
      • 15. Cách khắc phục :
        • Phan_Cong( MaNV, MaPhong )
  • 16. Dạng chuẩn 1 (3/3)
      • Quan hệ Phan_Cong đã đạt chuẩn 1.
  • 17. Dạng chuẩn 2 (1/3)
    • Định nghĩa :
      • Một lược đồ quan hệ Q được gọi là đạt chuẩn 2 nếu :
        • Q đạt chuẩn 1
        • 18. Mọi thuộc tính không khóa của Q điều phụ thuộc đầy đủ vào các khóa của Q.
    • Một lược đồ CSDL được gọi là đạt chuẩn 2 nếu mọi lược đồ con Qi của nó đều đạt chuẩn 2.
  • 19. Dạng chuẩn 2 (2/3)
    • Ví dụ : Ta có quan hệ Q sau :
      • NhanVien_DuAn ( MaNV, MaDA , TenNV, TenDA, DiaDiemDA, SoGio). Với các phụ thuộc hàm:
        • F1 : MaNV, MaDU  SoGio
        • 20. F2 : MaNV  TenNV
        • 21. F3 : MaDA  TenDA, DiaDiemDA.
    • Lược đồ quan hệ Q này chưa đạt chuẩn 2 vì :
      • MaDA  TenDA, DiaDiemDA chưa đạt chuẩn 2
      • 22. MaNV  TenNV chưa đạt chuẩn 2.
  • 23. Dạng chuẩn 2 (3/3)
    • Cách khắc phục : Tách lược đồ quan hệ Q này thành các lược đồ quan hệ sau :
      • Q1 ( MaNV ,TenNV)
      • 24. Q2 ( MaDA , TenDA, DiaDiemDA)
      • 25. Q3 ( MaDA,MaNV ,SoGio)
    • Lược đồ quan hệ Q đã đạt chuẩn 2.
    • 26. Nhận xét:
      • Nếu lược đồ quan hệ Q chỉ có 1 khóa K và K chỉ có một thuộc tính thì Q đạt dạng chuẩn 2
      • 27. Một lược dồ quan hệ Q ở chuẩn 2 vẫn có thể chứa đựng sự trùng lắp thông tin
  • 28. Dạng chuẩn 3 (1/3)
    • Định nghĩa :
      • Một lược đồ quan hệ Q được gọi là đạt chuẩn 3 nếu:
        • Q đạt chuẩn 2
        • 29. Mọi thuộc tính không khóa của Q đều không phụ thuộc bắc cầu vào một khóa nào của Q.
      • Một lược đồ CSDL được gọi là đạt chuẩn 3 nếu mọi lược đồ con Qi của nó đều đạt chuẩn 3.
  • 30. Dạng chuẩn 3 (2/3)
    • Ví dụ : Xét lược đồ quan hệ sau :
      • NhanVien_DonVi ( MaNV , HoTen, NgaySinh, DiaChi, MADV, TenDV, DiaDiemDV). Với các phụ thuộc hàm:
        • F1 : MaNV  HoTen, NgaySinh, DiaChi, MaDV, TenDV, DiaDiemDV.
        • 31. F2 : MaDV  TenDV, DiaDiemDV.
      • Q chưa đạt chuẩn 3 vì các thuộc tính TenDV, DiaDiemDV phụ thuộc bắc cầu vào khóa chính.
  • 32. Dạng chuẩn 3 (3/3)
    • Cách khắc phục : Tách lược đồ Q thành các lược đồ con sau :
      • Q1 ( MaNV , HoTen, NgaySinh, DiaChi, MaDV).
      • 33. Q2 ( MADV , TenDV, DiaDiemDV).
    • Q đạt chuẩn 3
    • 34. Nhận xét:
      • Chính phụ thuộc hàm bắc cầu là nguyên nhân dẫn đến tình trạng trùng lắp thông tin.
      • 35. Dạng chuẩn 3 là tiêu chuẩn tối thiểu trong thiết kế cơ sở dữ liệu.
  • 36. Dạng chuẩn Boyce-Codd (BCNF) (1/2)
    • Là dạng chuẩn có tính đến tất cả các khóa ứng viên nên có nhiều ràng buộc hơn dạng chuẩn 3
    • 37. BCNF - Một quan hệ ở dạng chuẩn BCNF nếu và chỉ nếu mọi phần tử quyết định của các phụ thuộc hàm (nằm bên tráimũi tên) là các khóa ứng viên.
    • 38. Nhận xét:
      • Nếu 1 l ư ợc đ ồ quan hệ Q đạt dạng chuẩn BC thì cũng đạt dạng chuẩn 3 .
      • 39. Trong 1 l ư ợc đ ồ quan hệ Q đạt dạng chuẩn BC, việc kiểm tra phụ thuộc hàm chủ yếu là kiểm tra khóa nội.
  • 40. Dạng chuẩn Boyce-Codd (BCNF) (2/2)
    • Ví dụ:
      • ĐẶT_HÀNG ( SốĐH , NgàyĐH, MãKH )
        • F1 = { SốĐH  NgàyĐH, MãKH }
      • CHITIẾT_ĐH ( SốĐH, MãHH , SốL ư ợng )
        • F2 = { SốĐH, MãHH  SốL ư ợng }
    • 2 quan hệ đ ều đ ạt dạng chuẩn Boyce-Codd.
  • 41. Phương pháp phân rã (1/10)
    • Quá trình chuẩn hóa 1 l ư ợc đ ồ CSDL:
      • Nhằm mục đ ích nâng cao chất l ư ợng thiết kế
      • 42. Đư a các l ư ợc đ ồ quan hệ con từ dạng chuẩn thấp lên dạng chuẩn cao h ơ n mà tối thiểu phải là dạng chuẩn 3.
    • Ph ươ ng pháp phân rã là 1 ph ươ ng pháp dùng đ ể chuẩn hóa 1 l ư ợc đ ồ CSDL
  • 43.
    • Việc chuẩn hóa 1 l ư ợc đ ồ quan hệ hay 1 l ư ợc đ ồ CSDL phải bảo đ ảm yêu cầu: bảo toàn thông tin
    • 44. Phép phân rã Q thành Q 1 , Q 2 , … đư ợc gọi là bảo toàn thông tin nếu:
    •  T Q : T Q = T Q [Q1] |><| T Q [Q2] … |><| …
    Phương pháp phân rã (2/10)
  • 45.
    • Định lý Delobel
      • Cho l ư ợc đ ồ quan hệ Q(XYZ) và tập PTH F
      • 46. Nếu X  Y  F + thì phép phân rã Q thành 2 l ư ợc đ ồ quan hệ con: Q 1 (XY) và Q 2 (XZ) là bảo toàn thông tin
    Phương pháp phân rã (3/10)
  • 47.
    • Begin
    • 48. F* = F { f  F + / VT(t)  VP(t)  Q + }
    • 49. IF (F*   ) Then
    • 50. Begin
    • 51. B1.Chọn 1 f 0 : X  Y  F
    • 52. B2.Tạo các l ư ợc đ ồ quan hệ con Q 1 và Q 2 :
    • 53. Q 1 = X  Y
    • 54. F 1 ={ f  F + / VT(f)  VP(f)  Q 1 + }
    • 55. Q 2 = Q + Y
    • 56. F 2 = { f  F + / VT(f)  VP(f)  Q 2 + }
    • 57. B3.Phân rã đ ệ quy Q 1 và Q 2
    • 58. End
    • 59. End
    Phương pháp phân rã (4/10)
  • 60.
    • Ví dụ:
      • Q (ABCDEG) ;
      • 61. F = { AE  C, CG  A, BD  G, GA  E }
    • Nhận xét:
      • Khóa của Q là {BDA}
      • 62. BD  G  không đ ạt dạng chuẩn 2
    • Sử dụng ph ươ ng pháp phân rã
    Phương pháp phân rã (5/10)
  • 63.
    • Ví dụ:
    • Q(ABCDEG)
    • 64. f 0 : BD  G
    • 65. Q 1 (BDG) Q 2 (BDACE)
    • 66. F 1 ={BD  G} F 2 = {AE  C}
    • 67. Q 21 (AEC) Q 22 (BDAE)
    • 68. F 21 ={AE  C} F 22 ={BDA  E}
    Phương pháp phân rã (6/10)
  • 69.
    • Nhận xét:
      • Thuật toán phân rã nh ư trên là bảo toàn thông tin ( đ ịnh lý Delobel)
      • 70. Các l ư ợc đ ồ quan hệ con cuối cùng (nút lá trong cây phân rã) đ ều đạt ít nhất là dạng chuẩn 3
      • 71. Thuật toán phân rã có thể tạo ra các l ư ợc đ ồ quan hệ con không có nhiều ngữ nghĩa trong thực tế
    Phương pháp phân rã (7/10)
  • 72.
    • Nhận xét:
      • Chất l ư ợng của CSDL kết quả có phụ thuộc vào việc chọn pth f 0 ở từng b ư ớc phân rã.
      • 73. Thông th ư ờng PTH đư ợc chọn là PTH gây ra chất l ư ợng xấu của l ư ợc đ ồ quan hệ. (pth không đ ầy đ ủ, pth bắc cầu).
    Phương pháp phân rã (8/10)
  • 74.
    • Ví dụ: Xét quan hệ SANXUAT
    • 75. Quan hệ SANXUAT:
      • Có thể gây dữ liệu xấu khi cập nhật.
      • 76. Ví dụ nh ư khi 1 nhà máy đ ổi tên có thể làm cho dữ liệu thiếu nhất quán.
    Phương pháp phân rã (9/10)
  • 77.
    • Tách thành 2 quan hệ
      • NHAMAY
      • 78. NHAMAY_SANPHAM
    • Đạt đạng chuẩn BC
    Phương pháp phân rã (10/10)

×