Một số tính chất mở rộng của lược đồ cân bằng trong mô hình dữ liệu dạng khối... Để góp phần hoàn thiện về lý thuyết thiết kế của mô hình dữ liệu dạng khối em đã chọn đề tài “Một số tính
Trang 1======
ĐINH THỊ THỦY
MỘT SỐ TÍNH CHẤT CỦA LƢỢC ĐỒ CÂN BẰ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, 2015
Trang 2LỜI CẢM ƠN
Để hoàn thành luận văn này tôi đã nhận được sự giúp đỡ tận tình của thầy hướng dẫn khoa học, của các thầy cô trường Đại học Sư phạm Hà Nội 2 Tôi xin chân thành cảm ơn các thầy cô trường Đại học Sư phạm Hà Nội 2 đã tạo điều kiện học tập, nghiên cứu và giúp đỡ tôi rất nhiều trong quá trình làm
luận văn Đặc biệt tôi xin cảm ơn thầy PGS.TS Trịnh Đình Thắng đã tận
tình hướng dẫn, chỉ bảo tôi trong suốt quá trình học tập, nghiên cứu đề tài và giúp đỡ tôi hoàn thành bản luận văn này
Vĩnh Phúc, ngày 01 tháng 06 năm 2015
Học viên
Đinh Thị Thủy
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan đây là kết quả nghiên cứu của tôi dưới sự hướng dẫn
khoa học của PGS TS Trịnh Đình Thắng
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được
ai công bố trong bất kỳ công trình nào khác
Trang 4MỤC LỤC
LỜI CẢM ƠN 1
LỜI CAM ĐOAN 2
DANH MỤC CÁC BẢNG 5
DANH MỤC CÁC HÌNH VẼ 6
MỞ ĐẦU 8
CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ VÀ LƯỢC ĐỒ CÂN BẰNG 11
1.1 Mô hình dữ liệu quan hệ 11
1.1.1 Tổng quan về mô hình dữ liệu quan hệ 11
1.1.2 Thuộc tính và miền thuộc tính 12
1.1.3 Quan hệ, lược đồ quan hệ 12
1.1.4 Khóa của quan hệ 13
1.2 Các phép tính của đại số quan hệ 14
1.3 Phụ thuộc hàm 18
1.4 Bao đóng 19
1.5 Khoá 21
1.6 Lược đồ cân bằng trong mô hình quan hệ 23
Kết luận 27
CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI 28
2.1 Mô hình dữ liệu dạng khối 28
2.1.1 Khối, lược đồ khối 28
2.1.2 Lát cắt 30
2.2 Đại số trên khối 32
2.3 Phụ thuộc hàm trên khối 40
2.4 Bao đóng trong mô hình dữ liệu dạng khối 42
Trang 52.5 Khoá của lược đồ khối đối với tập phụ thuộc hàm Ftrên R 43
Kết luận 45
CHƯƠNG 3: LƯỢC ĐỒ CÂN BẰNG TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI 47
3.1 Lược đồ cân bằng trong mô hình dữ liệu dạng khối 47
3.1.1 Các tính chất 48
3.1.2 Thuật toán dịch chuyển lược đồ khối về dạng cân bằng 51
3.2 Một số tính chất mở rộng của lược đồ cân bằng trong mô hình dữ liệu dạng khối 56
Kết luận 59
KẾT LUẬN 60
TÀI LIỆU THAM KHẢO 61
Trang 6DANH MỤC CÁC BẢNG
Bảng 1.1 Biểu diễn quan hệ r 13
Bảng 1.2 Biểu diễn ví dụ Nhân Viên 13
Bảng 1.3 Biểu diễn quan hệ Sinh Viên 14
Bảng 1.4 Biểu diễn quan hệ , ,r s rs 15
Bảng 1.5 Bảng biểu diễn quan hệ , ,r s rs 15
Bảng 1.6 Biểu diễn các quan hệ , , \ , \ r s r s s r 16
Bảng 1.7 Biểu diễn quan hệ r , B D ( )r 17
Bảng 2.1 Biểu diễn lát cắt r(R Học kỳ I) 30 Bảng 2.2 Biểu diễn họ gồm 2 quan hệ r r 311, 2
Trang 7DANH MỤC CÁC HÌNH VẼ
Hình 2.1 Biểu diễn khối điểm học viên DiemHV ( )R 29
Hình 2.2 Biểu diễn các khối ( ), ( ).r R s R 32
Hình 2.3 Biểu diễn 2 khối ,r s khả hợp 33
Hình 2.4 Biểu diễn các khối , ,r s rs 34
Hình 2.5 Biểu diễn các khối r s r, , s 35
Hình 2.6 Biểu diễn các khối: , , \r s s r 35
Hình 2.7 Biểu diễn các khối r r, , P( ).r 37
Hình 2.8 Biểu diễn khối x4y4( )r 39
Trang 8DANH MỤC CHỮ VIẾT TẮT VÀ KÍ HIỆU
PTH :Phụ thuộc hàm
LĐQH : Lƣợc đồ quan hệ LĐCB : Lƣợc đồ cân bằng
Trang 9MỞ ĐẦU
1 Lý do chọn đề tài
Để 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 đã có một số mô hình được sử dụng trong các hệ thống cở sở dữ liệu như: Mô hình thực thể - liên kết, mô hình mạng,
mô hình phân cấp, mô hình hướng đối tượng, mô hình dữ liệu datalog và mô hình quan hệ Trong số các mô hình này thì có ba mô hình dữ liệu thường được sử dụng là mô hình phân cấp, mô hình mạng và mô hình quan hệ Đối với ba mô hình này thì mô hình quan hệ được quan tâm hơn cả Mô hình này được E Codd đề xuất năm 1970 Tuy nhiên do các quan hệ có cấu trúc phẳng
(tuyến tính) nên mô hình này chưa đủ đáp ứng đối với các ứng dụng phức tạp, các cơ sở dữ liệu có cấu trúc phi tuyến tính,…
Trong những năm gần đây, việc nghiên cứu nhằm mở rộng mô hình dữ liệu quan hệ đã được nhiều nhà khoa học quan tâm Theo hướng nghiên cứu này một mô hình dữ liệu mới đã được đề xuất đó là mô hình dữ liệu dạng khối Mô hình dữ liệu này được xem là một mở rộng của mô hình dữ liệu quan hệ
Để góp phần hoàn thiện về lý thuyết thiết kế của mô hình dữ liệu dạng
khối em đã chọn đề tài “Một số tính chất của lược đồ cân bằng trong mô
hình dữ liệu dạng khối” Trong đề tài này một số tính chất mở rộng của lược
đồ khối cân bằng đã được phát biểu và chứng minh
2 Mục đích nghiên cứu
- Tìm hiểu về mô hình dữ liệu dạng khối
- Tìm hiểu về lược đồ khối cân bằng, các tính chất của lược đồ khối cân bằng và phép dịch chuyển lược đồ khối về dạng lược đồ khối cân bằng
- Phát biểu và chứng minh một số tính chất mở rộng của lược đồ khối cân bằng
Trang 103 Nhiệm vụ nghiên cứu
- Tìm hiểu về mô hình dữ liệu quan hệ và lược đồ cân bằng trong mô hình dữ liệu quan hệ và lược đồ khối cân bằng, các tính chất của nó, phép dịch chuyển lược đồ khối về dạng cân bằng
- Tìm hiểu về mô hình dữ liệu dạng khối
- Phát biểu và chứng minh một số tính chất mở rộng của lược đồ khối cân bằng
4 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu các tính chất của lược đồ cân bằng trong mô hình dữ liệu dạng khối
- Phạm vi nghiên cứu trong mô hình dữ liệu dạng khối
5 Phương pháp nghiên cứu
Trong quá trình triển khai đề tài, chúng tôi sử dụng chủ yếu các phương pháp: Thu thập tài liệu, phân tích, suy luận, tổng hợp, đánh giá tài liệu về lược
đồ khối, mô hình dữ liệu dạng khối, lược đồ khối, lươc đồ cân bằng Từ đó đề xuất ra một số tính chất của lược đồ cân bằng trong mô hình dữ liệu quan hệ
6 Những đóng góp mới của đề tài
- Tìm hiểu mô hình dữ liệu dạng khối
- Tìm hiểu lược đồ cân bằng trên khối và các tính chất của nó
- Phát biều và chứng minh một số tính chất mở rộng lược đồ cân bằng trên khối và trên lát cắt
7 Cấu trúc của luận văn
Luận văn gồm: Lời mở đầu, ba chương nội dung, phần kết luận và tài liệu tham khảo
Chương 1: Trình bày các khái niệm cơ bản nhất về mô hình quan hệ: Trình
bày các phép toán đại số trên mô hình quan hệ, các vấn đề về phụ thuộc hàm,
Trang 11bao đóng, khóa và lược đồ cân bằng trên mô hình quan hệ
Chương 2: Giới thiệu tổng quan về mô hình dữ liệu dạng khối: Định nghĩa
khối, lược đồ khối, lát cắt, khóa của khối, các phép tính trên khối, đại số quan
hệ trên khối, phụ thuộc hàm, bao đóng trong mô hình dữ liệu dạng khối, khóa của lược đồ khối R đối với tập phụ hàm F trên R và lược đồ cân bằng trong
mô hình dữ liệu dạng khối
Chương 3: Trình bày khái niệm về lược đồ cân bằng, phát biểu và chứng
minh các tính chất của lược đồ cân bằng thuật toán chuyển đổi lược đồ khối
về dạng cân bằng khẳng định tính đúng và độ phức tạp của thuật toán chuyển đổi, mối quan hệ giữa lược đồ cân bằng trên lược đồ khối và trên lược đồ lát cắt với phép dịch chuyển lược đồ khối
Trang 12CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ
VÀ LƯỢC ĐỒ CÂN BẰNG
- Mô hình dữ liệu quan hệ là một trong những mô hình được quan tâm nhiều nhất hiện nay Nhiều tác giả đã quan tâm nghiên cứu và đã thu được các kết quả tốt Một trong các kết quả này là lược đồ cân bằng và các tính chất của nó
- Mô hình dữ liệu quan hệ và lược đồ cân bằng sẽ được trình bày trong phần dưới đây
- Để hiểu rõ hơn về mô hình dữ liệu quan hệ và lược đồ cân bằng các vấn đề này được trình bày ở chương 1 đã được nói tới trong tài liệu [5], [9], [13]
1.1 Mô hình dữ liệu quan hệ
1.1.1 Tổng quan về mô hình dữ liệu quan hệ
Khái niệm toán học làm nền tảng cho mô hình dữ liệu quan hệ là các quan hệ theo lý thuyết tập hợp Đó là tập con của tích Đề Các của một danh sách các miền, mỗi miền đơn giản là một tập các giá trị Ta có thể xem một quan hệ như một bảng, trong đó mỗi hàng là một bộ và mỗi cột là một thuộc tính
Ta có thể biểu diễn một sơ đồ thực thể - liên hệ trong mô hình quan hệ Khi đó các dữ liệu của sơ đồ thực thể - liên hệ được biểu diễn bởi hai loại quan hệ:
- Một tập thực thể E có thể được biểu diễn bởi một quan hệ mà lược đồ quan hệ của nó chứa tất cả các thuộc tính của tập thực thể đó Mỗi bộ của quan hệ biểu diễn một thực thể trong thể hiện của E
Mỗi liên hệ giữa tập E E1, 2, ,E kđược biểu diễn bởi một quan hệ có lược đồ quan hệ chứa các thuộc tính trong các khóa của E E1, 2, ,E Bằng k
Trang 13cách đặt lại tên cho các thuộc tính nếu cần, ta đảm bảo rằng không có hai tập thực thể trong danh sách có các thuộc tính cùng tên, ngay cả khi hai tập thực thể này chỉ là một.
1.1.2 Thuộc tính và miền thuộc tính
Định nghĩa 1.1
- Thuộc tính là đặc trưng của các quan hệ
- Miền thuộc tính là tập giá trị mà từ đó ta có thể rút ra các giá trị cụ thể xuất hiện trong các cột biểu diễn thuộc tính, ký hiệu: DOM (tên thuộc tính)
Ví dụ 1.1 Nhanvien : MaNV, Hoten, NgSinh, Đchi )
DOM(MaNV) = {char (4) }; DOM(Hoten) = {char (3) };
DOM(NgSinh) = {date} ; DOM(Đchi) = {„HN‟, „SL‟, „ĐB‟…}
1.1.3 Quan hệ, lược đồ quan hệ
Định nghĩa 1.2
Cho U { ,A A1 2, ,A n}là một tập hữu hạn các phần tử khác rỗng, trong
đó A i i( 1, 2, , )n là các thuộc tính Mỗi thuộc tính A có miền giá trị là i
Ta có thể xem một quan hệ như một bảng, trong đó mỗi hàng (phần tử)
là một bộ và mỗi cột tương ứng với một thành phần, gọi là thuộc tính
Biểu diễn quan hệ r thành bảng như sau:
Trang 14Bảng 1.1 Biểu diễn quan hệ r
Ví dụ 1.2
Nhân viên:
Bảng 1.2 Biểu diễn ví dụ Nhân Viên
Trong đó các thuộc tính là MaNV : mã nhân viên; HOTEN : họ
tên; NS : ngày sinh; DC : địa chỉ; KHOA : khoa
Bộ giá trị: ( 01, ,26 / 03 / 90,C A HN P, 5) là một bộ
Nếu có một bộ t( ,d d1 2,d3, ,d m)r , r xác định trên , 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
Định nghĩa 1.3
Tập tất cả các thuộc tính cần quản lý của một đối tƣợng 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 { ,A A1 2, ,A n}đƣợc viết là R A A( 1, 2, ,A hoặc ( ) n) R U , quan
hệ r xác định trên lƣợc đồ ( ) R U
Khái niệm tất cả các bộ (D D1, 2, , D n)
1.1.4 Khóa của quan hệ
Định nghĩa 1.4
Cho quan hệ r xác định trên tập thuộc tính U { ,A A1 2, ,A n}, KU
đƣợc gọi là khóa của quan hệ r nếu nhƣ với mọi t t1 2, r, t1 t2 thì tồn tại
ít nhất một thuộc tính AK sao cho t A1 t A2 và mọi K1 K, K1 không
Trang 15Bảng 1.3 Biểu diễn quan hệ Sinh Viên
Trong quan hệ sinh viên ở bảng 1.3 ta thấy khóa của quan hệ này là aS
Hai quan hệ r và s đƣợc gọi là khả hợp nếu nhƣ hai quan hệ này xác
định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị
* Phép hợp
- Cho 2quan hệ r và s khả hợp Hợp của r và s ký hiệu: rs, là
một quan hệ gồm tập tất cả các bộ thuộc r hoặc thuộc s
Trang 16- Cho hai quan hệ r và s khả hợp Giao của r và s ký hiệu: rs, là
một quan hệ gồm tập tất cả các bộ thuôc r thuộc s Ta có:
a b 2 c 2 a 2 b 1 c 2 2
Trang 17Ví dụ 1.6
r : A B C s : A B C
1
a b 1 c 1 a 1 b 1 c 1 2
a b 2 c 2 a 2 b 1 c 2 2
- Cho quan hệ r xác định trên tập thuộc tính U X là tập con của U ,
Phép hợ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 Ta có: ( )x r { t X tr}
* Phép chọn
- Phép chọn là phép toán lấy ra một tập con các bộ của quan hệ đã cho
thoả mãn một điều kiện xác định Điều kiện đó đƣợc gọi là điều kiện chọn
Trang 18hay biểu thức chọn
- Điều kiện chọn là một tổ hợp logic của một bài toán hạng trong đó mỗi toán hạng là một phép toán so sánh giữa 2thuộc tính có cùng miền giá trị hoặc giữa một thuộc tính với giá trị hằng
- F là phép toán logic: hoặc so sánh , , , , ,
- Cho quan hệ r 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: F( ),r là tập tất cả
Bảng 1.7 Biểu diễn quan hệ r , B D ( )r
Minh họa quan hệ r và phép chọn của r theo tiêu chuẩn BD
* Phép kết nối tự nhiên
Cho hai quan hệ R U và ( ) S V Đặt ( ) M U V Phép kết nối (tự nhiên) hai quan hệ ( )R U và ( ), S V kí hiệu R S , cho ta quan hệ chứa các bộ
đƣợc dán từ các bộ u của quan hệ R với mỗi bộ v của quan hệ S (sao cho
các trị trên miền thuộc tính chung M của hai bộ này giống nhau)
Trang 19của quan hệ R sẽ đƣợc ghép với mọi bộ của quan hệ S
- Kết nối bằng (Equi - Join): Là phép kết nối trong đó tất cả các phép so sánh trong điều kiện F đều là bằng
- Kết nối tự nhiên (Natural - Join): Là phép kết nối bằng trên các thuộc tính trùng tên của hai quan hệ trong đó một thuộc tính trùng tên sẽ bị loại khỏi
quan hệ kết quả, Kí hiệu : r s
* Phép chia
- Cho hai quan hệ ( )r U và ( ) s V với U { , ,A1 A n},V U Phép chia
của hai quan hệ r cho quan hệ s ký hiệu: rs là quan hệ trên U V\ gồm
các bộ t sao cho tồn tại bộ us và ghép t với u ta đƣợc bộ thuộc r :
Phụ thuộc hàm là những mối quan hệ giữa các thuộc tính trong CSDL quan hệ Khái niệm về phụ thuộc hàm có một vai trò rất quan trọng trong việc thiết kế mô hình dữ liệu Một trạng thái phụ thuộc hàm chỉ ra rằng giá trị của một thuộc tính đƣợc quyết định một cách duy nhất bởi giá trị của thuộc tính khác Sử dụng các phụ thuộc hàm để chuẩn hóa lƣợc đồ quan hệ về dạng chuẩn 3 hoặc chuẩn Boye-Codd
Định nghĩa 1.6
Cho lƣợc đồ quan hệ R xác định trên tập thuộc tính U , và X Y, U
Nói rằng, X xác định hàm Y hay Y phụ thuộc hàm vào X và kí hiệu
X Y nếu với mọi quan hệ r xác định trên R và với hai bộ bất kỳ t t1, 2R
mà t X1( )t2( )X thì t Y1( )t Y2( )
Trang 20* Các tính chất của phụ thuộc hàm
Cho lƣợc đồ quan hệ R xác định trên tập thuộc tính U { ,A A1 1, ,A n}, cho X Y Z, , , WU thì ta có một số tính chất cơ bản của các phụ thuộc hàm nhƣ sau:
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 thuộc F Vậy F( |f F| f)
Trang 216) (X Y ) (XY)(XY)
7) X Y Y X
8) X Y và Y X X Y
Thuật toán bao đóng:
Vào: Tập thuộc tính X , tập phụ thuộc hàm F và lƣợc đồ khối R
Trang 22Nếu K thỏa điều kiện ( )i (hoặc ( ))i' thì K đƣợc gọi là một siêu khóa
Thuộc tính A U đƣợc gọi là thuộc tính khóa (nguyên thủy hoặc cơ sở), nếu A có trong một khóa nào đấy A đƣợc gọi là thuộc tính không khóa, (phi nguyên thủy hoặc thứ cấp) nếu A không có trong bất kỳ khóa nào
Cho LĐQH U F, ta kí hiệu U là tập các thuộc tính khóa của K
và U là tập các thuộc tính không khóa của a 0
Dễ thấy U K U là một phân hoạch của U 0
Thuật toán tìm một khóa của LĐQH
Trang 23Cho lƣợc đồ quan hệ ( , )U F khi đó:
1 K U là một khóa khi và chỉ khi U phụ thuộc đầy đủ vào K
2 Hai khóa khác nhau của một LĐQH không bao nhau
3 Mọi LĐQH đều có ít nhất một khóa
Ví dụ: 1.9
Cho lƣợc đồ quan hệ R( , , , )A B C D và tập phụ thuộc hàm F {A
C ABDC khoá là { , }A B Khi đó thuộc tính , A B gọi là thuộc tính khoá,
còn thuộc tính ,D C gọi là thuộc tính không khóa
Trang 241.6 Lƣợc đồ cân bằng trong mô hình quan hệ
LS F RS F ABCD ABCDE
Định lý 1.4
Trang 25LĐQH thu được sau khi thực hiện thuật toán BS ta thu được một phủ thu gọn tự nhiên G của F nghĩa là G của F , nghĩa là G thỏa các tính
chấtB2B4 Ta có các nhận xét sau đây Nếu tập PTH G thỏa tính chất 3 B
thì sau khi thực hiện phép dịch chuyển G:G M\ tính chất 3 vẫn được bảo toàn Vậy 3B là bất biến của vòng lặp While trong thuật toán BS Nếu G có chứa PTH tầm thường thì PTH đó chỉ có thể có dạng X bởi vì nếu có
X Y và X Ythì theo tính chất 3B ta suy ra X Y Y
Từ lần lặp thứ hai trở đi, tại bước 4.2 của thuật toán sau khi loại bỏ các
PTH dạng X khỏi G các tập V và RS G( ) không thay đổi, cụ thể là đẳng thức V RS G( ) vẫn bảo toàn, tuy nhiên tập LS G có thể bị giảm đi ( )như vậy là sau bước 4.2 tính chất B1có thể bị vi phạm Vòng lặp While có nhiệm vụ cân bằng ba tập ,V LS G( ) và RS G( ), trong đóV RS G( ) Muốn vậy trước hết phải tính lượng chênh lệch M :V LS G\ ( ) tại bước 4.4 Theo
bổ đề về các thuộc tính phi nguyên thủy ta có M U0 Nếu M ta tiếp tục dịch chuyển lược đồ b( , )V G theo lượng chênh lệch M Vì M U0nên tập khóa Key ( )b luôn luôn được bảo toàn Vì LĐQH lúc ban đầu là hữu hạn
và các phép dịch chuyển đều thu nhỏ kích thước của các tập ,V LS và RS
nên đến một lúc nào đó ta phải thu được điều kiện kết thúc vòng lặp cụ thể là
M Ta chỉ cần chứng minh rằng khi kết thúc vòng lặp tức là khi M
ta sẽ thu được lược đồ thỏa mãn tính chất 1.B Thật vậy, từ M ta suy
raV LS G( ), kết hợp với bất biến V RS G( ) của vòng lặp ta thu được tính chấtB1:
LS G RS G
Nhận xét:
Ngoài tính chấtB1B4, lược đồ cân bằng (LĐCB) có những tính chất sau đây:
Trang 26B Nếu tập PTH F trong LĐQH a( , )U F ở dạng thu gọn tự nhiên
và chỉ có một PTH thì a không thể là LĐCB Thật vậy, nếu F {X Y} và
F ở dạng thu gọn tự nhiên thìLS F( )X Y RS F( ), vi phạm tính chất 1
B
6
B Từ tính chất 5 B ta suy ra LĐQH chỉ có một thuộc tính thì không
thể là LĐCB Thật vậy, gọi thuộc tính duy nhất là A, ta thấy chỉ có 4 khả năng tạo các PTH sau đây:
Trang 27Mọi LĐQH a( , )U F đều đƣợc đƣa về dạng cân bằng b( , )V G thỏa tính chất:
Key a U Key b
Trong đó U là giao các khóa của a Thuật toán dịch chuyển có độ I
phức tạp đa thức theo chiều dài dữ liệu vào 2
là Key B( ) { , }. B C Từ đây suy ra Key a( )U i , Key b( ) AH
{ , } {B E AHB AHE, }
Định nghĩa: 1.10
Cho (M, ) là một tập hữu hạn có thứ tự bộ phận Phần tử m trong M
đƣợc gọi là cực tiểu nếu từ xm và xM ta luôn có xm Ta kí hiệu ( )
MIN M là tập các phần tử cực tiểu của M Dễ thấy rằng với mỗi phần tử x .trong M luôn tồn tại một phần tử m trong MIN M thỏa ( ) M x
Trang 28Với mỗi họ các tập con của một tập hữu hạn U cho trước ta xét thứ tự
bộ phận
Từ thời điểm này trở đi ta luôn giả thiết rằng mọi LĐQH ( , )U F đều có tập thuộc tính U hữu hạn và không rỗng, tập PTH F không rỗng và được cho ở dạng thu gọn tự nhiên tức là thỏa các tính chất B2B4
1 A ACEHBD U Vậy A là khóa của a
2 E EBCU Vậy E không phải là khóa của a
3 (BD) BDC U Vậy BD không phải là khóa của a
Kết luận
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ệ Làm rõ các phép tính đại số quan hệ, 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 lược đồ quan hệ, các thuật toán tìm khoá, bao đóng và lược đồ cân bằng trong mô hình quan hệ cũng được trình bày
Mô hình dữ liệu quan hệ có tính độc lập dữ liệu cao, dễ dàng sử dụng
và còn cho phép dễ dàng mô phỏng các hệ thống thông tin đa dạng trong thực tiễn
Trang 29CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI
Để mở rộng và khắc phục phần nào những nhược điểm của mô hình quan hệ nói trên, chương này đưa ra một mô hình cơ sở dữ liệu mới gọi là mô hình cơ sở dữ liệu dạng khối Mô hình này giúp biểu diễn thế giới thực trong quá trình vận động một cách tự nhiên hơn
Các vấn đề được trình bày ở chương 2 đã được nói trong các tài liệu [10], [13]
2.1 Mô hình dữ liệu dạng khối
2.1.1 Khối, lược đồ khối
Khái niệm toán học làm nền tảng cho mô hình cơ sở dữ liệu dạng khối (gọi tắt là mô hình khối) là các khối hiểu theo nghĩa của lý thuyết tập hợp Khối được định nghĩa như sau:
Định nghĩa 2.1
Gọi R( ;id A A1, 2, A n) là một bộ hữu hạn các phần tử, trong đó id là
tập chỉ số hữu hạn khác rỗng, A i i( 1 )n là các thuộc tính Mỗi thuộc tính ( 1 )
Ta kí hiệu khối đó là ( )r R hoặc r id A A( ; 1, 2, ,A , đôi khi nếu không n)
sợ nhầm lẫn ta kí hiệu đơn giản là r
Khi đó khối ( )r R được gọi là có lược đồ khối R Như vậy trên cùng một lược đồ khối R ta có thể xây dựng được nhiều khối khác nhau
Ví dụ 2.1: Ta xây dựng khối điểm học viên kí hiệu DiemHV ( )R hình 2.1
Trang 30để quản lý điểm của học viên trong một trường học như sau:
Cho lược đồ khối R( ;id A A A A A1, 2, 3, 4, 5), trong đó: id = {Học kỳ I, Học kỳ II , và các thuộc tính là A = MaHV (mã học viên), 1 A2= TenHV (tên học viên), A = GT (giới tính), 3 A4= Triet (triết), A = Anh (anh) 5
Với khối DiemHV ( )R ở hình 2.1, ta thấy nó gồm 3 phần tử: t t t 1, 2 3,
Hình 2.1 Biểu diễn khối điểm học viên DiemHV ( )R
Trang 31Cho R( ;id A A1, 2, ,A n), ( )r R là một khối trên R Với mỗi xid ta
kí hiệu (r R là một khối với x) R x ({x}; ,A A1 2, ,A n) sao cho:
Khi đó (r R đƣợc gọi là một lát cắt trên khối ( ) x) r R tại điểm x
Ví dụ 2.2: Với khối DiemHV ( )R đã cho ở trên, R( ;id A A1, 2, A A A3, 4, 5)
Trang 32gồm một phần tử thì ( )r R trở thành một quan hệ
Như vậy mỗi quan hệ r A A( 1, 2, ,A là một trường hợp đặc biệt của n)khối, đó chính là khối ( )r R với R({ };x A A1, 2, ,A n)
Mệnh đề 2.2
Cho lược đồ khốiR( ;id A A1, 2, ,A n), ( )r R là một khối trên R, khi
đó tồn tại một họ quan hệ duy nhất biểu diễn họ { ( )r R x x id } các lát cắt của khối ( )r R Ngược lại không đúng, nghĩa là với một họ quan hệ cho trước biểu diễn họ các lát cắt của một khối nào đó thì khối tìm được không duy nhất Chứng minh: Với khối ( )r R cho trước thì họ quan hệ phải tìm chính là họ
a b 3' c 3'
Bảng 2.2 Biểu diễn họ gồm 2 quan hệ r r1, 2.Khi đó ta có chẳng hạn các khối sau đây nhận họ hai quan hệ { , }r r nói trên 1 2
là họ các lát cắt của nó: