Phép tính quan hệ trong trường hợp có kí hiệu NULL

Một phần của tài liệu chuẩn hóa mô hình csdlqh dựa trên tính tương tự (Trang 34 - 36)

1. Mở rộng mô hình CSDLQH của P.Buckles và E.Petry

2.8.Phép tính quan hệ trong trường hợp có kí hiệu NULL

Khi xem xét các phép tính quan hệ ở trường hợp có sử dụng kí hiệu null trong các giá trị thuộc tính, có một số nhận xét sau:

1) Giá trị của một bộ trên một thuộc tính, chẳng hạn {a1, a2,…, at} có thể đã kể hết các lớp tương đương do ngưỡng αj phân hoạch Dj, nghĩa là về mặt ngữ nghĩa có thể coi {a1, a2,…, at} tương đương với {D}, trong khi đó hệ thống coi {a1, a2,…, at} không tương đương với {D}. Như vậy, trong trường hợp có kí hiệu null

D, các định nghĩa về phép hợp, giao, hiệu, chiếu, tích Đề-các, chọn chặt và kết nối chặt nếu giữ nguyên như đã phát biểu (cho trường hợp không có kí hiệu null) có thể có một số nhược điểm sau:

• Kết quả của phép hợp, phép Đề-các, phép chiếu có thể chứa những bộ thừa đối với nhau (tương đương về ngữ nghĩa) như đã nêu.

• Kết quả của phép giao có thể sẽ thiếu mặt một số bộ vì hệ thống coi {a1, a2,…, at} không tương đương với {D}.

• Tương tự, việc thực hiện phép hiệu có thể sẽ còn lưu lại một số bộ đáng lẽ bị loại bỏ.

• Phép chọn chặt, kết nối chặt có thể sẽ bỏ qua một số bộ do hệ thống coi {a1, a2,…, at} không tương đương với {D}.

2) Nếu giá trị của một bộ trên một thuộc tính là {D}, về mặt ngữ nghĩa có thể coi là giá trị này đã kể hết các lớp tương đương do ngưỡng αj phân hoạch Dj. Nghĩa là các khả năng chung của một giá trị không chứa kí hiệu null như {a1, a2,…, at} và giá trị {D} chính là tất cả các khả năng do {a1, a2,…, at} đưa ra. Trong khi đó hệ thống đã tính {a1, a2,…, at}∩αj{D}=∅. Như vậy, trong trường hợp có kí hiệu null D, các định nghĩa về phép chọn không chặt và phép kết nối không chặt nếu giữ nguyên như đã phát biểu, thì sẽ bỏ qua một số bộ mà đáng lẽ về mặt ngữ nghĩa những bộ này xứng đáng thuộc quan hệ kết quả.

Tương ứng với nhận xét trên, có thể khắc phục như sau:

1) Bổsung cho hệ thống khả năng kiểm tra và quyết định rằng một giá trị {a1, a2,…, at} trên Dj có chứa hết mọi khả năng (với ngưỡng αj) hay không. Nghĩa là kiểm tra và quyết định rằng {a1, a2,…, at} có tương đương với {D} hay không.

2) Cần xác định việc lấy giao ∩P

αAi của hai biểu thức trị trên một thuộc tính (nghĩa là bao gồm trường hợp có kí hiệu null).

Định nghĩa phép giao khả năng (của hai biểu thức trị):

Trên miền trị Di của thuộc tính Ai xét ngưỡng tương tự αi. Cho di, di’ tương ứng là biểu thức trị của t và t’ trên Ai, phép giao khả năng của di và di’ kí hiệu là ∩P

M <M, ⊥> <⊥> <D> <⊥, D> M’ M ∩P αAiM’ M ∩P αAiM’ ∅ M’ M’ <M’, ⊥> M ∩P αAiM’ <M∩P αAiM’, ⊥> <⊥> M’ <M’, ⊥> <⊥> ∅ <⊥> <⊥> ∅ <⊥> <D> M M ∅ <D> <D> <⊥, D> M <M, ⊥> <⊥> <D> <⊥, D>

Hình 2.24. Kết quả biểu thức trị trên thuộc tính Ai.

Qua kiểm tra thấy được rằng biểu thức trị (di∩P

αAidi’) trên Ai được xác định theo bảng trên có ngữ nghĩa (theo αAi) chính là giao của hai ngữ nghĩa của hai biểu thức trị di và di’. Tính kết hợp của phép kết nối tự nhiên vẫn còn đúng trong trường hợp có kí hiệu null.

2.9. Nhận xét

Các phép toán quan hệ đã được trình bày ở trên thực sự là mở rộng của các phép toán quan hệ trong CSDLQH truyền thống. Khi trở lại điều kiện đơn trị cho mỗi giá trị thuộc tính và lấy ngưỡng tương tự là 1.0, sẽ có lại mô hình cổ điển với đại số quan hệ truyền thống. Đặc biệt phép chọn và phép kết nối được chia thành hai mức chặt và không chặt cho phép khai thác sự mở rộng về mặt ngữ nghĩa của mỗi bộ trong mô hình mới. Trường hợp mọi giá trị thuộc tính được khẳng định chỉ có một khả năng (theo một ngưỡng đã xác định) thì hai mức chặt và không chặt sẽ trùng nhau.

Một phần của tài liệu chuẩn hóa mô hình csdlqh dựa trên tính tương tự (Trang 34 - 36)