Dạng chuẩn mờ thứ ba

Một phần của tài liệu Lý thuyết chuẩn hóa của cơ sở dữ liệu mờ và ngôn ngữ SQL mờ (Trang 51)

Định nghĩa 2.11. [4] Cho F là tp các ffd ca lược đồ quan h R. R được gi dng 3NF m nếu và ch nếu R dng 2NF m và vi bt c X →α A thuc F và A không nm trong X thì hoc X cha khoá m hoc A là thuc tính khoá m.

2.2.5.1.Kim tra dng chun m th ba

Định nghĩa về dạng chuẩn mờ thứ 3 được sử dụng để kiểm tra một quan hệ có ở dạng chuẩn mờ 3 hay không. Tất cả các ffd sẽđược kiểm tra dựa trên các điều kiện. Nếu các thuộc tính vế trái chứa tất các thuộc tính vế phải, các ffd đó không vi phạm dạng chuẩn mờ 3NF. Tương tự, nếu vế trái chứa một khoá mờ bất kỳ của quan hệ, không vi phạm dạng chuẩn mờ 3. Và cuối cùng, nếu các thuộc tính vế phải của ffd là thuộc tính khoá mờ, dạng chuẩn mờ 3 cũng không bị vi phạm. Những điều này được diễn giải trong thuật toán sau:

Thut toán 2.7. [4] Thut toán kim tra dng chun m 3.

Vào: Cho K là tp khoá m ca quan h R.

Ra: Mt khng định là quan h R có dng chun m 3 hay không.

Phương pháp:

Nếu X Y, 3NF m không b vi phm, trong trường hp khác,

Nếu X Ki, vi bt k Ki K, 3NF m không b vi phm, trong trường hp khác,

Cho P là tp các thuc tính khoá m ca R. Nếu Y P, 3NF m

cũng không b vi phm.

2) Nếu không mt điu kin nào bước 1 được tho mãn cho ít nht mt trong nhng ffd ca quan h, quan h không dng 3NF m.

Ví d 2.12. Cho R= (A, B, C, D) và các ffds là AB →0.9 C, AC 0.8 D, và C→0.6 E. ffd đầu tiên có khóa mờ nằm ở vế trái không vi phạm 3NF mờ. Nhưng ffd thứ 2 và thứ 3 là AC 0.8 D và C→0.6 E, vi phạm định nghĩa 3NF mờ, các vế trái chứa khoá mờ, AB và D, E cũng không là các thuộc tính khoá mờ. Do đó, R không ở dạng 3NF mờ.

2.2.5.2.Phân tách thành dng chun m th 3

Quá trình chuẩn hoá một lược đồ quan hệ thành dạng chuẩn mờ 3 phải đảm bảo hai tính chất quan trọng của phép phân tách, đó là tính bảo toàn phụ thuộc và tính có kết nối không mất thông tin. Thuật toán phân tách đảm bảo các tính chất này sẽđược trình bày ở phần sau.

Ph ti tiu

Cho một tập phụ thuộc hàm mờ F. Tập phụ thuộc hàm mờ F là tối tiểu nếu thoả mãn các điều kiện sau:

1. Vế phải của mỗi phụ thuộc trong F chỉ có một thuộc tính độc nhất. 2. Không thể thay thế bất cứ X →θA bằng Y→αA, trong đó Y là tập

con thực sự của X với α ≥ θ mà vẫn có một tập phụ thuộc hàm mờ tương đương với F.

3. Không thể loại bỏ bất cứ phụ thuộc nào khỏi F mà vẫn có một tập phụ thuộc hàm tương đương F.

G được gọi là phủ tối tiểu của tập phụ thuộc F nếu G là một tập phụ thuộc tối tiểu (thoả mãn các điều kiện trên) và G tương đương với F.

Thuật toán sau tìm phủ tối tiểu của một tập phụ thuộc hàm mờ F cho trước và đảm bảo không có phụ thuộc hàm mờ một phần nào.

Thut toán 2.8. [4] Thut toán tìm ph ti tiu.

Vào: Cho F là mt tp các ffd. Ra: Ph ti tiu G ca F. Phương pháp: 1) Khi to: Gán G:=F 2) Thay thế mi ffd X →qi{A1, A2, ..., An} trong G bng n ffd X →qi A1, X →qi A2 ,..., X →qi An . 3) Vi mi ffd X →qi Ak trong G Vi mi thuc tính B X Nếu ((G - {X →qi Ak}) U ((X - {B})→α Ak )) trong đó α ≥ qi

là tương đương vi G thì thay thế X →qi Ak bng (X - {B})→α Ak trong G.

4) Vi mi ffd còn li X →qi Ak trong G

Nếu (G - {X →qi Ak }) tương đương vi G, loi b X →qi Ak khi G.

Tương tự như trong cơ sở dữ liệu truyền thống, trong cơ sở dữ liệu mờ, điều quan trọng trong quá trình phân tách quan hệ là đảm bảo tính bảo toàn phụ thuộc, vì mỗi phụ thuộc hàm mờ biểu diễn một ràng buộc trong cơ sở dữ liệu mờ.

Dưới đây trình bày thuật toán phân tách bảo toàn phụ thuộc của quan hệ R dựa trên tập phụ thuộc hàm mờ F, mỗi quan hệ sau phân tách là ở dạng 3NF mờ.

Thut toán 2.9. [4] Thut toán phân tách bo toàn ph thuc thành 3NF m.

Vào: Quan h R và tp ph thuc hàm m F.

Ra: Mt phép phân tách đảm bo tính bo toàn ph thuc, sao cho mi quan h trong phân tách dng 3NF m.

Phương pháp:

Tìm ph ti tiu G ca F và không có ffd mt phn nào trong G (S dng thut toán tìm ph ti tiu trên).

Nếu có nhng thuc tính nào không nm trong bt k ffd nào ca G thì đặt các thuc tính đó vào mt lược đồ quan h riêng r, và loi b chúng ra khi R.

Nếu có mt ffd nào trong G có cha tt c các thuc tính ca R, thì phân tách chính là R.

Ngược li, vi mi X nm vế trái ffd trong G, to mt lược đồ

quan h mi trong D vi các thuc tính { X U {A1} U {A2} U...

U {Ak} } trong đó X q1 A1 , X →q2 A2 ,..., X qk Ak là các ffd trong G, và X là khoá m ca quan h mi này vi độ mnh là

min

i

Ví d 2.13. Cho R=(A, B, C, D, E) và tập các ffd, F={CD →0.7 A, CD →0.7 B, AD →0.5 E, CD →0.7 E, A →0.8 B và B →0.6 E}. CD là khoá mờ của quan hệ với độ mạnh là 0.7.

Bước 1: Áp dụng thuật toán tìm phủ tối tiểu để tìm phủ tối tiểu G của F.

Gán G:=F

Ở bước thứ nhất, tất cả các ffd trong F đều có dạng X →qi Ai , nghĩa là mọi ffd có một thuộc tính nằm ở vế phải ffd.

Ở bước thứ 2, với ffd AD →0.5 E, với thuộc tính D∈{A, D}, (G – {AD →0.5 E}) ∪ ({A →0.6 E}) là tương đương với G vì 0.6 ≥ 0.5. Ở bước này, A→0.6 E thu được từ 2 ffd A→0.8B và B →0.6 E dùng tính chất bắc cầu. Vậy AD →0.5 E được thay thế bởi A →0.6 E trong G. Ở bước cuối cùng, A →0.6 E thu được từ bước trước cũng bị loại bỏ vì nó có thể thu được từ 2 ffd cuối cùng là A →0.8 B và B →0.6 E. Do đó phủ tối tiểu G là

CD →0.7 A, CD →0.7 B, CD →0.7 E, A →0.8 B và B →0.6 E.

Bước 2: Sử dụng thuật toán phân tách bảo toàn phụ thuộc

Với mỗi vế trái của ffd, trong đó CD là khoá mờ của quan hệ với độ mạnh là 0.7, một lược đồ quan hệđược tạo với các thuộc tính A, B, C, D, E và các ffd là CD →0.7 A, CD →0.7 B, CD →0.7 E với CD là khóa mờ với độ mạnh 0.7. Sau đó, với mỗi ffd còn lại A →0.8 B và B →0.6 E, tạo 2 lược đồ quan hệ riêng biệt, một với các thuộc tính A, B và một với các thuộc tính B, E. Cuối cùng, sau phân tách bảo toàn phụ thuộc, thu được 3 lược đồ quan hệ.

Lược đồ thứ nhất, R1=(A, B, C, D, E) vi các ffd là CD →0.7 A, CD →0.7 B, CD →0.7 E.

Lược đồ thứ ba, R3=(B, E) vi ffd là B →0.6 E.

Phân tách có kết ni không mt thông tin thành dng chun m 3

Tính chất quan trọng khác của việc phân tách là tính phân tách có kết nối không mất thông tin. Nếu phân tách không có tính chất này thì chúng ta sẽ nhận được các bộ dữ liệu sai khi kết nối các quan hệ của phép phân tách so với quan hệ trước phân tách.

Thut toán 2.10. [4] Thut toán phân tách có kết ni không mt thông tin thành 3NF m.

Vào: Quan h R và tp ph thuc hàm m F.

Ra: Mt phép phân tách đảm bo tính có kết ni không mt thông tin, sao cho mi quan h trong phân tách dng 3NF m.

Phương pháp:

Tìm ph ti tiu G ca F và không có ffd mt phn nào trong G (S dng thut toán tìm ph ti tiu trên).

• Đặt bt c thuc tính nào không nm trong bt k ffd nào ca G vào mt lược đồ quan h riêng bit, và loi b chúng ra khi R

Nếu có bt c các ffd nào trong G cha tt c các thuc tính ca R, thì quan h phân tách là R.

Ngược li, vi mi X vế trái ffd trong G, to mt lược đồ quan h mi trong D vi các thuc tính {X U{A1}U{A2}U...U{Ak}} trong đó X q1 A1, X →q2 A2, ..., X qk Ak là các ffd trong G, và X là khoá m ca quan h mi này vi độ mnh là qimin= min(q1, q2, ..., qk ).

Nếu không mt lược đồ quan h nào cha khoá m ca R, to thêm mt lược đồ quan h mà tp các thuc tính có cha khoá m ca quan h R.

Ví d 2.14. Cho lược đồ quan hệ và tập phụ thuộc hàm nhưở ví dụ 2.13. Thuật toán phân tách có kết nối không mất thông tin thêm một bước vào thuật toán phân tách bảo toàn phụ thuộc, đó là bước tạo lược đồ quan hệ mới cho khoá mờ của quan hệ. Do đó chúng ta phải thực hiện tất cả các bước như ở ví dụ 2.13 và thêm vào bước tạo lược đồ quan hệ mới cho khoá mờ của quan hệ, CD, nếu khoá mờ này không nằm trong bất cứ quan hệ phân tách nào. Nhưng trong trường hợp này, khóa mờ CD nằm ở một trong những quan hệ phân tách, do vậy không cần tạo một quan hệ mới. Do đó, sau một phân tách có kết nối không mất thông tin thành 3NF, chúng ta có 3 quan hệ R1=(A, B, C, D, E), R2=(A, B), R3=(B, E) như trong ví dụ 2.13.

Một phần của tài liệu Lý thuyết chuẩn hóa của cơ sở dữ liệu mờ và ngôn ngữ SQL mờ (Trang 51)

Tải bản đầy đủ (PDF)

(105 trang)