Bỏ qua nội dung
  • TASTE OF KNOWLEDGE
    • Giới thiệu
    • -
    • TASTE OF KNOWLEDGE
    Taste of KnowlegdeTaste of Knowlegde
    • Menu
    • Office
      • Power Point
      • Excel
      • Word
    • Giao trinh
      • HTML
      • HTMLCSS
      • PHP
      • Xây dựng trang web
      • kiểm thử
        • testcase
        • tester
        • testlink
    • KHÓA HỌC
      • Phân tích và Trực quan hóa dữ liệu cùng Power BI
      • Data Analysic with Microsoft
      • ỨNG DỤNG MICROSOFT OFFICE 2019
      • Kỹ năng giảng dạy Trực Tuyến – Elearning
      • Tin học Đại Cương – Y Dược
      • Xay dựng trang Web với HTML và CSS
    • Data Science
      • Data Analysis
        • Phân tích hoạt động truyền thông với Tableau
        • Data analysic – Tableau
        • LookerStudio
      • Big Data
      • rapitminer
      • topic modeling
    • Giới thiệu
      • văn hóa
        • tản mạn
    • TỪ THIỆN – NỤ CƯỜI VIỆT
    • CHUYỂN ĐỔI SỐ
    • -
      • Trang chủ
      • Khóa học

      Lý thuyết cơ sở dữ liệu

      Chương trình giáo dục

      • 7 Sections
      • 38 Lessons
      • 1 Week
      Expand all sectionsCollapse all sections
      • Chương 1: CÁC KHÁI NIỆM CƠ BẢN
        Các khái niệm cơ bản
        5
        • 2.1
          1.1. Định nghĩa CSDL
        • 2.2
          1.2. Đối tượng sử dụng CSDL
        • 2.3
          1.3. Hệ quản trị CSDL
        • 2.4
          1.4. Mô hình CSDL
        • 2.5
          Câu hỏi bổ trợ
      • Chương 2: MÔ HÌNH THỰC THỂ LIÊN KẾT
        Mô hình thực thể liên kết
        6
        • 3.1
          2.1. Quá trình thiết kế CSDL
        • 3.2
          2.2. Mô hình thực thể – liên kết ( ER)
        • 3.3
          2.3. BƯỚC Thiết kế MÔ HÌNH ER VÀ MINH HỌA
        • 3.4
          2.4. Mô hình thực thể liên kết mở rộng (EER)
        • 3.5
          BÀI TẬP TỰ PHÂN TÍCH
        • 3.6
          TOOLS HÕ TRỢ
      • Chương 3: MÔ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ
        Mô hình cơ sở dữ liệu quan hệ
        5
        • 4.1
          3.1. Giới thiệu mô hình quan hệ
        • 4.2
          3.2. Các khái niệm của mô hình quan hệ
        • 4.3
          3.3. Các đặc trưng của quan hệ
        • 4.4
          3.4. Ràng buộc lược đồ quan hệ
        • 4.5
          3.5. Chuyển đổi mô hình ER sang mô hình CSDL quan hệ
      • Chương 4: ĐẠI SỐ QUAN HỆ
        Các phép toán trên dữ liệu
        7
        • 5.1
          4.1. Các phép toán cập nhật
        • 5.2
          4.2. Các phép toán đại số quan hệ
        • 5.3
          4.2. Hàm nhóm Các phép toán gom nhóm trên quan hệ – (tiếp theo)
        • 5.4
          4.3 Tính chất của đại số quan hệ
        • 5.5
          4.4 Truy vấn dữ liệu trong đại số quan hệ
        • 5.6
          4. 5 Tối ưu hóa quan hệ
        • 5.7
          Kiểm tra giữa kỳ
      • Chương 5: RÀNG BUỘC TOÀN VẸN
        3
        • 6.1
          5.1. Khái niệm cơ bản
        • 6.2
          5.2. Các đặc trưng của RBTV
        • 6.3
          5.3. Phân loại RBTV
      • Chương 6: PHỤ THUỘC HÀM
        9
        • 7.1
          6.1. KHái niệm phụ thuộc hàm
        • 7.2
          6.2. Hệ tiên đề Amstrong
        • 7.3
          6.3. Bao đóng
        • 7.4
          6.4. Tập phụ thuộc hàm tương đương
        • 7.5
          6.5. Phụ thuộc hàm dư thừa
        • 7.6
          6.6. phu thuộc hàm không dư thừa
        • 7.7
          6.7. Khóa của quan hệ
        • 7.8
          6.8. Tập PTH tối thiểu – Phut tối thiểu
        • 7.9
          Bài tập thực hành
      • Chương 7: CHUẨN HÓA CƠ SỞ DỮ LIỆU
        3
        • 8.1
          7.2. Phép tách – kết nối không mất thông tin
        • 8.2
          7.3. Chuẩn hóa lược đồ quan hệ
        • 8.3
          7.4. Chuẩn hóa quan hệ

      6.3. Bao đóng

      Bao đóng và bài toán thành viên

      Cho lược đồ quan hệ trên tập thuộc tính U và tập phụ thuộc hàm F, cùng phụ thuộc hàm f = X ® Y Ï F. Bài toán thành viên  giúp xác định  các quan hệ r của lược đồ có thoả f hay không?

         Để giải quyết bài toán trên ta có hai phương án:

      Phương án 1: Sử dụng định nghĩa phụ thuộc hàm, khi đó ta phải kiểm tra tất cả các quan hệ có thể có trên lược đồ quan hệ, nhưng số lượng các quan hệ là vô cùng lớn (có thể vô hạn) vì vậy không thể kiểm tra được

      Phương án 2: Sử dụng hệ tiên đề AMSTRONG để biến đổi F, nếu sau một số hữu hạn bước biến đổi ta nhận được f thì kết luận các quan hệ r trên lược đồ thoả mãn f. Tuy nhiên với phương án này trong trường hợp các quan hệ trên lược đồ  không thoả mãn f thì không thể chứng minh được.

      Như vậy cả hai phương án trên đều chưa đủ giải quyết bài toán đặt ra.

      Khái niệm bao đóng sẽ giúp ta giải quyết triệt để bài toán.

      5.2.1. Bao đóng

      a. Bao đóng của tập phụ thuộc hàm

      Cho R(U), U là tập thuộc tính và F là tập các phụ thuộc hàm trên tập thuộc tính U, tập tất cả các phụ thuộc hàm được suy dẫn ra từ tập F được gọi là bao đóng của tập phụ thuộc hàm và kí hiệu là F+, F+ được viết là:

       

      Nếu F+ = F thì F được gọi là họ đầy đủ của các phụ thuộc hàm.

           Ý nghĩa của bao đóng tập phụ thuộc hàm: Bao đóng của tập phụ thuộc hàm F là tập tất cả các phụ thuộc hàm có thể nhận được sau khi áp dụng các luật phản xạ, bắc cầu và gia tăng đối với các phụ thuộc hàm trong F.

      Để giải quyết bài toán thành viên ta chỉ cần xác định phụ thuộc hàm fi : X->Y có thuộc  F+  hay không?

      b. Bao đóng của tập thuộc tính X

      Tập tất cả các thuộc tính có thể suy diễn ra từ X nhờ hệ tiên đề Amstrong gọi là bao đóng của tập thuộc tính X, kí hiệu là X+.

      Định nghĩa: Cho một lược đồ quan hệ trên tập thuộc tính U, tập phụ thuộc hàm F và một tập thuộc tính XÍU. Bao đóng của 1 tập thuộc tính X (ký hiệu X+) là tập tất cả các thuộc tính A thuộc U sao cho phụ thuộc hàm X->AÎ F+ .

      X+F = { A | AÎ U , X ® A Î F+ }

      Các tính chất :

      1. (Phản xạ) X Í X+
      2. (Đơn điệu ) Nếu X Í Y Þ X+ Í Y+
      3. (Luỹ đẳng) X++ = X+
      4. X+ Y+ Í (XY)+
      5. (X+ Y)+ = (XY+)+ = (XY)+

      6 . X ® Y Î F+ & Y ® X Î F+  Û X+ = Y+

      1. X ® Y Î F+ Û Y Í X+

      Ý nghĩa của tính chất 7: Để giải quyết bài toán thành viên ta chỉ cần xác định phụ thuộc hàm fi : X->Y có thuộc  F+  hay không và tương đương với việc xác định Y Í X+  hay không?

      Để giải quyết yêu cầu này ta phải xác định được X+ (bao đóng của tập thuộc tính X).

      c.      Thuật toán xác định bao đóng của tập thuộc tính X (Closure(X,F)):

      Input: Tập thuộc tính X và tập phụ thuộc hàm F

      Output: Bao đóng của X+?

      Thực hiện: lần lượt tính các X0, X1,… theo các bước:

      • Bước 1: Đặt X0 = X
      • Bước 2: Lần lượt xét các phụ thuộc hàm của F nếu tồn tại pth Y ®ZÎF mà YÌXi thì Xi+1 = Xi È {Z}, ngược lại, đặt Xi+1 = Xi
      • Bước 3: Nếu ở bước 2 mà không tính được Xi+1 thì Xi chính là bao đóng của tập thuộc tính X, ngược lại lặp lại bước 2.

       

      Giả mã của thuật toán CLOSURE(X,F)

      Begin

                  X+  = X;

      Do

      Old X+ = X+ ;

      với mỗi phụ thuộc hàm Y → Z trong F thực hiện

      nếu X+⊃ Y thì  X+= X+∪ Z;

      While ( X+ = Old X+ );

      End

      Ví dụ 1: Xét lược đồ quan hệ

      R = {MãsốNV, HọtênNV, MãsốDA, TênDA, ĐịađiểmDA, Sốgiờ}

      và tập phụ thuộc hàm

      F = {MãsốNV → HọtênNV,

      MãsốDA → TênDA, ĐịađiểmDA,

      MãsốNV, MãsốDA → Số giờ}

      Tính bao đóng {MãsốNV}+, {MãsốNV, MãsốDA}+

      Giải: Áp dụng thuật toán ta có:

      {MãsốNV}+ = { MãsốNV}

      Xét F1: MãsốNV → HọtênNV nên có {MãsốNV}+ = {MãsốNV}+∪ HọtênNV

      Và kết luận: {MãsốNV}+ = {MãsốNV, HọtênNV}

      • {MãsốNV, MãsốDA}+= {MãsốNV, MãsốDA}
      • Xét F1: MãsốNV → HọtênNV nên có

      {MãsốNV, MãsốDA}+= {MãsốNV, MãsốDA}∪ HọtênNV= {MãsốNV, MãsốDA, HọtênNV}

      • Xét F2: MãsốDA → TênDA, ĐịađiểmDA nên có

      {MãsốNV, MãsốDA}+={MãsốNV, MãsốDA HọtênNV}∪ {TênDA, ĐịađiểmDA}

      ={MãsốNV, MãsốDA, HọtênNV, TênDA, ĐịađiểmDA}

      • Xét F3: MãsốNV, MãsốDA → Số giờ nên có:

      {MãsốNV, MãsốDA}+={MãsốNV, MãsốDA, HọtênNV, TênDA, ĐịađiểmDA} ∪ Số giờ

      ={MãsốNV, MãsốDA, HọtênNV, TênDA, ĐịađiểmDA, Số giờ}

      Kết luận:

      {MãsốNV, MãsốDA}+={MãsốNV, MãsốDA, HọtênNV, TênDA, ĐịađiểmDA, Số giờ}

      Ví dụ 2: Xét lược đồ quan hệ

      Cho R = (A, B, C, D, E, G) và tập phụ thuộc hàm

      F = {AB ®C, C ®A, BC ®D, ACD ®B, D ®EG, BE ®C,   CG ®BD, CE ®AG}. Tính: (BD)+

      Giải:

      X0 = BD

      • Xét phụ thuộc hàm D ® EG => thêm E và G vào X0 ó X1 = X0 ∪ EG= BDEG
      • Phụ thuộc hàm BE ® C => thêm C vào X1 ó X2 = X1 ∪ C =BCDEG
      • Phụ thuộc hàm CE ® AG => thêm A vào X2 ó X3 = X2 ∪ A = ABCDEG

      Áp dụng tất cả các phụ thuộc hàm không làm thay đổi X+, nên (BD)+ = ABCDEG

       

       


       Bài toán thành viên

      Định nghĩa: Một phụ thuộc hàm X®Y là thành viên của F nếu X®YÎ F+

      Về nguyên tắc ta sẽ tìm bao đóng F+ sau đó kiểm tra xem phụ thuộc hàm X®Y có thuộc F+ hay không nhưng việc tìm F+ là một việc tốn nhiều thời gian và công sức vì thế thay vì tìm F+ chúng ta có thể dùng thuật toán sau để kiểm tra phụ thuộc hàm X®Y có là thành viên của F hay không.

      Input: phụ thuộc hàm cần kiểm tra X®Y và tập phụ thuộc hàm F

      Output: X®Y là thành viên của F đúng hay sai

      Các bước thực hiện:

      • Bước 1: Tính X+
      • Bước 2: So sánh X+ với Y nếu Y ÍX+ thì khẳng định X ® Y là thành viên của tập phụ thuộc hàm F, ngược lại không là thành viên của F.

      Ví dụ 1:

      Cho R(ABCDE) và tập phụ thuộc hàm F= { A ® CD; C ® E; D ® BC }

      Xác định xem A ® B có là thành viên của F.

      Giải:

      • Tính A+={ACDEBC}
      • Nhận thấy B Í A+ nên khẳng định phụ thuộc hàm A ® B là thành viên của F.

       

      Ví dụ 2:

      Cho R(ABEGHI) và tập phụ thuộc hàm F= { AB ® E; AG ® I; BE ® I; E ® G; BE ® I; GI ® H; }

      Xác định xem AB ® GH có là thành viên của F.

      Giải:

      • Tính AB+={ABEIGH}
      • Nhận thấy GH Í AB+ nên khẳng định phụ thuộc hàm AB ® GH là thành viên của F.

      Để lại một bình luận Hủy

      6.2. Hệ tiên đề Amstrong
      Trước
      6.4. Tập phụ thuộc hàm tương đương
      Tiếp
      Giới thiệu
      Kiến thức cho đi là kiến thức nhận về. Những chú gõ kiến miệt mài cảm nhận hương vị của Kiến Thức mỗi ngày. Toktips
      Bài viết mới
      • 22
        Th10
        7 Trục Quản Trị Dữ Liệu Cho Doanh Nghiệp Chức năng bình luận bị tắt ở 7 Trục Quản Trị Dữ Liệu Cho Doanh Nghiệp
      • 22
        Th10
        TRỤC QUẢN TRỊ DỮ LIỆU” (Data Management Axes) Chức năng bình luận bị tắt ở TRỤC QUẢN TRỊ DỮ LIỆU” (Data Management Axes)
      • 17
        Th11
        Bảo vệ dữ liệu trong Power BI – Power BI Data Protection Chức năng bình luận bị tắt ở Bảo vệ dữ liệu trong Power BI – Power BI Data Protection
      • 14
        Th11
        Phân quyền RLS – trong Power BI Chức năng bình luận bị tắt ở Phân quyền RLS – trong Power BI
      Đăng ký nhận bản tin mới
      Bạn nhập địa chỉ email để luôn nhận được những tin bài viết mới nhất của Toktipsvn

      Lỗi: Không tìm thấy biểu mẫu liên hệ.

      • Giới thiệu
      Giangtranvn.com
      • Office
        • Power Point
        • Excel
        • Word
      • Giao trinh
        • HTML
        • HTMLCSS
        • PHP
        • Xây dựng trang web
        • kiểm thử
          • testcase
          • tester
          • testlink
      • KHÓA HỌC
        • Phân tích và Trực quan hóa dữ liệu cùng Power BI
        • Data Analysic with Microsoft
        • ỨNG DỤNG MICROSOFT OFFICE 2019
        • Kỹ năng giảng dạy Trực Tuyến – Elearning
        • Tin học Đại Cương – Y Dược
        • Xay dựng trang Web với HTML và CSS
      • Data Science
        • Data Analysis
          • Phân tích hoạt động truyền thông với Tableau
          • Data analysic – Tableau
          • LookerStudio
        • Big Data
        • rapitminer
        • topic modeling
      • Giới thiệu
        • văn hóa
          • tản mạn
      • TỪ THIỆN – NỤ CƯỜI VIỆT
      • CHUYỂN ĐỔI SỐ
      • -