Bài giảng Cơ sở dữ liệu phân tán - Chương 3: Tối ưu hóa câu hỏi phân tán

Chi phí câu hỏi truy vấn phụ thuộc ?

Sử dụng công thức phân rã

Giá

Có nhiều công trình nghiên cứu đưa ra các giải thuật

nhằm tối ưu chi phí:

R*(Selinger& Adiba-80, Lohman et al -85),

SDD-1(Bernstein-81),

AHY (Apers-Hevner-Yao-83)

pdf24 trang | Chuyên mục: Cơ Sở Dữ Liệu Phân Tán | Chia sẻ: dkS00TYs | Lượt xem: 2093 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Cơ sở dữ liệu phân tán - Chương 3: Tối ưu hóa câu hỏi phân tán, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Ng 
Duc
 Thu
an
CƠ SỞ DỮ LIỆU PHÂN TÁN
(Distributed database)
ThS. Ng ĐứcThuần
BM Hệ Thống Thông Tin
ĐẠI HỌC THỦY SẢN
KHOA CÔNG NGHỆ THÔNG TIN
Mùa Xuân 2006
Ng 
Duc
 Thu
an
Chương III: TỐI ƯU HÓA CÂU HỎI 
PHÂN TÁN
SJF, ><l
q
Nữa kết nối
theta
SLF , δFChọn
NSJ, ><lNữa kết nối
tự nhiên
PJ [X], Π [X]Chiếu
NJN, l><lKết nối tự
nhiên
DF, \Trừ
JNF, l><l
q
Kết nối thetaIN, ∩Giao
PR, xTích 
Descartes
UN, UHợp
Ký hiệuPhép toánKý hiệuPhép toán
Ng 
Duc
 Thu
an
Nhắc lại các phép biến đổi tương đương
l 1. Giao hoán: JN, PR, NJN
l 2. Kết hợp: JN, PR, NJN : (R JN S) JN T = R JN ( S JN T)
l 3. Dãy các phép chiếu: PJ [X] (PJ [Y] (R)) = PJ [X] (R) , nếu X Ì Y
l 4. Dãy các phép chọn: SL F1 (SL F2 (R)) = SL F1 L F2 (R)
l 5. Giao hoán giữa phép chọn và phép chiếu
SLF(PJ [x] (R)) = PJ [x] (SLF(R)),
nếu F chỉ liên quan đến các thuộc tính trong X
Ng 
Duc
 Thu
an
Nhắc lại các phép biến đổi tương đương
l 6. Giao hoán giữa phép chọn và phép tích Descartes
SLF (R1[X] PR R2[Y] ) = 
6.1 SLF (R1) PR R2 , nếu F chỉ liên quan đến R1
6.2 R1 PR SLF (R2) , nếu F chỉ liên quan đến R2
6.3 SLF1 (R1) PR SLF2 (R2) , nếu F = F1 L F2
F1 chỉ liên quan đến X, F2 chỉ liên quan đến Y
6.4 SLF2 (SLF1 (R1) PR (R2) , nếu F = F1[X] L F2[XY] 
Ng 
Duc
 Thu
an
Nhắc lại các phép biến đổi tương đương
l 7. Phân phối phép chọn và phép hợp
SLF(R1 UN R2) = SLF(R1) UN SLF (R2)
l 8. Phân phối phép chọn và phép trừ
SLF(R1 DF R2) = SLF(R1) DF SLF (R2)
l 9. Phân phối phép chiếu với phép tích Descartes
PJX(R1[Y] PR R2[z]) = PJFÇY(R1) PR PJF ÇZ (R2)
l 10. Phân phối phép chiếu với phép hợp
PJX(R1[Y] UN R2[z]) = PJFÇY(R1) UN PJF ÇZ (R2)
Nếu X Ì YZ
Ng 
Duc
 Thu
an
Cây toán tử câu hỏi tổng thể
l Giả sử có 2 quan hệ:
NHANCONG(E# , TEN, LUONG, THUE, D#)
PHONG(D#, TENPHG, MIEN)
Hãy đưa ra danh sách các nhân công làm việc ở MIEN=‘Bac’
PJTEN SL MIEN =‘Bac’ (NHANCONG NJN PHONG)
Ng 
Duc
 Thu
an
Cây toán tử câu hỏi tổng thể
l Cây toán tử câu hỏi
PJ TEN
SL MIEN=‘Bac’
NJN
NHANCONG PHONG
Ng 
Duc
 Thu
an
Cây toán tử câu hỏi tổng thể
l Tối ưu hóa theoa các qui tắc trên (6.1)
PJ TEN
NJN
NHANCONG SL MIEN=‘Bac’
PHONG
Ng 
Duc
 Thu
an
Dịch cây tổng thể “tối ưu” sang cây đoạn
l Với phân đoạn
PHONG
PHONG1 PHONG2 PHONG3
D# <10
10<=D# <=20
D# >20
Ng 
Duc
 Thu
an
Dịch cây tổng thể “tối ưu” sang cây đoạn
l Cây đoạn tương ứng
NHANCONG
NHCNG4
NHCG1 NHCG2 NHCG3 
Với
PHONG = PHONG1 UN PHONG2 UN PHONG3
NHANCONG = (NHCG1 UN NHCG2 UN NHCG3) NJN NHCG4
E#, LUONG, THUEE#, TEN, D#
D# 20
Ng 
Duc
 Thu
an
Cây tổng thể được vẽ lại như sau
PJTEN
NJN
NJN SL MIEN =‘Bac’
UN NHCG4 UN
NHCG1 NHCG2 NGCG3 PHONG1 PHONG2 PHONG3
Ng 
Duc
 Thu
an
Hoán đổi phép chọn và phép hợp ta có cây tổng thể
UN
SL MIEN =‘Bac’SL MIEN =‘Bac’ SL MIEN =‘Bac’
PHONG1
(D# < 10)
PHONG2
(10<= D# <= 20)
PHONG3
(D# > 20)
Ng 
Duc
 Thu
an
Đại số quan hệ định tính
l Quan hệ định tính là cặp [ R:qR ]
– R : là quan hệ
– qR : tiêu chuẩn của quan hệ định tính (các bộ của R phải 
thỏa qR)
l Các phép toán của đại số quan hệ định tính
- Chọn: SLF [R:qR] = [SLFR: qR L F]
- Kết nối: [R:qR] JNF [S:qs] = [R JNF S:qR LqS L F ] 
- Tích Descaster: [R:qR] PR [S:qs] = [R PR S:qR LqS] 
Ng 
Duc
 Thu
an
Đại số quan hệ định tính
l Chiếu : PJX [R:qR] = [PJXR: qR]
l Hợp : [R:qR] UN [S:qs] = [R UN S:qR ν qS] 
l Hiệu : [R:qR] DF [S:qs] = [R DF S:qR] 
l Giao: [R:qR] IN [S:qs] = [R IN S:qR LqS] 
l Biểu diễn lại cây tổng thể sử dụng quan hệ định 
tính
Ng 
Duc
 Thu
an
PJTEN
NJN
UN NHCG4
[NHCG1 NJN (SL MIEN =‘Bac’ PHONG1) : D#<10 L MIEN =‘Bac’
Cây tổng thể
NHCG2 NJN (SL MIEN= ‘Bac’ PHONG2) : D# >=10 L D#<=20 L MIEN =‘Bac’
NHCG3 NJN (SL MIEN= ‘Bac’ PHONG3) : D# >20 L MIEN =‘Bac’
(E#, LUONG, THUE)
Ng 
Duc
 Thu
an
Đánh giá câu hỏi phân tán
l Một số thông tin định lượng
– Số các bộ của R : Card(R)
– KÍch thước của 1 thuộc tính A : Size(A)
– Size (R) = ∑ size(A) = card (R) * length(R)
– Trạm mà Ri định vị : site (Ri)
A єR
Ng 
Duc
 Thu
an
Đánh giá các phép toán ĐSQH
l Phépchọn: 
– card (SLF(R)) = card (R) * SFS(F)
– Trong đó : SFS(F) đuợc tính bởi (Selinger et al., 1979)
l SFS(A = value) = 1/ (card (PRA (R))
l SFS(A >value) = (max(A) – value)/ (max(A) – min(A))
l SFS(A <value) = ( value – min(A))/ (max(A) – min(A))
l SFS( p(Ai) L p(Aj)) = SFS(p(Ai)) * SFS(p(Aj)) 
l SFS( p(Ai) v p(Aj)) = SFS(p(Ai)) + SFS(p(Aj)) - SFS(p(Ai)) * SFS(p(Aj))
l SFS(A є {value}) = SFS(A = value) *card({value} )
Ng 
Duc
 Thu
an
Đánh giá các phép toán ĐSQH
l Phép chiếu: 
– Card(PR [x] (R)) = card (R)), nếu x chứa 1 khóa của R
– Card(PR [x] (R)) = MAX(dom (A[R])), với Aє X
l Tích Descartes: 
– Card (RxS) =card (R)* card(S) 
l Phép kết nối:
– Card(R JNF S) = card(S),
nếu F= (A=B) , A là khóa chính của R, B là khóa ngoại của S
– Card(R NJN S) = SFJ * card(R)*card(S),
Ng 
Duc
 Thu
an
Đánh giá các phép toán ĐSQH
l Phép nữa kết nối: (Hevner and Yao, 79)
– Card(R SJA=B S) = Card(R)*SFSJ(R SJA=B S)
l SFSJ(R SJA=B S) = card(PJA(S)) / card(dom(A))
l Phép hợp:
– Card (R UN S) <= Card(R) + Card(S)
– Card (R UN S) >= Max( Card(R), Card(S))
l Phép trừ: 
-Card(R-S) <= card (R)
-Card(R-S) >= 0
Ng 
Duc
 Thu
an
ĐÁNH GIÁ CHI PHÍ CHO CÂU HỎI PHÂN TÁN
l Tối ưu hóa câu hỏi phân tán còn phụ thuộc chi phí truy vấn 
(thời gian, giá, băng thông,..)
l Ví dụ:
Cần kết quả : R JN A=B S
Nếu dịch chuyển toàn bộ R từ site 1 đến site 2:
Chi phí : C0 +C1*size(R)*card(R)
C0: Chi phí cho 1 phiên liên lạc
C1: Chi phí truyền tin theo dung lượng
SR
Site 2Site 1
Ng 
Duc
 Thu
an
ĐÁNH GIÁ CHI PHÍ CHO CÂU HỎI PHÂN TÁN
l Nếu sử dụng phép biến đổi
R JN A=B S = (R SJ A=B PJB(S)) JN A=B S
Truyền PJB(S) từ site 2 về site1 có giá :
C0 + C1*size(B)*dom(B[S])
TínhR’=(R SJ A=B PJB(S) tại site1: giá = 0 (không tính giá tại trạm)
Truyền R’ từ site 1 về site 2 giá:
C0 + C1*size(R’)*card(R’)
Tính R’ JN A=B S tại site 2 : giá =0
Tổng chi phí : C0 + C1*size(B)*dom(B[S]) +C0 + 
C1*size(B)*dom(B[S])
Ng 
Duc
 Thu
an
ĐÁNH GIÁ CHI PHÍ CHO CÂU HỎI PHÂN TÁN
l Chi phí câu hỏi truy vấn phụ thuộc ?
Sử dụng công thức phân rã
Giá
Có nhiều công trình nghiên cứu đưa ra các giải thuật 
nhằm tối ưu chi phí:
R*(Selinger& Adiba-80, Lohman et al -85), 
SDD-1(Bernstein-81), 
AHY (Apers-Hevner-Yao-83)
Ng 
Duc
 Thu
an
TÀI LIỆU THAM KHẢO
l M.Tamer Ozsu, Patrick Valdariez –Prentice-
Hall-1998
l Bài giảng TS. Trần Đình Khang – BKHN
Ng 
Duc
 Thu
an
TÌM HIỂU 
l Các thuật toán:
R*(Selinger& Adiba-80, Lohman et al -85), 
SDD-1(Bernstein-81), 
AHY (Apers-Hevner-Yao-83)

File đính kèm:

  • pdfBài giảng Cơ sở dữ liệu phân tán - Chương 3 Tối ưu hóa câu hỏi phân tán.pdf
Tài liệu liên quan