1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối

71 330 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 71
Dung lượng 747,61 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

niệm liên quan, trong đề tài nghiên cứu đã tìm hiểu sâu về bao đóng trong mô hình dữ liệu dạng khối và tính chất mở rộng của bao đóng trong mô hình dữ liệu dạng khối.. Mục đích nghiên cứ

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN VĂN SƠN

Nghiªn cøu BAO §ãng trong m« h×nh d÷ liÖu d¹ng khèi

LUẬN VĂN THẠC SĨ MÁY TÍNH

HÀ NỘI, 2014

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN VĂN SƠN

Nghiªn cøu BAO §ãng trong m« h×nh d÷ liÖu d¹ng khèi

Chuyên ngành: KHOA HỌC MÁY TÍNH

Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ MÁY TÍNH

HÀ NỘI, 2014

Trang 3

LỜI CẢM ƠN

Để hoàn thành luận văn này em xin chân thành gửi lời cảm ơn đến quý thầy cô trong trường Đại học Sư phạm Hà Nội 2, các thầy trong Viện Công nghệ thông tin thuộc Viện Hàn lâm Khoa học và Công nghệ Việt Nam, các anh chị thư viện Viện Công nghệ thông tin thuộc Viện Hàn lâm Khoa học và Công nghệ Việt Nam, thư viện trường Đại học Công nghệ thông tin và truyền thông – Đại học Thái Nguyên, trung tâm học liệu Đại học Thái Nguyên, thư viện Đại học Công nghệ – Đại học Quốc gia Hà Nội đã quan tâm giúp đỡ trong quá trình thực hiện đề tài Nhờ đó tôi đã tiếp thu được nhiều ý kiến đóng góp và nhận xét quý báu của quý thầy, cô thông qua các buổi trao đổi thông tin và bảo vệ đề cương

Em xin gửi lời cảm ơn sâu sắc nhất đến TS Trịnh Đình Vinh đang công tác tại trường Đại học Sư Phạm Hà Nội II đã trực tiếp hướng dẫn, định hướng chuyên môn, quan tâm giúp đỡ tận tâm chỉ bảo trong quá trình thực hiện luận văn

Em xin bày tỏ sự biết ơn sâu sắc đến gia đình đã tạo mọi điều kiện tốt nhất để em có thể hoàn thành tốt mọi công việc trong quá trình thực hiện luận văn Bên cạnh đó, em cũng xin gửi lời cảm ơn của mình tới bạn bè và đồng nghiệp, luôn quan tâm, chia sẻ, động viên em trong suốt thời gian thực hiện luận văn

Mặc dù đã rất cố gắng trong quá trình thực hiện nhưng luận văn không thể tránh khỏi những thiếu sót Em xin mong nhận được sự góp ý của quý thầy cô, quý đồng nghiệp và bạn bè

Hà Nội, ngày 22 tháng 12 năm 2014

Học viên

Nguyễn Văn Sơn

Trang 4

LỜI CAM ĐOAN

kết quả tìm hiểu và nghiên cứu của riêng tôi, đây là công trình nghiên cứu của tôi dưới sự hướng dẫn khoa học của TS Trịnh Đình Vinh Các số liệu, kết quả nêu trong luận văn là trung thực, rõ ràng Tôi cũng xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đã được chỉ rõ nguồn gốc Tôi xin chịu hoàn toàn trách nhiệm với những nội dung được viết trong luận văn này

Hà Nội, ngày 22 tháng12 năm 2014

Học viên

Nguyễn Văn Sơn

Trang 5

MỤC LỤC

LỜI CAM ĐOAN ……….………

LỜI CẢM ƠN … ……… ………

MỤC LỤC ………

BẢNG KÍ HIỆU CÁC CHỮ CÁI VIẾT TẮT……….……

DANH MỤC CÁC BẢNG ………

DANH MỤC CÁC HÌNH……… … ………

MỞ ĐẦU ……….……… 1

KẾT QUẢ ĐẠT ĐƯỢC……… 3

CHƯƠNG I : MÔ HÌNH DỮ LIỆU QUAN HỆ……… 5

1.1 Các khái niệm cơ bản……….…… …5

1.2 Các phép toán đại số trên lược đồ quan hệ ……….7

1.2.1 Phép hợp… …… ……… 7

1.2.2 Phép giao……… ……….………… 8

1.2.3 Phép trừ… ………8

1.2.4 Tích Đề - các ……… 9

1.2.5 Phép Chiếu.……… 10

1.2.6 Phép Chọn… ……… 11

1.2.7 Phép kết nối ….……… 12

1.2.8 Phép chia… ……… 14

1.3 Phụ thuộc hàm……… 14

1.4 Hệ tiên đề Armstrong……….15

Trang

Trang 6

1.5 Bao đóng của lược đồ quan hệ ……….16

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

1.5.2 Bao đóng của tập thuộc tính……….…….… 16

1.6 Khóa của lược đồ quan hệ ……… 19

1.7 Phép dịch chuyển lược đồ quan hệ………21

1.7.1 Định nghĩa ……… ……… ……… 22

1.7.2 Thuật toán dịch chuyển lược đồ quan hệ………… …23

1.7.3 Biểu diễn bao đóng của phép dịch chuyển LDQH ….24

Kết luận chương I……… ………… 25

CHƯƠNG II : MÔ HÌNH DỮ LIỆU DẠNG KHỐI………… …… 26

2.1 Khối, Lược đồ khối, Lát cắt……….… 26

2.2 Các Phép toán Đại số quan hệ trên khối……… ………….…29

2.2.1 Phép hợp ……….……… ………… 29

2.2.2 Phép giao ……… ……….….…….30

2.2.3 Phép trừ….……… …….20

2.3.4 Tích Đề - các….……… … … 31

2.2.5 Tích Đề - các theo tập chỉ số……… … 31

2.2.6 Phép chiếu.……… … … 32

2.2.7 Phép chọn….……… ……… 32

2.2.8 Phép kết nối….……… …….… 32

2.2.9 Phép chia ……… …….… …33

2.2.10 Phép nối dài……….… …34

2.3 Phụ thuộc hàm ……….……….… 34

Trang 7

2.4 Bao đóng trong mô hình dữ liệu dạng khối………… ….… 35

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

2.4.2 Bao đóng của tập thuộc tính chỉ số……….…… … 36

2.5 Khóa của khối………… ……… 38

2.6 Phép dịch chuyển lược đồ khối……… 40

2.6.1 Định nghĩa……… 40

2.6.2 Thuật toán dịch chuyển……… 42

2.6.3 Biểu diễn dịch chuyển trong lược đồ khối …………43

Kết luận chương II.……… ………45

CHƯƠNG III: TÍNH CHẤT MỞ RỘNG CỦA BAO ĐÓNG…… ……46

3.1 Tính chất của bao đóng trong mô hình dữ liệu dạng khối… 46

3.2 Tính chất mở rộng của bao đóng trong mô hình dữ………….49

3.3 Phần mềm Demo tính bao đóng cảu tập thuộc tính chỉ số.… 52

3.3.1 Giới thiệu bài toán……… 52

3.3.2 Thuật toán sử dụng trong chương trình……… 52

3.3.3 Giao diện chương trình……….……… 54

Kết luận chương III……….57

KẾT LUẬN……… 58

TÀI LIỆU THAM KHẢO……….59

Trang 8

DANH MỤC CÁC KÝ HIỆU, CHỮ CÁI VIẾT TẮT Trong luận án này dùng thống nhất các kí hiệu và các chữ viết tắt sau:

XY X∪Y (hợp của 2 tập thuộc tính X vỡ Y)

ABC [A, B, C] (tập thuộc tính gồm 3 phần tử A, B, C) Dom(A) Miền giá trị của thuộc tính A

r hoặc r(R) Khối r trên tập R

Trang 9

 Phép giao

 Phép hợp

 Không thuộc tập con

Trang 10

DANH MỤC CÁC BẢNG

Bảng 1.1 Bảng ví dụ về quan hệ r……….6

Bảng 1.2 Bảng quan hệ Sinhvien……… 6

Bảng 1.3 Bảng biểu diễn quan hệ Sinhvien1  Sinhvien2.……….….7

Bảng 1.4 Bảng biểu diễn quan hệ Sinhvien1  Sinhvien2.……… 8

Bảng 1.5 Bảng biểu diễn quan hệ Sinhvien1 – Sinhvien2.……… …9

Bảng 1.6 Bảng biểu diễn quan hệ Sinhvien2 – Sinhvien1….……… 9

Bảng 1.7 Bảng biểu diễn quan hệ r x s……… .……… 10

Bảng 1.8 Biểu diễn phép chiếu : Πmã SV, lớp, Điểm TB(sinh viên)………11

Bảng 1.9 Biểu diễn phép chọn : Điểm TB 5(Sinhvien)……… …….12

Bảng 1.10 Biểu diễn phép nối tự nhiên giữa 2 quan hệ……… 13

Bảng 1.11 Bảng quan hệ Sinhvien……… …… 15

Trang 11

DANH MỤC CÁC HÌNH

Hình 2.1 Biểu diễn khối BANHANG(R)………… …… ……… 27

Hình 2 1 Phép giao trong khối……… ……29

Hình 2.3 Phép hợp trong khối……… ….30

Hình 2.4 Phép trừ trong khối……… 30

Hình 3.1 Chương trình tìm bao đóng của tập thuộc tính chỉ số… 54

Hình 3.2 Kết quả tính bao bao đóng của tập thuộc tính chỉ số…… 55

Trang 12

MỞ ĐẦU

1 Lý do chọn đề tài:

Cơ sở dữ liệu (CSDL) là một trong những lĩnh vực được tập trung nghiên cứu và phát triển của công nghệ thông tin, nhằm giải quyết các bài toán quản lý, tìm kiếm thông tin trong những hệ thống lớn, đa dạng, phức tạp cho nhiều người sử dụng trên máy tính Từ những năm 70 của thế kỉ trước,

mô hình dữ liệu quan hệ do Edgar Frank Codd (Nhà khoa học máy tính người Anh) đưa ra với cấu trúc hoàn chỉnh đã tạo nên cơ sở nền tảng cho các vấn đề nghiên cứu lý thuyết về CSDL

Để có thể xây dựng được một hệ thống cơ sở dữ liệu tốt, người ta thường sử dụng các mô hình dữ liệu thích hợp Ngoài những mô hình được sử dụng trong hệ thống cơ sở dữ liệu đã có từ lâu và được rộng rãi trên Thế giới như: mô hình thực thể - liên kết, mô hình mạng, mô hình dữ liệu, mô hình phân cấp, mô hình quan hệ …

Trong những năm gần đây, việc nghiên cứu tìm ra các mô hình mới đáp ứng các ứng dụng phức tạp, các cơ sở dữ liệu có cấu trúc tuyến tính và phi tuyến tính được các nhà nghiên cứu trong và ngoài nước quan tâm Một trong những mô hình mới này là mô hình dữ liệu dạng khối Mô hình dữ liệu này có thể xem là một mở rộng của mô hình dữ liệu quan hệ

Để góp phần hoàn chỉnh thêm về mô hình dữ liệu dạng khối tôi chọn đề

tài là “Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối”cho luận văn của mình

Bao đóng có vai trò rất quan trọng trong cơ sở dữ liệu Với mục tiêu tìm hiểu về bao đóng trong mô hình dữ liệu dạng khối cũng như các khái

Trang 13

niệm liên quan, trong đề tài nghiên cứu đã tìm hiểu sâu về bao đóng trong mô hình dữ liệu dạng khối và tính chất mở rộng của bao đóng trong mô hình dữ liệu dạng khối

2 Mục đích nghiên cứu

Tìm hiểu khái quát về mô hình dữ liệu dạng khối sau đó đi sâu và nghiên cứu các tính chất mở rộng của bao đóng trong mô hình dữ liệu dạng khối

Trình bày và chứng minh các tính chất của bao đóng trong mô hình dữ liệu dạng khối, đặc biệt là tính chất mở rộng của bao đóng trong mô hình dữ liệu dạng khối

3 Nhiệm vụ nghiên cứu

Nghiên cứu lý thuyết về mô hình dữ liệu dạng khối Cụ thể là các tính chất mở rộng của bao đóng trong mô hình mô hình dữ liệu dạng khối

4 Đối tượng và phạm vi nghiên cứu

- Đối tượng : Bao đóng trong mô hình dữ liệu dạng khối

- Phạm vi : Các tính chất của bao đóng trong mô hình dữ liệu dạng khối

5 Phương pháp nghiên cứu

Phương pháp tổng hợp phân tích các vấn đề có liên quan đến đề tài Phương pháp lý luận

Phương pháp suy luận và chứng minh

6 Giả thiết khoa học

Phát biểu và chứng minh một số tính chất mở rộng của bao đóng trong

mô hình dữ liệu dạng khối

Trang 14

KẾT QUẢ ĐẠT ĐƯỢC TRONG LUẬN VĂN Luận văn bao gồm: Lời mở đầu, 3 chương và phần kết luận Các kết quả đạt được của luận văn được trình bầy trong chương 3

Chương I: Mô hình dữ liệu quan hệ

Chương này đã trình bày một số các khái niệm cơ bản nhất trong mô hình dữ liệu quan hệ Trình bày các phép toán cơ bản, các khái niệm về phụ thuộc hàm, bao đóng, khóa cùng với các tính chất của chúng Ngoài ra các thuật toán tìm khoá, bao đóng và phép dịch chuyển lược đồ trong mô hình dữ liệu quan hệ cũng được trình bày trong chương này

Chương II : Mô hình dữ liệu dạng khối

Nội dung chương này trình bày các khái niệm cơ bản trong mô hình dữ liệu dạng khối như : khái niệm về khối, lược đồ khối, lát cắt Trình bầy các phép toán cơ bản trên khối, khái niệm về bao đóng của tập phụ thuộc hàm, bao đóng của tập thuộc tính chỉ số, khóa của lược đồ khối cùng với các thuật toán tìm bao đóng, tìm khóa của lược đồ khối Ngoài ra chương này còn trình bầy phép dịch chuyển của lược đồ khối

Chương III : Tính chất mở rộng của bao đóng trong mô hình dữ liệu dạng khối

Phát biểu và chứng minh tính chất của bao đóng, tính chất mở rộng của bao đóng tập thuộc tính chỉ số trong mô hình dữ liệu dạng khối, xây dựng chương trình Demo minh họa thuật toán tìm bao đóng của tập thuộc tính chỉ số trong

mô hình dữ liệu dạng khối

Kết quả đạt được:

- Tìm hiểu về mô hình dữ liệu dạng khối cũng là một mở rộng tự nhiên của

mô hình dữ liệu quan hệ trong đó tìm hiểu kĩ hơn về bao đóng của tập chỉ số

và một vài tính chất cơ bản của nó trong mô hình dữ liệu dạng khối

Trang 15

- Phát biểu và chứng minh các tính chất mở rộng của bao đóng tập thuộc tính chỉ số trong mô hình dữ liệu dạng khối

- Giới thiệu bài toán và xây dựng chương trình Demo tính bao đóng của tập thuộc tính chỉ số trong mô hình dữ liệu dạng khối

Trang 16

CHƯƠNG I : MÔ HÌNH DỮ LIỆU QUAN HỆ

1.1.Các khái niệm cơ bản:

1.1.1 Thuộc tính và miền thuộc tính: [6,7]

- Thuộc tính là các đặc điểm riêng của một đối tượng, quan hệ Mỗi thuộc tính có một tên gọi và phải thuộc về một kiểu dữ liệu nhất định, kiểu dữ liệu

đó có thể là vô hướng (là các kiểu dữ liệu cơ bản như chuỗi, số, logic, ngày tháng …) hoặc các kiểu có cấu trúc được định nghĩa dựa trên các kiểu dữ liệu

có sẵn

Ví dụ : SINHVIEN (MaSV, Hoten, NgSinh, Đchi)

Đối tượngSINHVIEN có các thuộc tính mã sinh viên, họ tên, ngày sinh, địa chỉ

- Mỗi một thuộc tính có thể chỉ chọn lấy những giá trị trong một tập hợp con của kiểu dữ liệu Tập hợp các giá trị mà thuộc tính A có thể nhận được gọi là miền giá trị của thuộc tính A, thường được kí hiệu là Dom(A) hay viết tắt là

DA i

Ví dụ: Dom(MaSV) = {char (4)}; Dom(Hoten) = {char (3)};

Dom(NgSinh) = {date}; Dom(Đchi) = {‘HN’, ‘VP’, ‘BN’, };

1.1.2 Quan hệ và lược đồ quan hệ :

Trang 17

Bộ giá trị: (T001, Nguyễn Lan Anh, TIN1, 7) là một bộ

Nếu một bộ t = (d1, d2, , dm) ∈ r, r xác định trên tập thuộc tính U, X ⊆ U thì t(X) được gọi là giá trị của tập thuộc tính X trên bộ t Nếu X = {A1, A2, ,

AK) thì t.X = (d1, d2, , dK)

Lược đồ quan hệ[6,7]

Mã SV Họ và tên Lớp Điểm TB T001 Nguyễn Lan Anh TIN1 7 T002 Nguyễn Văn Bình TIN1 6 T003 Trần Thị Trang TIN2 8 T004 Lưu Văn Nam TIN3 4

Trang 18

Tât cả các thuộc tính trong một quan hệ cùng với mối liên hệ giữa chúng được gọi là lược đồ quan hệ

Lược đồ quan hệ R với tập thuộc tính U = {A1, A2, …, An} được viết là R(U) hoặc R{A1, A2, …, An}

1.2 Các phép toán đại số trên lược đồ quan hệ:

Trang 20

MaMH TenMH MaMH LTP Lập trình pascal LTP CTDL Cấu trúc dữ liệu CTDL

Cho hai quan hệ r và s bất kỳ có tập thuộc tính lần lượt là U1 và U2 với U1

U2 = Tích đề các của r và s ký hiệu là: r x s là một quan hệ trên U1 U2gồm tập tất cả các bộ ghép được từ các bộ của r và s Ta có:

Trang 21

Bảng 1.7 Biểu diễn quan hệ r x s 1.2.5 Phép chiếu[6]

Cho quan hệ r xác định trên tập thuộc tính U và X⊆U Phép chiếu của quan

hệ r trên tập thuộc tính X, kí hiệu là X(r) là tập các bộ của r xác định trên X,

Trang 22

Biểu thức chọn F được định nghĩa là một tổ hợp logic của các toán hạng, mỗi toán hạng là một phép so sánh đơn giản giữa hai biến là hai thuộc tính hoặc giữa một biến là một thuộc tính và một giá trị hằng Biểu thức chọn F cho giá trị đúng hoặc sai đối với mỗi bộ đã cho của quan hệ khi kiểm tra riêng bộ đó

` - Các phép toán so sánh trong biểu thức F: >, <, =, ≥, #, ≤

Mã SV Họ và tên Lớp Điểm TB T001 Nguyễn Lan Anh TIN1 7 T002 Nguyễn Văn Bình TIN1 6 T003 Trần Thị Trang TIN2 8

Trang 23

r s

F

Bảng 1.9 Biểu diễn phép chọn : Điểm TB 5(Sinhvien)

- Các phép toán logic trong biểu thức F:  (và),  (hoặc),  (phủ định) Cho r là một quan hệ và F là một biểu thức logic trên các thuộc tính của r Phép chọn trên quan hệ r với biểu thức chọn F, kí hiệu làδF(r) , là tập tất cả các bộ của r thoả mãn F Ta có: δF(r) = { t | tr F(t) = đúng}

= {t = (u, v) / u  r v s F(t) đúng}

Do đó, phép kết nối chính là một phép chọn trên tích đề các

Mã SV Họ và tên Lớp Điểm TB T001 Nguyễn Anh TIN1 7 T002 Nguyễn Bình TIN1 6 T003 Trần Trang TIN2 8

Mã SV Họ và tên Lớp Điểm TB T001 Nguyễn Anh TIN1 7 T002 Nguyễn Bình TIN1 6 T003 Trần Trang TIN2 8

r s

F

Trang 24

= δF(r x s) Điều kiện kết nối F là tổ hợp logic của các toán hạng trong đó mỗi toán hạng

là một phép so sánh giữa thuộc tính của r và s

Tùy theo tính chất của biểu thức điều kiện và yêu cầu của kết quả mà có thể chia phép nối thành phép nối tự nhiên, nối bằng, nối so sánh, nửa nối và tự nối Trong đại số quan hệ, các phép toán là tương đương khi chúng cho cùng kết quả Phép nối tương đương với kết quả của hai phép đại số quan hệ là phép nhân và phép hạn chế

Trang 25

Ma SV là T003 nhưng cột: Họ và tên nhận giá trị rỗng

1.2.8 Phép chia[6,7]:

Cho hai quan hệ r(U) và r(V) = {A1,A2,…,An}, V U Phép chia của quan hệ

r cho quan hệ s ký hiệu là : r ÷ s là một quan hệ trên U – V gồm các bộ t sao cho tồn tại bộ u s và ghép t với u ta được bộ thuộc r:

Họ tên Điểm M1 Điểm M2 Điểm M3

Trang 26

hiệu X Y nếu với mọi quan hệ r xác định trên R và với 2 bộ t1, t2 bất kỳ mà

t1(X) = t2(X) thì t1(Y) = t2(Y)

Ví dụ :Quan hệ SINHVIEN

T003 Trần Thị Trang Chí Linh Hải Dương 1

Bảng 1 11 Quan hệ SINHVIEN Trong quan hệ SINHVIEN, dựa vào định nghĩa phụ thuộc hàm của quan hệ ta

có : {Tinh} {Khuvuc}

{MaSV} {Hoten, Diachi, Tinh, Khuvuc}

Khái niệm phụ thuộc hàm miêu tả một loại ràng buộc (phụ thuộc dữ liệu) xảy

ra tự nhiên nhất giữa các tập thuộc tính

1.4 Hệ tiên đề Armstrong

Gọi F là tập xác định của các phụ thuộc hàm đối với lược đồ quan hệ R và

X Y là một phụ thuộc hàm X, Y R Nói rằng X Y được suy diễn logic

từ F nếu mỗi quan hệ r trên R đều thỏa mãn phụ thuộc hàm của F thì cũng thỏa mãn X Y Chẳng hạn F = {A B, B C} thì A C suy diễn logic

từ F Gọi F+ là bao đóng của F, tức là tập tất cả các phụ thuộc hàm được suy diễn logic từ F Nếu F = F+ thì F là họ đầy đủ của các phụ thuộc hàm

Để có thể xác định khóa của một lược đồ quan hệ và các suy diễn logic giữa các phụ thuộc hàm cần thiết phải tính được F+ từ F Do đó đòi hỏi phải có các

hệ tiên đề Tập các quy tắc của hệ tiên đề được Armstrong đưa ra ( 1974 ) thường được gọi là hệ tiên đề Armstrong

Hệ tiên đề Armstrong[6]

Trang 27

Trong đó ký hiệu XZ là hợp của hai tập X và Z thay cho ký hiệu X Z

1.5.Bao đóng trong lược đồ quan hệ :

1.5.1.Bao đóng của tập phụ thuộchàm[6,7]:

Định nghĩa 1.2: Cho tập phụ thuộc hàm F, bao đóng của tập phụ thuộc hàm

F ký hiệu F+: là tập lớn nhất chứa các phụ thuộc hàm được suy diễn từ các phụ thuộc hàm F

Vậy: F+ = {f | F ╞ f}

Các tính chất:

• Tính chất phản xạ: Với mọi tập phụ thuộc hàm F ta luôn có F  F+

• Tính chất đơn điệu: Nếu FG thì F+ G+

• Tính chất lũy đẳng: Với mọi tập phụ thuộc hàm F ta luôn có F++ = F+

Định nghĩa 1.3 : Cho lược đồ quan hệ R xác định trên tập thuộc tính U, X 

U Bao đóng của tập thuộc tính X ký hiệu là X+: là tập tất cả các thuộc tính A

mà X→A được suy diễn từ F Ta có: X+ = {A X  A  F+}

Trang 28

Các tính chất của bao đóng:dựa vào các tính chất của phụ thuộc hàm ta có

các tính chất của bao đóng tập thuộc tính sau :

Thuật toán tìm bao đóng :

Tính liên tiếp tập các tập thuộc tính X0,X1,X2, theo phương pháp sau:

Bước 1: X0 = X

Bước 2: lần lượt xét các phụ thuộc hàm của F Nếu Y → Z có Y ⊆ Xi thì

Xi+1 = Xi ∪ Z Loại phụ thuộc hàm Y → Z khỏi F

Bước 3: Nếu ở bước 2 không tính được Xi+1 thì Xi chính là bao đóng của X

Ngược laị lặp lại bước 2

Ví dụ: Cho lược đồ quan hệ Q(ABCDEGH) và tập phụ thuộc hàm F,

F={ f1:B → A; f 2:DA → CE ; f 3: D → H; f 4: GH → C ;f5: AC → D } Tìm bao đóng của các tập X = {AC} dựa trên F

Trang 29

X 2 = ACD ∪ CE = ACDE f 3 thoả vì X2⊇ D, X3 = ACDE ∪ H = ACDEH f 4 không thỏa, f5 không xét vì đã thỏa

Lặp lại bước 2: f2,f3 khôngxét vì đã thoả, f1,f4 không thoả,f5 không xét vì đã thỏa Trong bước này X3 không thay đổi => X+ = X3={ACDEH} là bao đóng của X

Định lý1.4: Thuật toán tìm bao đóng cho kết quả Xi = X+

Ví dụ: Cho tập thuộc tính U = {A, B, C, D, E, G, H} và tập phụ thuộc hàm F

= {A  D, AB  DE, CE  G, E  H}

Tính (AB)+F

Bước 0: X0 = AB

Bước 1: X1 = X0 {D} vì có A  D thỏa mãn điều kiện

Bước 2: X2 = X1 {E} vì có AB  DE thỏa mãn điều kiện

Bước 3: X3 = X2 {H} vì có E  H thỏa mãn điều kiện

Bước 4: X4 = X3 =ABDEH

Do đó, tất cả các phụ thuộc hàm có thể xác định từ AB:

(AB  D, AB  E, AB  H, AB  AB) Vậy (AB)+F = ABDEH

Hệ quả:

• Q là lược đồ quan hệ F là tập phụ thuộc hàm, A là thuộc tính chỉ xuất hiện

ở vế phải của các phụ thuộc hàm trong F thì X+ = (X – A)+∪ A

• Q là lược đồ quan hệ F là tập phụ thuộc hàm, X là tập con của Q+ và Y là thuộc tính chỉ xuất hiện ở vế phải của các phụ thuộc hàm trong F thì X+⊆ X

∪ Y

Đánh giá độ phức tạp tính toán : Độ phức tạp thời gian của thuật toán trên là

đa thức theo kích thước của lược đồ quan hệ

Trang 30

1.6 Khóa của lược đồ quan hệ

hệ khi và chỉ khi nó thỏa mãn 2 điều kiện:

- K+ = U

- ( K - A )+ U,  AK Các tính chất của khóa trong lược đồ quan hệ

Định lý 1.6[6] ( Đặc trưng của các thuộc tính khóa)

Cho K là 1 khóa của LĐQH a = ( U,F ) Khi đó với mọi tập con X của K ta có

X+K = X

Định lý 1.7[6]( Công thức tính giao các khóa)

Cho LĐQH a = ( U,F ) với n thuộc tính trong U và m PTH trong F Gọi UI là giao các khóa của a Khi đó có thể xác định giao các khóa bằng 1 thuật toán tuyến tính theo mn qua công thức:

F R L

L R U

Trang 31

F = { f : Aj → Bj Aj, Bj⊆ U }

A = ∪Aj và B = ∪Bj

Aj⊆ U Bj⊆ U

A ∩ B ={ Uj1 , Uj2 Ujk}

Output: Xác định một khoá K của lược đồ quan hệ

Phương pháp: Khoá của lược đồ quan hê R = < U , F > chỉ khác nhau trên các thuộc tính của A ∩ B, vì vậy chỉ cần kiểm tra và loại dần những phần tử

Ui∈A ∩ B sao cho (K\ u)+

Trang 32

(U \ Y ) = AE không là khóa của < U , F >

vì (U \ Y)+ = (AE)+ = AEDG ≠ U Đặt K = (U \ Y) ∪ (X ∩ Y) = ABCE

Vậy K = ABE là khóa (2)

Từ (1) và (2) suy ra khóa của lược đồ quan hệ trên là K1 = ACE; K2 = ABE 1.7 Phép dịch chuyển lược đồ [2,3]:

Quản lý các cơ sở dữ liệu lớn và phức tạp đòi hỏi nhiều thuật toán hữu hiệu để tính toán các đối tượng như bao đóng, khóa, phủ…Một số thuật toán tốt theo nghĩa độ phức tạp tính toán giới hạn ở các hàm tuyến tính hoặc đa thức theo chiều dài dữ liệu vào đã được công bố như thuật toán tính bao đóng của tập thuộc tính, thuật toán tìm một khóa, thuật toán xác định thành viên hay thuật toán xác định phụ thuộc hàm suy dẫn, thuật toán tìm giao các khóa, thuật toán xác định một lược đồ quan hệ có một khóa duy nhất…

Một nhận xét tự nhiên là nếu kích thước của LĐQH càng nhỏ thì các thuật toán càng phát huy hiệu quả hơn Một số hướng nghiên cứu tinh giản các các lược đồ cơ sở dữ liệu được thực hiện thông qua các phép biến đổi tương đương, chẳng hạn đưa tập phụ thuộc hàm về dạng thu gọn hoặc thu gọn tự nhiên, dạng không dư, dạng tối ưu…

Trang 33

Trong phép dịch chuyển lược đồ quan hệ, bản chất của kỹ thuật này là loại bỏ

khỏi lược đồ quan hệ ban đầu một số thuộc tính không quan trọng theo nghĩa chúng không làm ảnh hưởng đến kết quả tính toán các đối tượng đang quan tâm như bao đóng, khóa, phản khóa… Mặc dù LĐQH thu được qua phép dịch chuyển không tương đương với LĐQH ban đầu nhưng ta có thể thu được các đối tượng cần tìm bằng những phép toán đơn giản như loại bỏ hoặc thêm một

số thuộc tính Điều lý thú là sau khi loại bỏ một số thuộc tính thì một số PTH sec được loại bỏ theo, vì chúng trở thành các PTH tầm thường (có vế trái chứa vế phải) hoặc mang thông tin tiền định (là các PTH dạng → X)

1.7.1 Định nghĩa[2,3]:

Cho hai LĐQH a = (U, F), b = (V, G) và tập thuộc tính M  U, ta nói lược đồ quan hệ b nhận được từ lược đồ quan hệ a qua phép dịch chuyển theo tập thuộc tính M, nếu sau khi loại bỏ mọi xuất hiện của thuộc tính của M trong lược đồ quan hệ a thì thu được lược đồ b

Nếu sau khi thực hiện phép dịch chuyển theo M cho lược đồ quan hệ a ta thu được lược đồ quan hệ b thì ta viết : b = a\M

Thao tác loại bỏ M được thực hiện trên lược đồ quan hệ a = (U,F) để thu được lược đồ b = (V,G) như sau:

- Tính V = U\M có độ phức tạp O(n) với n là số lượng thuộc tính trong U

- Với mỗi PTH X → Y trong F tạo ra một PTH X\M → Y\M cho G Thủ tục này được kí hiệu là G = F\M Tính F\M đòi hỏi độ phức tạp O(mn) với m là số lượng PTH trong F

Như vậy b = a\M = (U\M, F\M) được thực hiện với độ phức tạp là O(mn), tức

là tuyến tính theo chiều dài của dữ liệu vào LDQH a Sau khi thực hiện thực hiện thủ tục G = F\M nếu :

- G chứa các PTH tầm thường (dạng X → Y, X  Y ) thì ta loại các PTH này khỏi G

Trang 34

- G chứa các PTH trùng lặp thì ta lược bớt các PTH này

Ví dụ : Cho LĐQH a = (U,F), U = ABCDEH, F =  AE → D, A → DH, BC

→ E, E → BC Với M = ADH, hãy xác định b = (V,G) = a\M

Ta có : V= U\ADH = ABCDEH\ADH = BCE,

G = E →  (loại),  →  (loại), BC → E, E → BC ≡ BC → E, E→ BC

Nhận thấy phép dịch chuyển lược thỏa tính hợp thành, cụ thể là nếu a là LĐQH trên tập thuộc tính U và X, Y là 2 tập con của U thì : a\(XY) = (a\X)\Y trong trường hợp X và Y là hai tập con rời nhau của U ta có :

a\XY = (a\X)\Y = (a\Y)\X

1.7.2 Thuật toán dịch chuyển lược đồ quan hệ[2,3]:

Thuật toán Translation dưới đây mô tả phép dịch chuyển một LĐQH với độ phức tạp O(mn)

Trang 35

Return (V,G);

End Translation

Thủ tục Natural_Reduced(G) đưa tập PTH về dạng thu gọn tự nhiên bằng cách loại khỏi G những PTH tầm thường (có vế trái chứa vế phải), chuyển đổi mỗi PTH về dạng có vế trái và vế phải rời nhau và gộp các PTH có cùng vế trái

1.7.3 Biểu diễn bao đóng của phép dịch chuyển LĐQH

Định lý : Cho LDQH a = (U,F) và hai tập con không giao nhau X và Y trong

U, khi đó

(XY)+F = XY+ F\X

Hệ quả : (công thức tính bao đóng cho một tập thuộc tính)

Cho LĐQH a = (U,F) và tập X  U, khi đó X+F = X()+ F\X

Ví dụ : Cho LĐQH a = (U,F), U = ABCDEH, F= {AB → D, BC → E, E → BC} Tính (AHE)+ và E+ ?

Theo hệ quả về công thức tính bao đóng cho một tập thuộc tính

• (AEH)+F = AEH()+F\AEH

Ngày đăng: 10/09/2015, 14:22

HÌNH ẢNH LIÊN QUAN

Bảng 1.1. Ví dụ về quan hệ r - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.1. Ví dụ về quan hệ r (Trang 17)
Bảng 1.3. Biểu diễn quan hệ sinhvien1 sinhvien2 - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.3. Biểu diễn quan hệ sinhvien1 sinhvien2 (Trang 18)
Bảng 1.6.Biểu diễn quan hệ Sinhvien2–Sinhvien1 - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.6. Biểu diễn quan hệ Sinhvien2–Sinhvien1 (Trang 20)
Bảng 1.7. Biểu diễn quan hệ r x s  1.2.5. Phép chiếu[6] - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.7. Biểu diễn quan hệ r x s 1.2.5. Phép chiếu[6] (Trang 21)
Bảng 1.8. Biểu diễn phép chiếu : Π mã SV, lớp, Điểm TB (sinh viên). - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.8. Biểu diễn phép chiếu : Π mã SV, lớp, Điểm TB (sinh viên) (Trang 22)
Bảng 1.9. Biểu diễn phép chọn :  Điểm TB 5 (Sinhvien) - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.9. Biểu diễn phép chọn :  Điểm TB 5 (Sinhvien) (Trang 23)
Bảng 1.10. Biểu diễn phép nối tự nhiên giữa 2 quan hệ  Bảng biểu diễn phép kết nối tự nhiên giữa quan hệ Sinhvien và bangma.Phép  nối tự nhiên ngoài tạo ra bảng sinhvien1 và có thêm dòng ứng với giá trị : - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1.10. Biểu diễn phép nối tự nhiên giữa 2 quan hệ Bảng biểu diễn phép kết nối tự nhiên giữa quan hệ Sinhvien và bangma.Phép nối tự nhiên ngoài tạo ra bảng sinhvien1 và có thêm dòng ứng với giá trị : (Trang 24)
Bảng 1. 11. Quan hệ SINHVIEN  Trong quan hệ SINHVIEN, dựa vào định nghĩa phụ thuộc hàm của quan hệ ta - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Bảng 1. 11. Quan hệ SINHVIEN Trong quan hệ SINHVIEN, dựa vào định nghĩa phụ thuộc hàm của quan hệ ta (Trang 26)
Hình 2.1: Biểu diễn khối BANHANG(R). - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 2.1 Biểu diễn khối BANHANG(R) (Trang 38)
Hình 2. 2.Phép hợp trong khối madl - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 2. 2.Phép hợp trong khối madl (Trang 40)
Hình 2. 3.Phép giao trong khối  2.2.3. Phép trừ - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 2. 3.Phép giao trong khối 2.2.3. Phép trừ (Trang 41)
Hình 2. 4.Phép trừ trong khối - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 2. 4.Phép trừ trong khối (Trang 41)
Hình 3.1.  Chương trình tìm bao đóng của tập thuộc tính chỉ số - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 3.1. Chương trình tìm bao đóng của tập thuộc tính chỉ số (Trang 65)
Hình 3.2. Kết quả tính bao bao đóng của tập thuộc tính chỉ số. - Nghiên cứu bao đóng trong mô hình dữ liệu dạng khối
Hình 3.2. Kết quả tính bao bao đóng của tập thuộc tính chỉ số (Trang 66)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w