Bài giảng cơ sở dữ liệu phân tán chương 4 nguyễn mậu hân

76 543 0
Bài giảng cơ sở dữ liệu phân tán  chương 4   nguyễn mậu hân

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHNG 4: X Lí TRUY VN TRONG CSDL PHN TN NGUYN MU HN, PhD HUE COLLEGE OF SCIENCES CHNG 4: X Lí TRUY VN TRONG CSDL PHN TN NI DUNG 4.1 Gii thiu v x lý truy 4.2 X lý truy mụi trng trung 4.3 X lý truy mụi trng phõn tỏn 4.4 Ti u hoỏ truy CSDL phõn tỏn MC CH Gii thiu mt bc tranh tng quỏt ca b ti u húa truy mụi trng trung v phõn tỏn Trỡnh by cỏc quy trỡnh x lý truy h thng phõn tỏn 4.1 GII THIU V X Lí TRUY VN Mc ớch ca x lý truy vn: Gim thiu thi gian x lý Gim vựng nh trung gian Gim chi phớ truyn thụng gia cỏc trm S dng ớt ti nguyờn Chc nng ca x lý truy vn: Bin i mt truy phc thnh mt truy tng ng n gin hn Phộp bin i ny phi t c c v tớnh ỳng n v hiu qu Mi cỏch bin i dn n vic s dng ti nguyờn mỏy tớnh khỏc nhau, nờn t l la chn phng ỏn no dựng ti nguyờn ớt nht 4.1 GII THIU V X Lí TRUY VN Cỏc phng phỏp x lý truy c bn Phng phỏp bin i i s: n gin húa cõu truy nh cỏc phộp bin i i s tng ng nhm gim thiu thi gian thc hin cỏc phộp toỏn Phng phỏp ny khụng quan tõm n kớch thc v cu trỳc d liu Phng phỏp c lng chi phớ: Xỏc nh kớch thc d liu, thi gian thc hin mi phộp toỏn cõu truy Phng phỏp ny quan tõm n kớch thc d liu v phi tớnh toỏn chi phớ thi gian thc hin mi phộp toỏn 4.2 X Lí TRUY VN TRONG MễI TRNG TP TRUNG 4.2.1 So sỏnh x lý truy trung v phõn tỏn Tp trung: Chn mt truy i s quan h tt nht s tt c cỏc truy i s tng ng Cỏc chin lc x lý truy cú th biu din s m rng ca i s quan h Phõn tỏn K tha chin lc x lý truy nh mụi trng trung Cũn phi quan tõm thờm Cỏc phộp toỏn truyn d liu gia cỏc trm Chn cỏc trm tt nht x lý d liu Cỏch truyn d liu TI U HO TRUY VN TRONG MễI TRNG TP TRUNG Cõu truy SQL S chung Kim tra ng phỏp Truy ỳng ng phỏp Ti u hoỏ i s quan h Truy i s quan h ó ti u Kim tra s hp l Chn chin lc ti u Truy SQL hp l K hoch thc hin Dch truy Truy i s quan h To sinh mó Mó ca truy Ti u hoỏ truy Trong mụi trng phừn tn Cõu truy phõn tỏn Phõn ró truy Lc tng th Truy i s trờn cỏc quan h phõn tỏn Trm iu khin nh v d liu Lc phõn mnh Truy mnh Ti u hoỏ ton cc Cỏc thng kờ trờn cỏc mnh Truy mnh c ti u vi cỏc phộp toỏn truyn thụng Cỏc trm a phng Ti u hoỏ cc b Lc a phng Cỏc truy cc b ó ti u S phõn lp chung cho x lý truy phõn tỏn 4.2 X Lí TRUY VN TRONG MễI TRNG TP TRUNG 4.4.2 Chin lc ti u CSDL trung Ti phi nghiờn cu x lý truy trung? hiu c cỏc k thut ti u phõn tỏn vỡ ba lớ do: Th nht, cõu truy phõn tỏn phi c dch thnh cỏc cõu truy cc b, v c x lớ theo phng phỏp trung Th hai, cỏc k thut ti u hoỏ phõn tỏn thng l cỏc m rng ca k thut trung Th ba, ti u hoỏ trung thng n gin 4.2 X Lí TRUY VN TRONG MễI TRNG TP TRUNG Thut toỏn INGRES í tng thut toỏn: Thut toỏn t hp hai giai on phõn ró v ti u hoỏ u tiờn phõn ró cõu truy dng phộp toỏn quan h thnh cỏc phn nh hn Cõu truy c phõn ró thnh mt chui cỏc truy cú mt quan h chung nht Sau ú mi cõu truy n quan h c x lớ bi mt th x lý truy mt bin bin (one variable query processor-OVQP) 4.2 X Lí TRUY VN TRONG MễI TRNG TP TRUNG Thut toỏn INGRES (cont.) Trc tiờn OVQP s thc hin cỏc phộp toỏn n ngụi v c gng gim thiu kớch thc ca cỏc kt qu trung gian bng cỏc phộp tỏch (detachment) v Phộp th (substitution) Kớ hiu qi-1qi ch cõu truy q c phõn ró thnh hai cõu truy qi-1v qi, ú qi-1 c thc hin trc v kt qu s c qi s dng Phộp tỏch: OVQP s dng tỏch cõu truy q thnh cỏc truy qq da trờn mt quan h chung l kt qu ca q 10 4.4 Ti u hoỏ truy CSDL phõn tỏn Chỳ ý: ý Trong cụng thc: Total_cost= CCPU* #instr + CI/O*#I/OS + CMSG *#msgs + + CTR *#bytes Hai thnh phn chi phớ u (CCPU,CI/O) l chi phớ a phng Hai thnh phn chi phớ sau (CMSG, CTR) l chi phớ truyn thụng Chi phớ truyn thụng chuyn #byte d liu t trm ny n trm khỏc c gi thit l mt hm tuyn tớnh theo s #bytes c truyn i, c xỏc nh bi cụng thc CC(#byte)= CMSG + CTR * bytes 62 4.4 Ti u hoỏ truy CSDL phõn tỏn Cụng thc chung cho s xỏc nh thi gian tr li Response_time = CCPU * seq_#instr + CI/O * seq_#I/OS + CMSG * seq_#msgs + CTR* seq_#bytes Trong đó: seq_#x (x số lệnh CPU, I/O, số thông báo, số byte) số lớn x thực truy vấn cách Trong ú: Response_time: thi gian tr li truy CCPU: chi phớ ca mt lnh CPU CI/O: chi phớ ca mt xut/nhp a CMSG: chi phớ ca vic u v nhn mt thụng bỏo CTR: chi phớ truyn mt n v d liu t trm ny n trm khỏc #instr: tng tt c cỏc lnh CPU cỏc trm #I/OS: s ln xut/nhp a #msgs: s thụng bỏo 63 #bytes: tng kớch thc ca tt c cỏc thụng bỏo 4.4 Ti u hoỏ truy CSDL phõn tỏn Vớ d: Minh ho s khỏc gia tng chi phớ v thi gian tr li, ú mỏy tớnh tr li truy ti trm vi d liu t trm v 2, õy ch cú chi phớ truyn thụng c xột Trm x Trm Trm y Hỡnh 4.12: Vớ d ca s bin i truy Gi s, CMSG v CTR c biu th theo n v thi gian Tng chi phớ truyn x n v t trm n trm v y n v t trm n trm l: Total_cost = CMSG + CTR*x + CMSG+ CTR*y = 2CMSG+ CTR* (x+y) Vỡ vic truyn d liu cú th c thc hin song song nờn thi gian tr li ca truy l: Response_time = max{CMSG + CTR* x, CMSG + CTR* y} 64 4.4 Ti u hoỏ truy CSDL phõn tỏn 4.4.2 Cỏc thng kờ d liu Yu t chớnh nh hng n hiu sut ca mt chin lc thc thi l kớch thc ca cỏc quan h trung gian sinh quỏ trỡnh thc hin Khi phộp toỏn tip theo t ti mt trm khỏc, quan h trung gian phi c truyn trờn mng Do ú ti thiu hoỏ lng d liu truyn i, iu quan tõm u tiờn l ỏnh giỏ kớch thc kt qu trung gian ca cỏc phộp toỏn i s quan h ỏnh giỏ ny da trờn cỏc thụng tin thng kờ v cỏc quan h c s v cỏc cụng thc c tớnh lc lng ca kt qu cỏc phộp toỏn quan h 65 4.4 Ti u hoỏ truy CSDL phõn tỏn Mc ớch ca thng kờ d liu: Xỏc nh kớch thc ca cỏc quan h trung gian sinh quỏ trỡnh thc hin cõu truy Xỏc nh chi phớ truyn thụng cho cỏc i lng trung gian Mt s ký hiu Cho quan h R xỏc nh trờn thuc tớnh A={A 1, , An} R c phõn mnh thnh R1, R2, , Rr length(Ai): di (byte) ca thuc tớnh Ai ,AiA, card( Ai(Rj): lc lng ca phộp chiu ca mnh Rj lờn thuc tớnh Ai (s giỏ tr phõn bit trờn thuc tớnh A i) max(Ai): giỏ tr cc i ca thuc tớnh Ai Dom(Ai) min(Ai): giỏ tr cc tiu ca thuc tớnh Ai Dom(Ai) card(dom(Ai)): lc lng ca thuc tớnh Ai 66 4.4 Ti u hoỏ truy CSDL phõn tỏn Ngoi ra, d liu thng kờ cng bao gm h s chn ca phộp ni (SFJ) i vi mt s cp i s quan h, h s SFJ ca quan h R v S l mt s thc gia v 1, c xỏc nh bi: card(R S) SFJ = card(R)*card(S) H s SFJ nh thỡ phộp ni cú tớnh chn tt, ngc li cú tớnh chn ti Cỏc thng kờ ny cú li ỏnh giỏ kớch thc ca quan h trung gian Kớch thc mt quan h trung gian R c xỏc nh bi size(R) = card(R)*length(R) Trong ú, + length(R) l di (s byte) ca mi b R, c tớnh theo di cỏc thuc tớnh ca nú, + card(R) l s cỏc b ca R c tớnh theo cụng thc 67 phn tip theo 4.4 Ti u hoỏ truy CSDL phõn tỏn 4.4.3 Lc lng ca cỏc kt qu trung gian Cỏc cụng thc c tớnh lc lng kt qu cỏc phộp toỏn c s ca i s quan h (chn, chiu, tớch Decartes, ni, na ni, hp v hiu) Cỏc toỏn hng quan h c ký hiu bi R v S H s chn ca mt phộp toỏn SFOP, (OP biu th phộp toỏn) l t l gia cỏc b ca mt toỏn hng quan h tham gia vo kt qu ca phộp toỏn vi s cỏc b ca quan h Vớ d: SFJ : h s chn ca phộp ni SFS : h s chn ca phộp chn 68 4.4 Ti u hoỏ truy CSDL phõn tỏn Phộp chn: card( (R)) ? card( (R)) = SFS(F) * card(R) Trong ú SFS(F) ph thuc vo cụng thc chn v cú th tớnh nh sau, vi p(Ai), p(Aj) l cỏc v t tng ng vi cỏc thuc max(A) - value tớnh Ai, Aj SFS (A=value) = SFS (A>value) = Card( A(R)) SFS (A[...]... A2 A3 A4 A5 A6 A7 A8 Nam Trung Đông Bắc Tây Hùng Dũng Chiến CHUCVU Phân tích HT Lập trình viên Phân tích HT Phân tích HT Lập trình viên Kỹ sư điện Phân tích HT Thiết kế DL DUAN (J) MADA D1 D2 D3 D4 MANV MADA A1 A2 A2 A3 A3 A4 A5 A6 A7 A8 D1 D1 D2 D3 D4 D2 D2 D4 D3 D3 NHIEMVU Quản lý Phân tích Phân tích Kỹ thuật Lập trình Quản lý Quản lý Kỹ thuật Quản lý Lập trình THOIGIAN 12 34 6 12 10 6 20 36 48 15... INGRES-QOA(MRQ”) {gọi đệ qui} Output ← output ∪ output’ {trộn tất cả các kết quả lại} Endfor Endif 18 End {INGRES -QOA} 4. 3 Xử lý truy vấn trong môi trường phân tán Câu truy vấn phân tán Phân rã truy vấn Lược đồ tổng thể Truy vấn đại số trên các quan hệ phân tán Trạm điều khiển Định vị dữ liệu Lược đồ phân mảnh Truy vấn mảnh Tối ưu hoá toàn cục Các thống kê trên các mảnh Truy vấn mảnh được tối ưu với các phép... truyền thông Các trạm địa phương Tối ưu hoá cục bộ Lược đồ địa phương Các truy vấn cục bộ đã tối ưu Sơ đồ phân lớp chung cho xử lý truy vấn phân tán 19 4. 3 Xử lý truy vấn trong môi trường phân tán 4. 3.1 Phân rã truy vấn Giai đoạn này chia làm bốn bước: chuẩn hoá, phân tích, loại bỏ dư thừa và viết lại 4. 3.1.1 Chuẩn hoá Mục đích: chuyển đổi truy vấn thành một dạng chuẩn để thuận lợi cho các xử lý tiếp theo... toán 33 4. 3 Xử lý truy vấn trong môi trường phân tán Ví dụ: Truy vấn “Tìm tên các nhân viên không phải là “Dũng”, làm việc cho dự án CSDL với thời gian một hoặc hai năm” Biểu diễn truy vấn này trong SQL là: SELECT E.TENNV FROM J, G, E WHERE G.MANV=E.MANV AND G.MADA= J.MADA AND E.TENNV “Dũng” AND J.TENDA= “CSDL” AND (THOIGIAN=12 OR THOIGIAN= 24) 34 4.3 Xử lý truy vấn trong môi trường phân tán SELECT... AND THOIGIAN≥ 36 AND NHIEMVU=”LTRINH” 27 4. 3 Xử lý truy vấn trong môi trường phân tán Đồ thị truy vấn và đồ thị kết nối tương ứng THOIGIAN ≥ 36 G E.MANV=G.MANV G.NHIEMV U E CHUCVU= “Lập trình” G.MADA=J.MADA J TENDA=”CSDL” E.TENNV Kết quả (a) Đồ thị truy vấn G G.MANV=G.MANV E G.MANV=J.MANV J (b) Đồ thị kết nối tương ứng 28 4. 3 Xử lý truy vấn trong môi trường phân tán Xét câu truy vấn SQL tương ứng: thiếu... E.MANV=G.MANV ∧ G.MADA=”J1” ∧ (THOIGIAN=12 ∨ THOIGIAN= 24) Điều kiện trong dạng chuẩn tuyển là: (E.MANV=G.MANV ∧ G.MADA=”J1” ∧THOIGIAN=12) ∨ (E.MANV=G.MANV ∧ G.MADA=”J1” ∧THOIGIAN= 24) 23 4. 3 Xử lý truy vấn trong môi trường phân tán 4. 3.1.2 Phân tích Mục đích: Phát hiện ra những thành phần không đúng (sai kiểu hoặc sai ngữ nghĩa) và loại bỏ chúng sớm nhất nếu có thể Truy vấn sai kiểu: nếu một thuộc tính bất kỳ... p2 ∧ ¬ p2)) ∨ p3 (áp dụng luật 7) ⇔ ((false ∧ ¬ p2) ∨ (¬ p1 ∧ false) )∨ p3 (áp dụng luật 5) ⇔ (false ∨ false ) ∨ p3 (áp dụng luật 4) ⇔ P3 Vậy câu truy vấn được biến đổi thành: SELECT E.CHUCVU FROM E WHERE E.TENNV=”Dũng” 31 4. 3 Xử lý truy vấn trong môi trường phân tán 4. 3.1 .4 Viết lại Bước này được chia làm hai bước con như sau: • Biến đổi trực tiếp truy vấn phép tính sang đại số quan hệ • Cấu trúc lại... laws-Luật kết hợp 13 (p∨q)∨r ⇔ p∨(q∨r) 14 p∧(q∨r) ⇔ (p∧q)∨(p∧r) Distributive laws-Luật phân phối 15 p∨(q∧r) ⇔ (p∨q)∧(p∨r) 16 ¬(p∨q) ⇔ ¬p∧¬q De Morgan’s laws-Luật De Morgan 17 ¬(p∧q) ⇔ ¬p∨¬q 18 (p ⇒q) ⇔ (¬p∨q) Implication law-Luật kéo theo 19 p ∨ ( p ∧ q ) = p 20 p ∧ ( p ∨ q ) = p 22 4. 3 Xử lý truy vấn trong môi trường phân tán Ví dụ minh họa: xét CSDL công ty phần mềm đã cho Từ các quan hệ: E= E (MANV, TENNV,... 29 4. 3 Xử lý truy vấn trong môi trường phân tán 4. 3.1.3 Loại bỏ dư thừa • Điều kiện trong các truy vấn có thể có chứa các vị từ dư thừa • Một đánh giá sơ sài về một điều kiện dư thừa có thể dẫn đến lặp lại một số công việc • Sự dư thừa vị từ và dư thừa công việc có thể được loại bỏ bằng cách làm đơn giản hoá các điều kiện thông qua các luật luỹ đẳng sau: 1 p ∧ p⇔ p 2 p ∨ true ⇔ true 3 p ∨ p⇔ p 4 p... 6 12 10 6 20 36 48 15 TLUONG (S) TENDA CSDL CÀI ĐẶT BẢO TRÌ PHÁT TRIỂN NGANSACH 20000 12000 28000 25000 CHUCVU Kỹ sư điện Phân tích HT Lập trình viên Thiết kế DL LUONG 1000 2500 3000 40 00 12 4. 2 XỬ LÝ TRUY VẤN TRONG MÔI TRƯỜNG TẬP TRUNG Xét câu truy vấn q1=“Cho biết tên của các nhân viên đang làm việc trong dự án có tên CSDL” Diễn tả q1 bằng SQL: q1: SELECT E.TENNV FROM E, G, J WHERE E.MANV = G.MANV ... vấn 40 4. 3 Xử lý truy vấn môi trường phân tán Ví dụ: Cấu trúc lại truy vấn ví dụ trên, cho kết tốt ban đầu nhiên xa tối ưu 41 4. 3 Xử lý truy vấn môi trường phân tán 4. 3.2 Định vị liệu phân tán- Tối... đồ phân lớp chung cho xử lý truy vấn phân tán 19 4. 3 Xử lý truy vấn môi trường phân tán 4. 3.1 Phân rã truy vấn Giai đoạn chia làm bốn bước: chuẩn hoá, phân tích, loại bỏ dư thừa viết lại 4. 3.1.1...CHƯƠNG 4: XỬ LÝ TRUY VẤN TRONG CSDL PHÂN TÁN NỘI DUNG 4. 1 Giới thiệu xử lý truy vấn 4. 2 Xử lý truy vấn môi trường tập trung 4. 3 Xử lý truy vấn môi trường phân tán 4. 4 Tối ưu hoá

Ngày đăng: 03/12/2015, 00:05

Từ khóa liên quan

Mục lục

  • PowerPoint Presentation

  • CHƯƠNG 4: XỬ LÝ TRUY VẤN TRONG CSDL PHÂN TÁN

  • 4.1 GIỚI THIỆU VỀ XỬ LÝ TRUY VẤN

  • Slide 4

  • 4.2 XỬ LÝ TRUY VẤN TRONG MÔI TRƯỜNG TẬP TRUNG

  • TỐI ƯU HOÁ TRUY VẤN TRONG MÔI TRƯỜNG TẬP TRUNG

  • Tối ưu hoá truy vấn Trong môi trường phõn tỏn

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Ví dụ minh họa: xét CSDL của một công ty phần mềm

  • Slide 13

  • Slide 14

  • Slide 15

  • Slide 16

  • Slide 17

  • Slide 18

  • 4.3 Xử lý truy vấn trong môi trường phân tán

  • 4.3 Xử lý truy vấn trong môi trường phân tán

Tài liệu cùng người dùng

Tài liệu liên quan