Rỳt gọn cho phõn mảnh ngang nguyờn thuỷ

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 125 - 128)

5.6 Cục bộ hoỏ dữ liệu phõn tỏn

5.6.1 Rỳt gọn cho phõn mảnh ngang nguyờn thuỷ

Phõn mảnh ngang phõn tỏn một quan hệ dựa trờn cỏc vị từ chọn (Select Predicate). Vớ dụ quan hệ EMP(ENO, ENAME, TITLE) cú thể được phõn mảnh ngang thành:

EMP1 = б ENO≤ “E3” (EMP) EMP2 = б “E3” < ENO < “E6” (EMP) EMP3 = б ENO>”E6” (EMP).

Khi đú chương trỡnh cục bộ hoỏ cho quan hệ phõn mảnh ngang là hợp cỏc mảnh:

EMP = EMP1 ∪ EMP2 ∪ EMP3

Vỡ vậy dạng truy vấn gốc được xỏc định trờn EMP sẽ thu được bằng cỏch thay EMP bởi (EMP1 ∪ EMP2 ∪ EMP3). Như vậy, để giảm cỏc thao tỏc truy vấn trờn quan hệ đó được phõn mảnh theo chiều ngang, trước hết phải xỏc định rừ cần thao tỏc trờn mảnh nào và sau

đú xõy dựng lại cõy con, xem xột loại bỏ cỏc quan hệ rỗng. Phõn mảnh ngang sẽ được sử

dụng để làm đơn giản hoỏ cỏc phộp chọn và phộp kết nốị

ạ Rỳt gọn phộp chọn: Phộp chọn thực hiện trờn cỏc mảnh cú lượng từ hoỏ mõu thuẫn với

lượng từ hoỏ của quy tắc phõn mảnh sinh ra cỏc quan hệ rỗng. Cho một quan hệ R được phõn mảnh theo chiều ngang là Rj = σpj (R), j=1..n, quy tắc này cú thể được biểu diễn một cỏch hỡnh thức như sau:

Quy tắc 1: σpi (Rj) = ∅ nếu ∀x ∈R: ơ (pi(x) ∧ pj(x)),

trong đú pi , pj là cỏc vị từ chọn, x là một bộ.

Vớ dụ vị từ ENO = “E1” mõu thuẫn với cỏc vị từ của mảnh EMP2 và EMP3, nghĩa là khơng cú bộ nào thoả vị từ ENO = “E1”.

Vớ dụ 5.9: Xột cõu truy vấn sau:

SELECT * FROM EMP WHERE ENO = :E5”

Cục bộ hoỏ EMP từ EMP1, EMP2 và EMP3, cho cõu truy vấn gốc bằng cỏch hoỏn vị phộp chọn và phộp hợp. Dễ dàng nhận thấy vị từ chọn mõu thuẫn với EMP1 và EMP3, chỉ cú mảnh EMP2 được cõu truy vấn ứmh dụng.

σENO = :E5” ( EMP1 ∪ EMP2 ∪ EMP3)

= σENO = :E5” ( EMP1) ∪ σENO = :E5” ( EMP2) ∪σENO = :E5” ( EMP3)

= σENO = :E5” ( EMP2)

b. 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ốị, 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ộ rạ 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 hố 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, vif 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.

EMP1 ∪ σENO=”E5” Hỡnh 5.10: Rỳt gọn phõn mảnh ngang với phộp chọn EMP2 EMP3 σENO=”E5” EMP2

Vớ dụ 5.10: Giả sử quan hệ EMP(ENO, ENAME, TITLE) được phõn mảnh ngang thành

EMP1, EMP2 và EMP3. EMP1 = σ ENO≤ “E3” (EMP) EMP2 = σ “E3” < ENO < “E6” (EMP) EMP3 = σ ENO>”E6” (EMP).

Quan hệ ASG(ENO, PNO, RESP, DUR) được phõn mảnh như sau: ASG1 = σ ENO≤ “E3” (ASG)

ASG2 = σ ENO > “E3” (ASG)

EMP1 và ASG1 cựng định nghĩa bởi vị từ ENO≤ “E3” . Vị từ định nghĩa trong ASG2 là hợp của cỏc vị từ được định nghĩa trong EMP2 và EMP3:

ENO > “E3” = (“E3” < ENO < “E6” ) ∪ ( ENO>”E6” ). Xột cõu truy vấn sau: SELECT *

FROM EMP, ASG

WHERE EMP.ENO = ASG.ENO

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.

EMP1

Hỡnh 5.11a Cõy đại số quan hệ truy vấn gốc

EMP2 EMP3 ASG3

ASG1

><ENO

Hỡnh 5.11b Rỳt gọn phõn mảnh ngang với phộp kết nối

EMP1

ASG1 EMP2 ASG2 EMP3 ASG2

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 125 - 128)