Phép nối

Một phần của tài liệu Thiết kế cơ sở dữ liệu phân tán để tổ chức khai thác thông tin về giao thông (Trang 44 - 46)

Rút gọn với phép kết nối: Phép kết nối thực hiện trên các phân mảnh ngang có

thể đơn giản khi kết nối dựa theo các thuộc tính kết nối, bằng cách phân phối kết nối trên các hợp và sau đó loại bỏ các kết nối không tác dụng. Việc phân phối các kết nối trên phép hợp đƣợc phát biểu nhƣ sau:

(R1 R2 ) > <S = (R1 > <S) (R2 > <S), trong đó, Ri là các mảnh của R và S là một Quan hệ.

Bằng phép biến đổi này, các phép hợp có thể đƣợc di chuyển xuống dƣới trong cây đại số quan hệ, nên tất cả các phép kết nối có thể của các mảnh đều đƣợc lộ ra. Các phép kết nối vô dụng đƣợc xác định khi lƣợng từ hoá các mảnh có mâu thuẫn. Giả sử các mảnh Ri và Rj đƣợc xác định theo các vị từ chọn pi và pj trên cùng một quan hệ, quy tắc đơn giản hoá có thể đƣợc phát biểu nhƣ sau

Quy tắc 2: Ri > <Rj = ∅ nếu x Ri, y Rj : ¬ (pi(x) pj(y))

Việc xác định các kết nối vô dụng có thể đƣợc thực hiện bằng cách chỉ xét các vị từ của các mảnh. Áp dụng quy tắc này cho phép kết nối hai quan hệ đƣợc cài đặt nhƣ các nối từng phần song song các mảnh. Câu truy vấn rút gọn chƣa chắc đã đơn giản hơn câu truy vấn gốc, nếu nhƣ trong câu truy vấn gốc có rất nhiều nối từng phần, vì rất ít các vị từ phân mảnh mâu thuẫn. Nhƣ vậy câu truy vấn rút gọn sẽ tốt hơn khi có ít các nối từng phần. Trƣờng hợp xấu nhất xảy ra khi mỗi mảnh của quan hệ này đƣợc kết nối với mỗi mảnh khác của quan hệ khác, nghĩa là thực hiện phép tích Đề các hai quan hệ. Ƣu điểm của truy vấn rút gọn theo phép kết nối là các nối từng phần có thể đƣợc thực hiện song song và vì vậy nó sẽ làm giảm thời gian đáp ứng.

Ví dụ: Quan hệ DUONG (MADUONG, TENDUONG, MAHUYEN, CHIEUDAI) đƣợc phân mảnh thành:

DUONG1 = б MADUONG <=“D1000”(DUONG)

DUONG2 =б <’D1000’< MADUONG <’D2000’ (DUONG) DUONG3 =б MADUONG >= “2000” (DUONG)

- 37 -

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Quan hệ TTBAOTRI (MaTTBaoTri, MaDuong, NoiDung) đƣợc phân mảnh nhƣ sau:

TTBAOTRI 1= б MADUONG≤ “D1000” (TTBAOTRI) TTBAOTRI 1= б MADUONG > “D1000” (TTBAOTRI)

DUONG1 và TTBAOTRI1 cùng định nghĩa bởi vị từ б MADUONG≤ “D1000”.Vị từ định nghĩa trong TTBAOTRI2 là hợp của các vị từ đƣợc định nghĩa trong DUONG2 và DUONG3:

MADUONG > “D1000” = (“D1000” < MADUONG < “D2000” ) (MADUONG >=” D2000” )

Xét câu truy vấn sau:

SELECT *

FROM DUONG, TTBAOTRI

WHERE DUONG.MADUONG = TTBAOTRI.MADUONG

Câu truy vấn đƣợc rút gọn bằng cách phân phối các nối trên các hợp và áp dụng quy tắc 2 có thể cài đặt nhƣ hợp của ba nối từng phần đƣợc thực hiện song song.

Hình 2.3a. Cây đại số quan hệ truy vấn gốc

DUONG1 DUONG2 DUONG3 TTBAOTRI1 TTBAOTRI2

- 38 -

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Hình 2.3b. Rút gọn phân mảnh ngang với phép kết nối

Một phần của tài liệu Thiết kế cơ sở dữ liệu phân tán để tổ chức khai thác thông tin về giao thông (Trang 44 - 46)