Mễ HèNH QUAN HỆ

Một phần của tài liệu Giáo trình phân tích và thiết kế hệ thống thông tin (Trang 127 - 134)

III.1. Gii thiu

Mụ hỡnh quan hệ do Coodd đề xuất năm 1970, với cỏc ưu điểm: Đơn giản: cỏc dữ liệu được biểu diễn dưới dạng duy nhất, là quan hệ, tức là cỏc bảng giỏ trị, khỏ tự nhiờn và dễ hiểu đối với người dựng khụng chuyờn tin học. Chặt chẽ: cỏc khỏi niệm được hỡnh thức hoỏ cao, cho phộp ỏp dụng cỏc cụng cụ toỏn học, cỏc thuật toỏn. Trừu tượng hoỏ cao: mụ hỡnh chỉ dừng ở mức quan niệm, nghĩa là độc lập với mức vật lý, với sự cài đặt, với cỏc thiết bị. Nhờ đú làm tớnh độc lập giữa dữ liệu và chương trỡnh cao. Cung cấp cỏc ngụn ngữ truy cập dữ liệu ở mức cao (như SQL..) dễ sử dụng và trở

thành chuẩn. Ở đõy ta sử dụng mụ hỡnh quan hệ như bước tiếp nối để hoàn chỉnh cỏc lược đồ dữ liệu đó lập theo mụ hỡnh ER.

III.2. Cỏc định nghĩa cơ bn

a. Bng quan h

Trong toỏn học người ta định nghĩa quan hệ như sau

Cho D1, D2,..., Dn là n miền cỏc giỏ trị, khụng nhất thiết khỏc nhau. Theo định nghĩa toỏn học ta cú: Tớch đề cỏc của cỏc tập D1, D2,..., Dn được ký hiệu là n D D D1ì 2 ì ì là tập cỏc bộ n của dóy sắp thứ tự (d1,d2, ,dn) trong đú diDi với i = 1,n. Núi cỏch khỏc ( ) {d d d d D i n} D D D1ì 2 ì ì n = 1, 2, , n ii với =1,2, , Một quan hệ R trờn cỏc miền D1, D2,..., Dn là một tập con của tớch Đềcỏc n D D D1ì 2 ì ì , ký hiệu là RDD2 ì ìDn. Nếu viết tất cả cỏc bộ n của quan hệ R, mỗi bộ trờn một dũng, cỏc thành phần cựng vị trớ trờn cỏc bộđược giúng thẳng đứng với nhau, ta cú một bảng hai chiều với: số n cỏc cột được gọi là cấp của quan hệ, số m cỏc dũng được gọi là bản số của quan hệ.

Vớ dụ. Cho D1 là tập người và D2 là tập cỏc số nguyờn dương. Quan hệ

2 1

1 D D

D

R ⊆ ì ì , trong đú mỗi bộ <a, b, c> diễn tả một cuộc hụn nhõn (anh a lấy chị b vào năm c) cú thể biểu diễn thành bảng như sau

Cột thứ nhất Cột thứ hai Cột thứ ba

Hải Hạnh 1975

Quỳnh Nga 1956

Hoà Cỳc 1980

Theo định nghĩa toỏn học về quan hệ, cỏc miền D1, D2,..., Dn là cú thứ tự. Chỳng khụng thể trao đổi vị trớ cho nhau, vỡ vai trũ của chỳng trong sự diễn tả ý nghĩa của quan hệ là gắn với vị trớ. Chẳng hạn ở vớ dụ trờn cột thứ nhất được diễn tả là chồng, cột thứ hai được diễn tả là vợ và cột thứ ba được diễn tả là năm kết hụn. Trỏo đổi vị trớ sẽ làm ý nghĩa của quan hệ bị sai lạc.

Trong tin học, ta xem ý nghĩa của mỗi cột là được giải thớch bởi tờn của cột đú (thuộc tớnh) chứ khụng phải bởi vị trớ của cột đú. Khi đú

Quan hệ là một bảng dữ liệu hai chiều cú n cột được gọi là cỏc thuộc tớnh mụ tả của bảng quan hệ, m dũng được gọi là cỏc bản ghi thể hiện dữ liệu của bảng quan hệ.

Vớ dụ Chồng Vợ Năm kết hụn Hải Hạnh 1975 Quỳnh Nga 1956 Hoà Cỳc 1980 b. Lược đồ quan h

Khỏi niệm. Một lược đồ quan hệ là sự hợp thành của hai yếu tố một cấu trỳc gồm tờn quan hệ và một danh sỏch cỏc thuộc tớnh (mỗi thuộc tớnh gắn với một miền), thường cú dưới dạng R(A1, A2, ..., An). Một tập hợp cỏc ràng buộc toàn vẹn, tức là cỏc điều kiện mà mọi quan hệ trong lược đồđều phải thoả món.

Như vậy, cú thể núi lược đồ quan hệ là một khuụn mẫu, hay núi đỳng hơn là một cỏi lọc, cho phộp thiết lập một họ cỏc quan hệ cựng ngữ nghĩa. Vớ dụ. Lược đồ quan hệ SINH VIấN(Mó sinh viờn, họ tờn, ngày sinh,...)

Ràng buộc toàn vẹn. Là điều kiện ràng buộc đối với giỏ trị của một hay nhiều thuộc tớnh. Cỏc thuộc tớnh của một thực thể trong thế giới thực khụng phải khi nào cũng được phộp nhận những giỏ trị tuỳ ý. Trong một số trường hợp giỏ trị của thuộc tớnh phải chịu những ràng buộc mà ta gọi là cỏc ràng buộc toàn vẹn. Vớ dụ: Trong quan hệ bảng chấm cụng: số giờ >= 0; Nhõn viờn: năm tuyển dụng > năm sinh + 17

Tỏc dụng. Đảm bảo tớnh hợp lý trong thế giới thực của cỏc thực thể trong mụ hỡnh. Trong hệ thống thụng tin, giỳp hệ thống phỏt hiện những sai lệch trong thu thập, xử lý và truyền thụng tin. Trở thành những kiểm soỏt để sàng lọc cỏc giỏ trị khụng hợp lý trong hệ thống tin học hoỏ sau này.

Cỏc loại ràng buộc toàn vẹn: miền giỏ trị, giỏ trị 0, tương hợp về giỏ trị, định danh.

c. So sỏnh quan h vi kiu thc th hay kiu liờn kết

Trong mụ hỡnh ER, mỗi kiểu thực thể là một tập hợp cỏc thực thể được mụ tả bởi cựng một tập hợp cỏc kiểu thuộc tớnh. Vậy nếu liệt kờ tất cả cỏc thực thể đú với cỏc giỏ trị thuộc tớnh của chỳng, ta cú một bảng hai chiều, trong đú mỗi cột tương ứng một kiểu thuộc tớnh, mỗi dũng diễn tả một thực thể. Ta gọi đú là biểu diễn bảng của kiểu thực thể (hay kiểu liờn kết), và ta thấy đú chớnh là một quan hệ.

Tuy nhiờn biểu diễn bảng của kiểu thực thể ớt khi được làm rừ, vỡ trong mụ hỡnh hoỏ ớt khi người ta phải quan tõm cụ thể tới cỏc giỏ trị thuộc tớnh. Bởi vậy thay vỡ một bảng, ta thường biểu diễn kiểu thực thể (hay kiểu liờn kết đó thực thể hoỏ) dưới dạng một hỡnh chữ nhật chứa tờn và danh sỏch cỏc kiểu thuộc tớnh. So sỏnh với mụ hỡnh quan hệ, thỡ đú chớnh là một lược đồ quan hệ.

Khỏch hàng SH – KH Tờn KH Địa chỉ KH Tài khoản KH SH - KH 00324 Nguyễn văn An 50 Phương Mai 12345678

Tờn KH 00986 Hoàng thị Thanh 27 Trương Định 98754632 Địa chỉ KH 00456 Trần Xuõn Thu 30 Phố Huế 17349028 Tài khoản KH 00245 Hà Hải Anh 01 Hàng Bài 91230456

KHÁCH HÀNG (SH - KH, Tờn KH, Địa chỉ KH, Tài khoản KH)

Nhưng ngược lại, phải chăng mọi quan hệđề cập trong mụ hỡnh quan hệđều là kiểu thực thể (hay kiểu liờn kết đó thực thể hoỏ) ? Khụng phải như vậy. Quan hệ cú ý nghĩa rộng lớn hơn, cú khi là phức tạp và thậm chớ rối rắm hơn.

III.3. Ph thuc hàm

a. Định nghĩa

Cho một tập cỏc quan hệ Ri (i = 1, 2, ..., n). Giả sử G1 và G2 là hai nhúm thuộc tớnh luụn cú mặt trong mọi Ri. G1 ∩G2 =∅. Tồn tại một phụ thuộc hàm giữa G1 và G2 (hay G1 xỏc định G2, G2 phụ thuộc hàm vào G1), ký hiệu G1 → G2 nếu: Với mọi giỏ trị của G1 ta luụn xỏc định được 1 giỏ trị duy nhất của G2 (trong mọi Ri). Trong đú G1 là nguồn, G2 là đớch.

b. Ph thuc hàm sơ cp, trc tiếp, chớnh quy ca quan h

Phụ thuộc hàm trực tiếp 2 1 G G → trực tiếp nếu khụng tồn tại G3 sao cho G1 →G3, G3 →G2. Phụ thuộc hàm chớnh quy 2 1 G G → chớnh quy nếu G2 chỉ cú một thuộc tớnh.

III.4. Cỏc dng chun ca quan h

a. Khuyết tt ca lược đồ quan h

Khi thiết kế một hệ thống thụng tin với mụ hỡnh quan hệ, người thiết kế ban đầu cú thể tuỳ tiện gom nhúm cỏc thuộc tớnh thành cỏc lược đồ quan hệ theo nhận thức chủ quan của mỡnh đối với thực tế. Cỏc lược đồ quan hệ như vậy thường ẩn chứa một số biểu hiện chưa tốt, gọi là cỏc khuyết tật. Cỏc khuyết tật này lại thường liờn quan tới cỏc phụ thuộc hàm giữa cỏc thuộc tớnh của lược đồ.

Xột bảng quan hệ sau CHẤM CễNG

Mó - CN SH - Mỏy Thời gian SH - PX Trưởng - PX

C1 m1 10 p1 Hải C1 m2 10 p1 Hải C2 m3 50 p2 Hà C3 m5 100 p3 Thu C3 m4 30 p2 Hà C2 m2 20 p1 Hải

Sự dư thừa thụng tin: đú là sự lặp lại cựng một thụng tin nhiều lần, ở nhiều chỗ. Trong bảng quan hệ trờn ta thấy vỡ SH - Mỏy →→→→ SH - PX, cho nờn cặp giỏ trị (m2, p1) bị lặp lại 2 lần; SH - PX →→→→ Trưởng - PX, cho nờn cặp giỏ trị (p1, Hải) bị lặp lại 3 lần, cặp (p2, Hà) lặp lại 2 lần.

Khuyết tật khi cập nhật: khi muốn điều chỉnh một thụng tin, do thụng tin đú xuất hiện ở nhiều chỗ của quan hệ, ta phải tỡm kiếm chỳng gõy mất thời gian. Trong bảng quan hệ trờn nếu muốn sửa (p1, Quang) ta phải duyệt toàn bộ cỏc bộ quan hệ và chữa ở 3 chỗ.

Khuyết tật khi loại bỏ một bộ: khi loại bỏ một bộ của quan hệ, cú khả năng ta sẽđỏnh mất một thụng tin phụ (thể hiện bằng một phụ thuộc hàm) chứa trong bộ đú. Vớ dụ, khi cụng nhõn C3 chết → khụng cần chấm cụng cho anh ta nữa → xoỏ cỏc dũng thứ tư và thứ năm ra khỏi quan hệChấm cụng; nhưng sau đú thỡ thụng tin (p3, Thu) sẽ khụng cũn trong CSDL nữa.

Khuyết tật khi bổ sung thụng tin: khi ta muốn bổ sung một thụng tin phụ chỉ chiếm một phần của một bộ, mà cỏc giỏ trị khỏc trong bộ chưa cú, ta chưa thể bổ sung được. Vớ dụ, nhà mỏy thờm phõn xưởng mới p4, với trưởng phõn xưởng là An → ta cần bổ sung (p4, An) vào CSDL, nhưng lỳc đú phải đợi đến khi cú cụng nhõn làm việc thực sựđược chấm cụng thỡ thụng tin về PX mới được bổ sung.

Cần cú một quy tắc để chuẩn hoỏ quan hệ→ cỏc dạng chuẩn.

b. Định nghĩa cỏc dng chun

Quan hệ chuẩn hoỏ: Quan hệ R là chuẩn hoỏ nếu số cỏc thuộc tớnh trong mọi bộ giỏ trị là như nhau. Trong quan hệ chuẩn hoỏ khụng cũn tồn tại nhúm cỏc thuộc tớnh lặp lại.Khụng cú cỏc thuộc tớnh cú nhiều giỏ trị.

Dạng chuẩn 1 : (1 NF) Mọi quan hệ chuẩn hoỏ đều ở dạng chuẩn 1. Một quan hệđược gọi là ở dạng chuẩn 1 theo nghĩa chặt, nếu R chuẩn hoỏ. Cú tồn tại một phụ thuộc hàm mà nguồn là 1 phần của khoỏ (cú nghĩa là tồn tại những phụ thuộc hàm khụng sơ cấp).

Dạng chuẩn 2 : (2 NF).Quan hệ R ở dạng chuẩn 2 theo nghĩa chặt, nếu R ở dạng chuẩn 1, mọi phụ thuộc hàm đều là sơ cấp và cú tồn tại phụ thuộc hàm giỏn tiếp.

Dạng chuẩn 3 : (3 NF). Quan hệ R ở dạng chuẩn 3 theo nghĩa chặt, nếu R ở dạng chuẩn 2, mọi phụ thuộc hàm đều là trực tiếp. Cú tồn tại cỏc phụ thuộc hàm cú nguồn là 1 thuộc tớnh khụng khoỏ, đớch là 1 thuộc tớnh khoỏ.

Dạng chuẩn Boyce - Codd : Quan hệ R ở dạng chuẩn Boyce - Codd theo nghĩa chặt, nếuR ở dạng chuẩn 3. Khụng tồn tại cỏc phụ thuộc hàm cú nguồn là 1 thuộc tớnh khụng khoỏ, đớch là 1 thuộc tớnh khoỏ.

Người ta đó chứng minh được rằng một cơ sở dữ liệu ở dạng chuẩn Boyce - Codd là cực tiểu sự dư thừa thụng tin, chuẩn hoỏ tốt.

III.5. Chun hoỏ lược đồ quan h

Định nghĩa: Chuẩn hoỏ là quỏ trỡnh khảo sỏt cỏc danh sỏch thuộc tớnh, và ỏp dụng một tập cỏc quy tắc phõn tớch vào cỏc danh sỏch đú, chuyển chỳng thành một dạng mà: tối thiểu việc lặp lại,trỏnh dư thừa, xỏc định và giải quyết sự nhập nhằng

Quỏ trỡnh chuẩn hoỏ được thực hiện từ thấp lờn cao - quan hệ R từ dạng chuẩn thấp hơn ta ỏp dụng cỏc quy tắc đểđưa R lờn dạng chuẩn cao hơn.

Quan hệ ch−a chuẩn 1 (ch−a chuẩn hoá) Quan hệ ch−a chuẩn 2 (chuẩn 1) Quan hệ ch−a chuẩn 3 (chuẩn 2) Quan hệ ch−a chuẩn BCNF (chuẩn 3) Quan hệ chuẩn BCNF Loại trừ thuộc tính lặp Loại trừ phụ thuộc h*m không sơ cấp Loại trừ phụ thuộc h*m có nguồn l* thuộc tính không khoá Loại trừ phụ thuộc h*m gián tiếp

Vớ dụ YấU CẦU(Số yờu cầu, Ngày, Số khỏch hàng, Tờn khỏch hàng, Số hàng, Tờn hàng, Số lượng) ⇒ cú nhúm (Số hàng, Tờn hàng, Số lượng) lặp lại vỡ mỗi khỏch hàng cú thể mua nhiều hàng khỏc nhau.

Áp dụng vớ dụ trờn từ quan hệ YấUCẦU ta tỏch thành 2 quan hệ. R1 (Số yờu cầu, Số hàng, Tờn hàng, Số lượng) R2 (Số yờu cầu, Ngày, Số khỏch hàng, Tờn khỏch hàng) Xột R1 (Số yờu cầu, Số hàng, Tờn hàng, Số lượng) Số yờu cầu, Số hàng → Tờn hàng, Số lượng Số hàng → Tờn hàng ⇒ R1ở dạng chuẩn 1. Tỏch thành R11 (Số hàng, Tờn hàng) R12 (Số yờu cầu, Số hàng, Số lượng) Xột R2 (Số yờu cầu, Ngày, Số khỏch hàng, Tờn khỏch hàng) Số yờu cầu → Ngày, Số khỏch hàng, Tờn khỏch hàng Số khỏch hàng → Tờn khỏch hàng ⇒ R2ở dạng chuẩn 2.

Tỏch thành

R21 (Số khỏch hàng, Tờn khỏch hàng) R22 (Số yờu cầu, Ngày, Số khỏch hàng)

Vậy từ quan hệ ban đầu ta tỏch thành cỏc quan hệ sau R11 (Số hàng, Tờn hàng)

R12 (Số yờu cầu, Số hàng, Số lượng) R21 (Số khỏch hàng, Tờn khỏch hàng) R22 (Số yờu cầu, Ngày, Số khỏch hàng)

Bài 10. PHÂN TÍCH D LIU NGHIP V CA H THNG

Một phần của tài liệu Giáo trình phân tích và thiết kế hệ thống thông tin (Trang 127 - 134)