Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 155 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
155
Dung lượng
1,5 MB
Nội dung
H C VI N CÔNG NGH B U CHÍNH VI N THÔNG C S D LI U PHÂN TÁN (Dùng cho sinh viên h đào t o đ i h c t xa) L u hành n i b HÀ N I - 2009 H C VI N CÔNG NGH B U CHÍNH VI N THÔNG C S D LI U PHÂN TÁN Biên so n : TS PH M TH QU L I NÓI U Tài li u “C s d li u phân tán” sách h ng d n h c t p dùng cho sinh viên h đào t o t xa ngành công ngh thông tin ngành k thu t n t , vi n thông N i dung c a tài li u bao g m: - Ch ng I gi i thi u khái ni m c b n v c s d li u phân tán, x lý phân tán vàh th ng x lý phân tán S c n thi t c a h c s d li u phân tán đ c m c a c s d li u phân tán C u trúc logic c a c s d li u phân tán l i íchphân tán d li u m ng - Ch ng II gi i thi u t ng quát v h qu n tr c s d li u phân tán u m cách ti p c n mô hình c s d li u quan h h qu n tr c s d li u quan h V n đ quy t c toàn v n d li u Mô hình ki n trúc h qu n tr c s d li u phân tán ki n trúc t ng quan c a m t h qu n tr ph c h CSDL phân tán - Ch ng III trình bày nh ng v n đ thi t k c s d li u phân tán,là v n đ phân m nh d li u S c n thi t ph i phân m nh, ki u phân m nh, m c đ phân m nh, quy t c phân m nh toán c p phát d li u N i dung c a ch ng trình bày t ng quát k thu t phân m nh ngang c s phân m nh ngang d n xu t Thông tin c n thi t c a phân m nh ngang Ph ng pháp phân m nh d c, thông tin c n thi t c a phân m nh d c thu t toán t nhóm phân m nh Có nhi u toán c n thi t ph i s d ng lai ghép phân m nh ngang phân m nh d c Bài toán c p phát d li u, thông tin c n thi t cho toán c p phát mô hình c p phát - Ch ng IV gi i thi u ki m soát d li u ng ngh a, trình ki m soát khung nhìn h qu n tr c s d li u t p trung khung nhìn h qu n tr c s d li u phân tán N i dung ki m soát d li u ng ngh a c ng bao hàm v n đ an toàn d li u Ki m soát c p quy n t p trung ki m soát c p quy n phân tán.Ki m soát toàn v n ng ngh a t p trung ki m soát toàn v n ng ngh a phân tán - Ch ng V đ c p đ n v n đ x lý truy v n h c s d li u phân tán Khái ni m x lý truy v n,m c đích c a vi c x lý truy v n gi i thi u t ng c a trình x lý truy v n Tài li u”C s d li u phân tán” không ch đ c p đ n nh ng v n đ c s lý thuy t mà trình bày m t s k n ng c n thi t đ thi t k cài đ t h c s d li u c th Hy v ng s có ích cho sinh viên nh ng ng i mu n xây d ng h th ng tin h c ng d ng Tài li u có th nhi u thi u sót biên so n, v n m nh d n gi i thi u tài li u mong nh n đ c s góp ý c a b n đ c Tác gi CH NG 1: KHÁI NI M C B N V C PHÂN TÁN S D LI U Trong ch ng trình bày nh ng khái ni m c b n v nguyên lý h c s d li u phân tán, bao g m n i dung sau 1.1 M • X lý d li u phân tán • H c s d li u phân tán • Kh n ng c a h c s d li u phân tán • Các mô hình x lý d li u phân tán • T ng quan v h qu n tr c s d li u quan h U Nguyên lý h c s d li u phân tán đ c xây d ng d a s h p nh t c a hai h ng ti p c n đ i v i trình x lý d li u, lý thuy t h c s d li u công ngh m ng máy tính M t nh ng đ ng l c thúc đ y s phát tri n nhanh vi c s d ng h CSDL nhu c u tích h p lo i d li u, cung c p đa d ng lo i hình d ch v d ch v đa ph ng ti n cho ng i s d ng M t khác, k t n i máy tính thành m ng v i m c tiêu chia s tài nguyên, khai thác có hi u qu tài nguyên thông tin, nâng cao kh n ng tích h p trao đ i lo i d li u gi a thành ph n m ng Nhu c u thu th p, l u tr x lý trao đ i thông tin bgày t ng, h th ng x lý t p trung b c l nh ng nh c m sau : − T ng kh n ng l u tr thông tin khó kh n, b i b gi i h n t i đa c a thi t b nh − s n sàng ph c v c a CSDL không cao s ng i s d ng t ng − Kh n ng tính toán c a máy tính đ n l d n t i gi i h n v t lý − Mô hình t ch c l u tr , x lý d li u t p trung không phù h p cho nh ng t ch c kinh t , xã h i có ho t đ ng r ng l n, đa qu c gia Nh ng nh c m đ c kh c ph c nhi u h th ng phân tán Nh ng s n ph m c a h th ng phân tán xu t hi n nhi u th tr ng t ng b c ch ng minh tính u vi t c a h n h n h th ng t p trung truy n th ng Các h th ng phân tán s thay th d n h th ng t p trung 1.2 X LÝ PHÂN TÁN VÀ H TH NG X LÝ PHÂN TÁN 1.2.1 Khái ni m x lý phân tán Thu t ng x lý phân tán có th thu t ng đ c l m d ng nhi u nh t khoa h c máy tính nh ng n m v a qua Nó th ng đ c dùng đ ch nh ng h th ng g m nhi u lo i thi t b khác ch ng h n nh : h đa b x lý, x lý d li u phân tán, m ng máy tính Có hai khái ni m x lý phân tán liên quan v i − Khái ni m liên quan đ n vi c tính toán Client/Server Trong ng d ng đ c chia thành hai ph n, ph n c a Server ph n c a Client đ c v n hành hai n i Trong tính toán phân tán cho phép truy nh p tr c ti p d li u x lý d li u Server Client − Khái ni m th hai vi c th c hi n tác v x lý ph c t p nhi u h th ng Không gian nh b x lý c a nhi u máy ho t đ ng chia tác v x lý Máy trung tâm s giám sát qu n lý ti n trình Có tr ng h p thông qua Internet, hàng nghìn máy x lý m t tác v Có th đ nh ngh a h x lý phân tán nh sau: H x lý phân tán m t t p h p ph n t x lý t tr (không nh t thiêt đ ng nh t) đ c k t n i v i b i m t m ng máy tính ph i h p th c hi n nh ng công vi c gán cho chúng Ph n t x lý đ ch m t thi t b tính toán có kh n ng th c hi n ch ng trình 1.2.2 H th ng phân tán H th ng phân tán t p h p máy tính đ c l p k t n i v i thành m t m ng máy tính đ c cài đ t h c s d li u ph n m m h th ng phân tán t o kh n ng cho nhi u ng i s d ng truy nh p chia s ngu n thông tin chung Các máy tính h th ng phân tán có k t n i ph n c ng l ng l o, có ngh a không chia s b nh , ch có m t h u hành toàn b h th ng phân tán Các m ng máy tính đ c xây d ng d a k thu t Web, ví d nh m ng Internet, m ng Intranet… m ng phân tán 1.3 H C S D LI U PHÂN TÁN LÀ GÌ Công ngh h c s d li u phát tri n t mô hình x lý d li u, m i ng d ng đ nh ngh a m t hay nhi u t p d li u riêng c a (hình 1.1), sang mô hình đ nh ngh a qu n lý d li u t p trung D n đ n khái ni m đ c l p d li u, ngh a tính b t bi n c a h ng d ng đ i v i s thay đ i c u trúc l u tr chi n l c truy nh p d li u ng d ng T P TIN D ng d ng Mô t d li u ng d ng T P TIN TH A T P TIN Mô t d li u LI U Hình 1.1: X lý d li u truy n th ng ng d ng Mô t d li u Thao tác d li u ng d ng C S D … LI U ng d ng Hình 1.2: X lý c s d li u Trong ng c nh h x lý phân tán h c s d li u phân tán có th đ c xem nh nh ng công c làm cho trình x lý d li u phân tán d dàng h n hi u qu h n Khái ni m h c s d li u phân tán bao g m c khái ni m c s d li u phân tán h qu n tr c s d li u phân tán C s d li u phân tán m t t p c s d li u có quan h v i v m t logic đ c phân b m t m ng máy tính H qu n tr c s d li u phân tán h th ng ph n m m cho phép qu n tr c s d li u phân tán làm cho s phân tán su t đ i v i ng i s d ng Trong mô hình c s d li u phân tán b n thân c s d li u có nhi u máy tính khác Nh v y, đ c tr ng c a c s d li u phân tán CSDL đ c phân b m ng máy tính có quan h v i v m t logic H CSDL phân tán không đ n thu n bao g m nhi u file d li u đ c t ch c l u tr riêng l thi t b nh c a m ng máy tính t o m t h CSDL phân tán, file không ch có quan h v i v m t logic mà c n có m t c u trúc giao di n chung gi a chúng đ file có th truy nh p l n Có r t nhi u ng d ng yêu c u h qu n tr CSDL thao tác d li u bán c u trúc ho c không c u trúc, nh file Web m ng Internet 1.4 S C N THI T C A H C S D LI U PHÂN TÁN Trong nh ng n m g n đây, công ngh c s d li u phân tán tr thành m t l nh v c quan tr ng c a công ngh thông tin, tính c n thi t c a ngày đ c nâng cao Có nhi u nguyên nhân thúc đ y s phát tri n c a h CSDLPT: 1.4.1 S phát tri n c a c c u t ch c Cùng v i s phát tri n cu xã h i, nhi u c quan, xí nghi p có c c u t ch c không t p trung, ho t đ ng phân tán ph m vi r ng Vì v y thi t k cài đ t c s d li u phân tán phù h p, đáp ng m i nhu c u truy xu t khai thác d li u Cùng v i s phát tri n c a công ngh vi n thông, tin h c, đ ng c thúc đ y kinh t , vi c t ch c trung tâm máy tính l n t p trung tr thành v n đ c n nghiên c u C c u t ch c v n đ kinh t m t nh ng nguyên nhân quan tr ng nh t c a s phát tri n c s d li u phân tán 1.4.2 Gi m chi phí truy n thông Trong th c t , s d ng m t s ng d ng mang tính đ a ph ng s làm gi m chi phí truy n thông B i v y, vi c t i u hoá tính đ a ph ng c a ng d ng m t nh ng m c tiêu c a vi c thi t k cài đ t m t CSDLPT 1.4.3 Hi u qu công vi c S t n t i m t s h th ng x lý ph ng đ t đ c thông quan vi c x lý song song V n đ có th thích h p v i m i h đa x lý CSDLPT có thu n l i phân tích d li u ph n ánh u ki n ph thu c c a ng d ng, c c đ i hoá tính đ a ph ng c a ng d ng Theo cách tác đ ng qua l i gi a b x lý đ c làm c c ti u Công vi c đ c phân chia gi a b x lý khác tránh đ c t c ngh n thông tin m ng truy n thông ho c d ch v chung c a toàn h th ng S phân tán d li u ph n ánh hi u qu làm t ng tính đ a ph ng c a ng d ng 1.4.4 tin c y tính s n sàng Cách ti p c n CSDLPT, cho phép truy nh p đ tin c y tính s n sàng cao h n Tuy nhiên, đ đ t đ c m c đích v n đ không đ n gi n đòi h i k thu t ph c t p Nh ng l i xu t hi n m t CSDLPT có th x y nhi u h n s thành ph n c u thành l n h n, nh ng nh h ng c a l i ch nh h ng t i ng d ng s d ng site l i S h ng hóc c a toàn h th ng hi m x y CSDLPT s t p h p d li u thu c m t h th ng v m t logic nh ng phân b site c a m ng máy tính Công ngh CSDLPT s k t h p gi a hai v n đ phân tán h p nh t: • Phân tán : phân tán d li u site c a m ng • H p nh t : h p nh t v m t logic d li u phân tán cho chúng xu t hi n v i ng i s d ng gi ng nh v i CSDL đ n l nh t Công ngh CSDL phân tán m i th c s phát tri n nh ng n m g n nh s phát tri n c a k thu t tính toán, k thu t truy n thông m ng máy tính Nh ng ng d ng đ c xây d ng CSDL phân tán xu t hi n nhi u th tr ng t ng b c ch ng minh tính u vi t c a so v i CSDL t p trung 1.5 CÁC C I MC AC S D LI U PHÂN TÁN C s d li u phn tán không đ n gi n s phân b c a c s d li u, b i c s d li u phân tán có nhi u đ c m khác bi t so v i c s d li u t p trung truy n th ng Ph n so sánh c s d li u phân tán v i c s d li u t p trung m t s đ c m: u n t p trung, s đ c l p d li u, s gi m d th a d li u, c u trúc v t lý ph c t p đ truy xu t hi u qu 1.5.1 i u n t p trung i u n t p trung (Centralized Control) m t đ c m c a c s d li u t p trung, toàn b d li u đ c t p trung l i nh m đ tránh s d th a d li u, đ m b o đ c tính đ c l p c a d li u D li u đ c qu n lý t p trung b i ng i qu n tr c s d li u Ch c n ng c b n c a ng i qu n tr c s d li u (DBA - Database Administrator) b o đ m s an toàn c a d li u Trong c s d li u phân tán v n đ u n t p trung không đ c nh n m nh Nói chung, c s d li u phân tán , s u n đ c th c hi n theo m t c u trúc u n phân c p bao g m hai lo i ng i qu n tr c s d li u: • Ng i qu n tr c s d li u toàn c c (Global Database Administrator) ng trách nhi m v toàn b c s d li u phân tán i có • Ng i qu n tr c s d li u c c b (Local Database Administrator) ng trách nhi m v c s d li u c c b c a h i có Tuy nhiên, nh ng ng i qu n tr c s d li u c c b c n ph i có nh ng quy n đ c l p riêng v c s d li u c c b c a mà ng i qu n tr c s d li u toàn c c hoàn toàn nh ng quy n s ph i h p gi a v trí đ c th c hi n b i nh ng ng i qu n tr c c b c m đ c g i s đ c l p v trí Các c s d li u phân tán có th khác r t nhi u v m c đ đ c l p v trí T s đ c l p v trí hoàn toàn (không có ng i qu n tr c s d li u t p trung) đ n s u n t p trung hoàn toàn 1.5.2 c l p d li u c l p d li u (Data Independence) m t đ c m c a c s d li u c l p d li u có ngh a t ch c l u tr d li u su t đ i v i ng i l p trình ng d ng u m c a đ c l p d li u ch ng trình không b nh h ng b i nh ng thay đ i v t ch c l u tr v t lý c a d li u Trong h c s d li u phân tán, đ c l p d li u c ng quan tr ng nh c s d li u t p trung Tuy nhiên, m t đ c m m i đ c đ a vào khái ni m thông th ng c a đ c l p d li u s su t phân tán (Distribution Transparency) Nh s su t phân tán mà ch ng trình ng d ng có th đ c vi t gi ng nh c s d li u không đ c phân tán Vì v y, tính đ n c a ch ng trình ng d ng không b nh h ng b i s di chuy n d li u t m t v trí đ n m t v trí khác Tuy nhiên, t c đ th c hi n c a ch ng trình ng d ng b nh h ng c l p d li u c s d li u t p trung đ c th hi n thông qua m t ki n trúc nhi u m c, m c có nh ng mô t khác v d li u nh ng ánh x bi n đ i gi a m c S su t phân tán c s d li u phân tán đ c thê hi n b ng cách b sung thêm m c su t vào ki n trúc nhi u m c c a c s d li u t p trung 1.5.3 Gi m d th a d li u Trong c s d li u t p trung, s d th a d li u đ c gi m thi u, tránh s không nh t quán gi a nhi u b n b ng cách ch có m t b n ti t ki m vùng nh l u tr Các ng d ng chia s chung, truy xu t đ n t p tin d li u Tuy nhiên, c s d li u phân tán, s d th a d li u m t đ c m c n thi t, lý sau: • Làm t ng tính c c b c a ng d ng n u d li u đ c nhân b n t i t t c v trí mà ng d ng c n d li u Khi đó, ng d ng c c b đ c th c hi n nhanh h n không c n ph i truy xu t d li u t xa • Làm t ng tính s n sàng c a h th ng ng d ng, m t v trí có s c s không làm ng ng s th c hi n c a ng d ng nh ng v trí khác n u d li u t i v trí b h ng đ c nhân b n t i v trí khác Tuy nhiên, s nhân b n d li u c n ph i xem xét k l ng d a vào hai lo i ng d ng c b n, ng d ng ch đ c ng d ng c p nh t S nhân b n d li u giúp cho ng d ng ch đ c đ c th c hi n nhanh h n, nh ng làm cho ng d ng c p b th c hi n lâu h n ph i c p nh t d li u t i v trí đ c nhân b n Nh v y, s nhân b n d li u s m t u m n u h th ng có r t nhi u ng d ng ch đ c có r t ng d ng c p nh t Trong tr ng h p ng c l i s nhân b n d li u l i m t nh c m 1.5.4 tin c y qua giao d ch phân tán H qu n tr CSDL phân tán c i thi n đ tin c y qua giao d ch phân tán, thành ph n đ c nhân b n h n ch đ c v trí l i riêng l L i c a tr m riêng, ho c l i c a truy n thông làm cho m t ho c nhi u tr m m t liên l c, không đ đ phá v toàn b h th ng Trong tr ng h p CSDL phân tán, u ngh a m t s d li u không th truy nh p đ c, nh ng n u bi t cách h tr cho giao d ch phân tán giao th c ng d ng, ng i s d ng v n có th truy nh p đ c t i ph n khác CSDL phân tán Giao d ch m t đ n v tính toán c b n, nh t quán tin c y, bao g m m t chu i thao tác CSDL đ c th c hi n chuy n t tr ng thái CSDL nh t quán sang tr ng thái CSDL nh t quán khác c có m t s giao d ch đ c th c hi n đ ng th i th m chí c x y l i Vì v y, h qu n tr CSDL ph i h tr đ y đ cho giao d ch đ m b o r ng vi c th c thi đ ng th i giao d ch c a ng i s d ng s không vi ph m tính nh t quán c a CSDL h th ng có l i, v i u ki n giao d ch đ c th c hi n xác, ngh a tuân theo qui t c toàn v n c a CSDL 1.5.5 C i ti n hi u n ng Hi u n ng c a CSDL phân tán đ c c i ti n d a vào hai m: a) H qu n tr CSDL phân tán có kh n ng phân m nh CSDL khái ni m cho phép c c b hoá d li u Có hai u m n i b t: • Vì m i tr m ch x lý m t ph n CSDL, s tranh ch p v CPU d ch v vào/ra không nghiêm tr ng nh h CSDL t p trung • Tính c c b làm gi m tr truy nh p t xa th ng g p m ng di n r ng H u h t h CSDL phân tán đ c c u trúc nh m t n d ng t i đa nh ng u m c a tính c c b d li u L i ích đ y đ c a vi c gi m tranh ch p gi m chi phí truy n ch có th có đ c b ng cách phân m nh phân tán d li u h p lý l ng b ng vi c s d ng kh n ng song song liên truy v n, gi m th i gian đáp ng giao tác b ng vi c s d ng kh n ng song song c a n i truy v n Tuy nhiên, vi c làm gi m th i gian đáp ng truy v n ph c t p qua c ch song song quy mô l n c ng có th s t ng t ng th i gian b i th i gian truy n thông, làm nh h ng đ n l u l ng • Tính s n sàng cao (High Availability): H th ng CSDL song song bao g m nhi u ph n t ng t nhau, có th khai thác kh n ng nhân b n d li u đ t ng tính s n sàng c a CSDL Trong h th ng song song m c cao v i nhi u đ a nh , xác su t đ a h ng b t c th i m có th cao Vì v y u quan tr ng s c đ a h ng không làm m t cân b ng t i, b ng gi i pháp yêu c u phân vùng b n copy có th truy c p song song • Kh n ng m r ng (Extensibility): Trong môi tr ng song song, d dàng t ng kích th c CSDL ho c t ng thông l ng s d Kh n ng m r ng d dàng b i thêm kh n ng x lý l u tr cho h th ng, th hi n thu n l i sau: đ ng n tính t l (Linear Scaleup) n tính t c đ Llinear Speedup) Linear Scaleup nói đ n vi c hi u n ng v n trì t ng n tính kích th c CSDL kh n ng x lý l u tr Linear Speedup ngh a đ ng n tính làm t ng thêm tính th c thi v i kích th c CSDL không đ i t ng tính n tính kh n ng x lý l u tr 5.2.3 Ch c n ng CSDL song song • Qu n lý phiên (Sesion Manager) giám sát giao tác, h tr giao tác gi a Client v i Server Th c hi n k t n i gi i phóng k t n i gi a ti n trình Client hai h th ng khác Vì th kh i t o đóng phiên ng i s d ng nhi u giao tác Trong tr ng h p phiên OLTP, qu n lý phiên có th b t đ u s th c hi n mã hóa giao tác đ c nh p vào tr c Modul qu n lý d li u • Qu n lý yêu c u (Request Manager) nh n yêu c u phía Client có liên quan t i biên d ch th c thi truy v n Nó có th truy c p vào th m c CSDL ch a t t c thông tin v d li u ch ng trình, tác đ ng vào giai đo n biên d ch khác nhau, b t đ u th c hi n truy v n tr v k t qu , l i mã cho ng d ng Client B i giám sát vi c th c hi n giao tác xác nh n, có th kh i đ u cho th t c ph c h i l i tr ng h p giao tác b l i t ng t c đ th c hi n truy v n, t i u x lí song song truy v n t i th i m biên d ch • Qu n lý d li u (Data manager) cung c p t t c ch c n ng m c th p c n thíêt đ ch y truy v n đ c biên d ch song song N u qu n lý yêu c u có th biên d ch u n lu ng d li u, sau th c hi n đ ng b truy n thông gi a modul qu n lý d li u sau đ ng b hóa truy n th ng gi a module qu n lí d li u b i modul qu n lý yêu c u M t khác, u n giao tác đ ng b hóa ph i đ c th c hi n b i module qu n lý yêu c u 5.3 KI N TRÚC H SONG SONG M t h th ng song song di n t s dàn x p l a ch n thi t k cung c p u m v i s t t nh t v m t giá thành s th c thi M t nh ng v n đ quan tr ng v m t thi t k có liên quan đ n t c đ truy n thông thi t b ph n c ng nh b x lý, b nh đ a Ki n trúc h th ng song song đ c phân chia thành hai lo i l n ki n trúc chia s b nh íahared Memory) ki n trúc không chia s (Shared Nothing) 139 5.3.1 Ki n trúc chia s b nh (Shared- Memory) Trong ki n trúc này, m t s b x lý truy c p đ n m t s vùng nh hay đ n v đ a thông qua liên k t n i nhanh (tôc đ bus cao ) m t s máy ch m i thi t k nh IB3090 đa b x lý đ i x ng nh Sequent Escala c a Bull đ u áp d ng mô hình Các ví d v h th ng CSDL song song chia s b nh bao g m XPRS Volcano hi u qu nh h qu n tr c s d li u th ng m i s d ng đa b x lý chia s b nh Tr c tiên có th nêu m t ví d h th ng DB2 ch y IBM3090 v i b x lý Ph n l n s n ph m chia s b nh dùng cho th ng m i ngày có th khai thác (Exploit) liên truy v n song song (Inter Query arallelism) đ t ng hi u n ng giao tác truy v n n i song song (Intra Query Parallelism) đ gi m th i gian đáp ng c a truy v n h tr quy t đ nh (Decision Support) Chia s b nh có hai u m: tính đ n gi n t i tr ng cân b ng Siêu thông tin (th m c) thông tin u n (ví d khóa b ng) có th chia s b i t t c b x lý, vi c vi t ng d ng c s d li u ki n trúc đa b x lý không khác bi t so v i vi t máy tính đ n b x lý c bi t liên truy v n song song tr nên uy n chuy n, cân b ng t i tr ng có th đ t đ c t i th i m ch y s d ng chia s b nh Chia s b nh có ba v n đ c b n: giá thành (Cost), gi i h n m r ng (Limited Extendsibility) tính s n sàng (Availability) th p Giá thành cao s liên kêt n i ph c t p b i c n thi t ph i liên k t m i b x lý t i m i Modul nh hay đ a V i m t b x lý nhanh (th m chí b nh catche l n) , s xung đ t truy c p đ n b nh chia s t ng nhanh gi m hi u n ng Vì v y s m r ng gi i h n đ n vài ch c b x lý (20 Sequent ho c Encore) Cu i b nh tr ng đ c chia s b i t t c b x lý, m t l i b nh có th nh h ng đ n ph n l n b x lý khác gây t n th t v CSDL, gi i pháp Sequoia s d ng b nh kép 5.3.2 Ki n trúc chia s đ a (Shared-Disk) Trong ki n trúc , m t s b x lý truy c p đ n đ n v đ a thông qua liên k t n i nh ng không đ c phép (không chia s ) truy c p d n b nh Khi m i b x lý có th truy c p đ n trang d li u (database page) đ a chia s chép chúng đ n b nh catche c a tránh xung đ t truy c p đ n m t trang, c n ph i có c ch khóa toàn c c (Global Locking) giao th c dùng đ b o trì s g n k t c a cache Các ví d v h th ng CSDL song song chia ser đ a bao g m s n ph m chia s d li u IMS/VS c a IBM s n ph m VAX DBMS, Rdb c a DEC S th c thi c a Oracle VAXcluster c a DEC máy tính NCUBE c ng s d ng ki n trúc chia s c ng yêu c u m r ng c a h qu n tr c s d li u quan h (RDBMS) Chia s đ a có m t s u m v giá thành, kh n ng m r ng, cân b ng t i tr ng, tính s n sàng d dàng di chuy n t h th ng có m t b x lý Giá thành c a liên k t n i (Interconnect) gi m đáng k so v i ph ng pháp chia s b nh t công ngh Bus đ c dùng Cho r ng m i b x lý co đ b nh cache, s truy nh p vào vào đ a chia s nh nh t, s m r ng có th t t h n Khi b nh b l i có th b cô l p v i b x lý khác, node nh , tính s n sàng có th cao h n Cu i s di chuy n t h th ng trung tâm t i đ a chia s d dàng h n d li u đ a không c n t ch c l i 140 Chia s đ a có đ ph c t p cao h n hi u n ng cao h n Nó yêu c u giao th c c a h phân tán d li u nh khóa phân tán commit hai giai đo n vi c b o trì đ k t dính c a b n có th làm t i truy n thông gi a node Vi c truy c p đ a chia s có th gây hi n t ng “nút c chai” 5.3.3 Ki n trúc không chia s Trong ki n trúc , m i b x lý truy c p đ c l p đ n b nh đ n v đ a Vì v y m i node có th đ c xem nh m t site c c b (v CSDL ph n m m) m t h CSDL phân tán Vì v y ph n l n gi i pháp đ c thi t k cho h phân tán nh phân đo n d li u, qu n lý phân tán giao tác x lý truy v n phân tán có th đ c áp d ng Các ví d v h th ng song song không chia s bao g m DBC c a Teradata NonStopSQL c a Tandem c ng hi u qu nh s n ph m truy n th ng nh GRACE, EDS, GAMMA, BUBBA, PRISMA Gi i thích s t n t i c a s n ph m ki n trúc không chia s có ba u m: v giá thành kh n ng m r ng tính s n sàng u m v giá thành c a ph ng pháp c ng gi ng nh ph ng pháp chia s đ a H c s d li u phân tán đ c cài đ t ki n trúc có th d dàng t ng thêm hi u n ng thêm node m i kh n ng m r ng t t h n (có th lên t i hàng ngàn node) Ví d h th ng DBC c a Teradata có th cung c p 1024 b x lý V i phân vùng d li u có ích đ c đ t nhi u đ a T c đ t ng lên theo n tính ph m vi t ng n tính có th đ t đ c kh i l ng công vi c đ n gi n vi c t o b n d li u nhi u node có th t ng tính s n sàng d li u Ki n trúc không chia s ph c t p h n ki n trúc chia s b nh b i s c n thi t ph i cài đ t ch c n ng phân tán d li u t i nhi u node Không gi ng nh ki n trúc chia s b nh chia s đ a, đ cân b ng t i tr ng quy t đ nh b i v trí d li u t i tr ng không hi n th c c a h th ng , h n n a thêm node m i vào h th ng có th yêu c u t ch c l i d li u c ng đ c p đ n v n đ đ cân b ng t i tr ng 5.3.4 Các ki n trúc phân c p (Hierachical Architectures) Ki n trúc phân c p c ng, tên khác g i ki n trúc nhóm (Cluster Architecture) ki n trúc k t h p c a hai ki n trúc không chia s ki n trúc chia s b nh Là ki n trúc không chia s , node đ c thi t k có ki n trúc chia s b nh Ki n trúc đ c đ xu t b i Bhide, sau Pirahesh Boral M t mô t chi ti t đ c đ xu t b i Graefe u m c a ki n trúc phân c p hi n nhiên, k t h p đ c m linh ho t hi u n ng c a thành ph n chia s b nh v i kh n ng m r ng c a thành ph n không chia s Trong m i node chia s b nh (SM-Node) giao ti p đ c th c thi có hi u qu b i thành ph n chia s b nh c a ki n trúc, hi u n ng t ng lên cân b ng t i tr ng c ng t ng b i thành ph n chia s b nh 5.3.5 Các ki n trúc NUMA V i m c đích m r ng t ng tính linh ho t, ki n trúc chia s b nh đa b x lý h ng đ n ki n trúc NUMA v i m c đích cung c p mô hình l p trình chia s b nh l i ích c a ph m vi ki n trúc song song Có hai l p n i b t ki n trúc NUMA: máy Cache Coherent NUMA (CC-NUMA) chuy n đ i b nh t i node thành b nh cache có dung l ng không gian đ a ch chia s l n Vì v y, v trí c a m c d li u (Data 141 Item) đ c tách hoàn toàn t đ a ch v t lý m c d li u c a t đ ng di chuy n hay tái t o l i b nh Vì b nh chia s cache liên k t h tr ph n c ng nên b nh truy c p t xa r t hi u qu (ch m t vài l n v i giá thành c a vi c truy c p c c b NUMA d a chu n qu c t thành ph n xây d ng s n, ví d máy Data General nuSMP Sequent NUMA-Q 2000 s d ng chu n ANSI/IEEE Standard Scalable Coherent Interface (SCI) liên k t n i v i máy ch SHV (Standard Hight Value), m i node SHV ch a b x lý pentium, h tr dung l ng b nh t i đa lên t i 4GB hai h th ng ngang hàng PCI/IO, [Data General, ví d khác v lo i máy tính NUMA KSR1 c a Kendal Square Research SPP1200 c a Convex có th m r ng hàng tr m b x lý 5.4 CÁC K THU T H QU N TR CSDL SONG SONG Vi c th c thi h th ng CSDL song song ph thu c vào k thu t CSDL phân tán V b n ch t, gi i pháp qu n tr giao tác đ c s d ng Tuy nhiên, v n đ t i h n cho ki n trúc nh vi c s p đ t d li u, kh n ng truy v n song song, x lí d li u song song t i u hóa truy v n song song Gi i pháp cho v n đ ph c t p h n DDBMS b i s l ng node nhi u h n Ph n s ng d ng ki n trúc không chia s , tr ng h p chung k thu t th c thi c ng có th đ c áp d ng cho ki n trúc khác 5.4.1 S p đ t d li u Vi c s p đ t d li u h th ng CSDL song song đ c mô t gi ng nh vi c phân m nh CSDL phân tán Nh ng đ c m phân m nh có th đ c s d ng đ làm t ng tính song song c a CSDL Khái ni m Partitionning Partition có th hi u nh khái ni m phân m nh ngang phân m nh d c, trái ng c v i chi n l c l a ch n bao g m Clustering- nhóm m t quan h vào m t node đ n Phân m nh d c có th làm t ng tính song song cân b ng t i nh CSDL phân tán i m gi ng n a d li u th ng nhi u h n ch ng trình, ch ong trình đ c th c hi n nhi u t t t i n i d li u đ c t p trung Tuy nhiên, có hai m khác c b n v i CSDL phân tán M t là, không c n t ng t i đa vi c x lí c c b t i m i node ng i s d ng đ c liên k t đ n node đ c bi t Hai là, vi c cân b ng t i khó hoàn thành h n s l ng node có s n V n đ đ tránh vi c tranh ch p tài nguyên, mang l i k t qu phá v toàn b h th ng (ví d , m t node x lí t t c công vi c node khác r i) K t ch ng trình đ c th c hi n n i d li u đ c t p trung, vi c s p đ t d li u v n đ th c thi t i h n Vi c s p đ t d li u ph i đ c th c hi n đ t ng t i đa kh n ng th c thi h th ng, đ c đo b i s t h p toàn b công vi c hoàn thành b i h th ng th i gian đáp ng câu truy v n đ n l Thông qua kh n ng song song c a truy v n trong, có th làm t ng t i đa th i gian đáp ng , k t qu toàn b công vi c đ c t ng lên thay vi c truy n thông Vì v y, kh n ng song song c a truy v n làm cho toàn b công vi c đ c t ng lên M t khác, vi c phân nhóm (Clustering) t t c d li u c n thi t m t ch ng trình gi m t i thi u vi c truy n thông toàn b công vi c đ c làm b i h th ng vi c th c hi n ch ng trình Trong khái ni m s p đ t d li u, t ng t i đa th i gian đáp ng ho c kh n ng song song c a truy v n v i d n đ n vi c phân vùng vi c gi m t i thi u 142 công vi c d n đ n phân nhóm V n đ đ c đ c p CSDL phân tán theo cách th c t nh Ng i qu n tr CSDL ki m tra đo n Fragment theo đ nh k d a theo t n su t, n u c n thi t ph i di chuy n ho c t ch c l i Fragment Gi i pháp l a ch n cho vi c s p đ t d li u Full Partitioning phân vùng toàn b , m i m t quan h đ c phân m nh ngang t i t t c node h th ng Phân vùng toàn b đ c s d ng DBC/1012 GAMMA, Nonstoip SQL D i ba chi n l c c b n cho vi c phân vùng d li u: Round- Robin (luân chuy n), Hashing (hàm b m), Interval (kho ng cách) 5.4.2 Phân vùng luân chuy n (Round Rrobin Partitioning) Là chi n l c đ n gi n nh t, đ m b o s phân tán d li u đ c đ ng nh t V i n vùng Partition, hàng th i đ c chèn vào vùng thú i mod n Chi n l c cho phép truy c p tu n t t i m t quan h đ c th c hi n song song Tuy nhiên, kh n ng truy c p t i hàng riêng l d a vi c truy c p đ n yêu c u, thu c tính c a toàn b quan h 5.4.3 Phân vùng b m (Hash Partitioning): Chi n l c áp d ng hàm b m cho m t vài thu c tính Nó t o m t s Partition Chi n l c cho phép m t node nh t đ nh x lí truy v n xác đ l a ch n thu c tính t t c node x lí t t c truy v n khác m t cách song song 5.4.4 Phân vùng theo kho ng cách (Range Partitioning) Chi n l c phân tán hàng d a mi n giá tr c a m t vài thu c tính Ngoài ra, đ h tr truy v n xác nh vi c s d ng b ng b m, phù h p v i truy v n theo mi n Ví d , m t truy v n “A between A1 and A2” có th đ c x lí b i m t node nh t ch a hàng mà giá tr c a n m kho ng t A1 đ n A2 Tuy nhiên, vi c phân vùng theo mi n d n đ n kích th c vùng bi n đ i nhi u 5.4.5 Các gi i pháp phân vùng Vi c th c thi phân vùng toàn b đ c so sánh v i k thu t phân nhóm quan h m t đ a đ n K t qu đòi h i kh i l ng công vi c c a nhi u ng i s d ng khác nhau, vi c phân vùng phù h p h n Tuy nhiên, k thu t phân nhóm có th có u th h n vi c x lí truy v n ph c t p M c dù vi c phân vùng toàn b có nhi u u m v kh n ng th c thi, vi c th c hi n tính song song cao có th gây vi c th c thi liên quan đ n câu truy v n ph c t p Ví d , gi s m t c u trúc có 1024 node, s l ng b n tin x u nh t cho m t k t n i nh phân (không có l nh Select) s 10242 H n n a, phân vùng toàn b không phù h p v i quan h nh mà vi c phân vùng toàn b đ c liên k t kh i đ a l i v i Các h n ch c n m t s th a hi p gi a k thu t phân nhóm phân vùng toàn b Gi i pháp cho vi c s p đ t d li u phân vùng bi n đ i: Nói cách khác m c đ phân vùng, s l ng node mà m t quan h đ c phân m nh, hàm c a kích th c t n su t truy c p quan h Chi n l c ph c t p h n k thu t phân nhóm hay phân vùng toàn b b i thay đ i phân tán d li u có th ph i t ch c Ví d , ban đ u m t quan h đ c đ t t i node, s ph n t c a có th g p đôi b ng cách chèn vào sau, tr ng h p đ c đ t vào 16 node H th ng song song v i vi c phân vùng bi n đ i, t ch c l i cho cân b ng t i m t đ nh kì c n thi t th ng xuyên tr kh i l ng công vi c t nh c p nh t d li u S t ch c l i nh v y nên đ c su t đ biên d ch ch ng trình 143 ch y Server C th h n, ch ng trình không nên biên d ch l i vi c t ch c l i Do đó, ch ng trình biên d ch s gi l i đ c l p v i v trí c a d li u, s có th thay đ i nhanh chóng S đ c l p nh v y có th hoàn thành n u h th ng th i gian th c h tr truy c p k t h p t i d li u phân tán ây s khác bi t so v i h qu n tr CSDL phân tán, vi c truy c p k t h p đ c hoàn thành t i th i m biên d ch b i b x lí truy v n s d ng th m c d li u M t gi i pháp cho vi c truy c p k t h p có m t c ch đánh ch m c toàn c c đ c chép cho m i m t node Ch m c toàn c c cho th y vi c s p đ t m t quan h vào m t t p node D a khái ni m đó, có hai m c ch m c v i m t k thu t phân nhóm tên quan h phân nhóm ph m t vài thu c tính c a quan h Ch m c toàn c c h tr viêc phân vùng bi n đ i, m i m t quan h có m c phân vùng khác C u trúc ch m c có th d a c u trúc B hàm b m Trong tr ng h p này, truy v n xác có th đ c x lí m t cách hi u qu v i vi c truy c p m t node đ n Tuy nhiên, v i vi c s d ng hàm b m, truy v n theo mi n đ c x lí b i vi c truy c p t t c node ch a d li u t quan h đ c truy v n Vi c s d ng b ng ch m c theo c u trúc B s l n h n theo c u trúc hàm b m, cho phép x lí truy v n theo mi n m t cách hi u qu h n, t i ch có m t node nh t ch a d li u mi n d li u c th đ c truy c p V n đ đ t vi c ch n đ t d li u gi i quy t v i phân ph i d li u l ch mà chúng có th d n đ n phân ho ch không th ng nh t làm nh h ng đ n cân b ng t i Phân ho ch theo kho ng cách d b nh h ng l ch h n so v i phân ho ch xoay vòng ho c b m M t gi i pháp x lý phân ho ch không th ng nh t m t cách thích h p, thí d b ng cách phân m nh ti p t c cho phân ho ch l n Tách bi t gi a nút logic v t lý c ng có ích m t nút logic có th t ng ng v i nhi u nút v t lý Tác nhân cu i chép d li u đ b o đ m tính s n sang cao Gi i pháp đ n gi n trì hai b n c a m t d li u, m t b n m t b n d phòng hai máy riêng bi t ây ki n trúc đ a nh (Mirroed Disk) nh đ c v n d ng h th ng NonStop SQL c a Tandem Tuy nhiên tr ng h p m t node b s c , t i tr ng có th b nhân đôi lên t i node có b n sao, th nh h ng đ n vi c cân b ng t i tránh v n đ này, nhi u chi n l c chép d li u có tính s n sàng cao đ c đ xu t cho h CSDL song song M t s gi i pháp đáng ý phân ho ch đan xen c a Teradata Nó phân ho ch b n d phòng m t s node tình hu ng có s c , t i tr ng c a b n s đ c cân đ i gi a nút b n Nh ng n u c hai nút có s c quan h không truy xu t đ c th làm nh h ng đ n tính kh d ng Xây d ng l i b n t b n d phòng riêng bi t có th t n nhi u chi phí tình hu ng bình th ng, trì tính nh t quán cho b n c ng có th có chi phí cao M t gi i pháp t t h n phân ho ch xâu m t xích c a Gamma, l u b n b n d phòng hai nút k c n Ý t ng xác su t hai node k c n b s c th ng nh h n so v i xác su t hai node b t k b s c tình hu ng b s c , t i tr ng c a node b s c node d phòng đ c cân đ i cho node l i b ng cách dùng node b n b n d phòng Ngoài ra, vi c trì tính nh t quán b n đ u r h n M t v n đ b ng th c hi n vi c ch n đ t d li u có xem xét đ n chép d li u T ng t nh vi c c p phát m nh CSDL phân tán, u có th đ c xem nh m t toán t i u hóa 144 5.5 TRUY V N SONG SONG Truy v n song song cho phép th c hi n song song nhi u câu v n tin sinh b i giao d ch đ ng th i làm t ng l u l ng giao d ch Bên m t câu v n tin song hành n i toán t liên toán t đ c s d ng đ gi m th i giam đáp ng Song hành liên toán t có đ c b ng cách cho th c thi song song nhi u toán t c a c u trúc v n tin Trên nhi u b x lý song hành n i toán t , m t toán t s đ c nhi u b x lý th c hi n, m i b x lý thao tác m t t p d li u 5.5.1 Song hành n i toán t Song hành n i toán t d a vi c phân rã m t toán t thành t p toán t đ c l p, đ c g i th hi n tóan t (Operator Instance) Phân rã đ c th c hi n b ng cách dùng k thu t phân ho ch t nh ho c đ ng cho quan h Sau m i th hi n tóan t s th c hi n m t phân ho ch quan h , th ng g i lô( batch) minh h a cho vi c song hành n i toán t xét m t v n tin ch n n i đ n gi n Tóan t ch n (Select) có th phân rã tr c ti p thành nhi u toán t ch n, m i toán t thao tác m t phân ho ch khác không c n ph i th c hi n tái phân ph i 5.5.2 Song hành liên toán t Song hành liên toán t có th đ c dùng v i song hành ng d n (Pipeline Parallelism) nhi u toán t v i m t đ ng n i s n xu t – tiêu dùng đ c th c thi song song Thí d toán t Select đ c th c thi song song v i toán t n i (join ) k ti p u m c a th thi theo ph ng pháp k t qu trung gian không ph i c th hóa (không ph i l u l i), th ti t ki m b nh truy xu t đ a Tuy nhiên, ch có th x y v i cách th c thi nhi u nhánh đòi h i nhi u tài nguyên h n 5.5.3 X lý d li u song song Phân ho ch d li u s p x p chúng c s cho vi c th c hi n truy v n d li u song song Vi c s p x p d li u đ c phân ho ch r t quan tr ng vi c thi t k thu t toán song song u hành x lý d li u m t cách hi u qu (quan h gi a toán t đ i s ), câu truy v n d li u bao g m nhi u toán t V n đ r t khó b i c n ph i đ m b o s cân b ng t t gi a tính song song chi phí cho trình truy n thông Thu t toán song song cho toán t quan h đ i s đ c xây d ng thành kh i c n thi t cho vi c x lý truy v n song song X lý d li u song song cho phép khai thác phép toán song hành n i toán t toán t Nh bi t thu t toán song song cho vi c u hành d li u d a toán t Select Join, toán t c s khác có th u n r t nhi u k t n i X lý toán t Select ng c nh s p x p d li u phân ho ch c ng gi ng nh vi c phân m nh d li u c s d li u phân tán, ph thu c vào s l a tr n Select , toán t đ c th c hi n t i m t nod đ n ho c tr ng h p xác đ nh m t cách tu ý t i t t c node thông qua quan h đ c phân ho ch N u toàn b ch m c đ c t ch c nh c u trúc B-Tree, toán t Select v i kích th c xác đ nh có th th c hi n b i nh ng nodel u tr d li u thích h p Vi c x lý song song cho toán t k t n i Join ph c t p h n nhi u so v i toán t ch n Select Thi t k thu t toán k t n i phân tán cho m ng có t c đ cao có th đ c áp d ng thành công CSDL phân tán Có l tính s n sàng c a toàn b ch m c t i th i gian ch y cung 145 c p đem l i nhi u thu n l i cho vi c th c hi n song song m t cách có hi u qu Có ba thu t toán k t n i song song c b n cho vi c phân ho ch d li u: Thu t toán vòng l p l ng song song PNL (The Parallel Nested Loop) ,thu t toán n i k t h p song song PAJ (The Parallel Associative Join), thu t toán n i b m song song PHJ (The Parallel Hash Join) CÂU H I TR C NGHI M Nguyên nhân x y ùn t c vào ra: A Hi u n ng th p B H qu n tr c s d li u th ng x y ùn t c vào C Th i gian truy c p b nh ph nhi u h n th i gian truy c p b nh Hi u n ng CSDL song song cao, n u: A Phân vùng CSDL nhi u đ a B Có kh n ng song song c a liên truy v n n i truy v n C C i thi n đáng k v th i gian đáp ng thông l ng giao tác Hi u n ng cao (High Pperformance): A Các gi i pháp h h u hành h ng CSDL, kh n ng song song, t i u hóa, cân b ng t i B Các gi i pháp t ng l u l ng b ng vi c s d ng kh n ng song song liên truy v n C Các gi i pháp gi m th i gian đáp ng giao tác b ng vi c s d ng kh n ng song song c a n i truy v n Tính s n sàng cao (High Availability) A H th ng CSDL song song bao g m nhi u ph n t ng t B H th ng CSDL song song có th khai thác kh n ng nhân b n d li u C H th ng CSDL song song s c đ a h ng không làm m t cân b ng t i Kh n ng m r ng (Extensibility) A T ng kích th c CSDL ho c t ng thông l ng B T ng kh n ng x lý l u tr cho h th ng C T ng tính n tính kh n ng x lý l u tr Ch c n ng CSDL song song A Qu n lý phiên, yêu c u qu n lý d li u B Qu n lý giao tác C Qu n lý phiên qu n lý giao tác Ki n trúc h song song bao g m: A Ki n trúc chia s b nh , chia s đ a không chia s B Ki n trúc b nh b nh đ m C Ki n trúc câu truy v n song song Các k thu t h qu n tr CSDL song song bao g m A Phân vùng luân chuy n,phân vùng b m,phân vùng theo kho ng cách B Phân vùng theo khái ni m Partitionning Partition C Phân vùng Partition t t c node x lí truy v n song song Song hành n i toán t 146 A Phân rã m t toán t thành t p toán t đ c l p B Phân rã m t quan h thành m nh đ c l p C Phân rã tóan t ch n (Select) thành t p toán t đ c l p 10 Song hành liên toán t A Th c hi n nhi u toán t v i m t đ ng n i s n xu t B Th c hi n nhi u toán t song song C Th c hi n nhi u toán t nhi u tài nguyên 11 X lý d li u song song A Phân ho ch d li u s p x p d li u B Th c hi n truy v n d li u song song C Thu t toán song song 147 TÀI LI U THAM KH O [1] Date C.J., “ An introduction to data base systems”, Second editon 1977 [2] Codd, E.F., “ Data models in data base management”, ACM SIGMOD record,11,2(Feb,1981) [3] Michanel V Mannino, “ Database Application Development & Design”, Published by McGaw-Hill /Irwin, New Yor.k, 2001 [4] Abram Siberschatz, Henry F.Korth, S.Sudarshan “ Database Systems Concepts”, Published by McGaw-Hill /Irwin, New Yor.k, 2002 [5] M Tamer Ozsu and Patrick Vaduriez, “ Principles of Distributed Database Systems”, Prentice-Hall 2003 148 M CL C L I NÓI CH U NG 1: KHÁI NI M C 1.1 M 1.2 X B NV C S D LI U PHÂN TÁN U LÝ PHÂN TÁN VÀ H TH NG X LÝ PHÂN TÁN 1.2.1 Khái ni m x lý phân tán 1.2.2 H th ng phân tán 1.3 H C S D 1.4 S LI U PHÂN TÁN LÀ GÌ C N THI T C A H C S D LI U PHÂN TÁN 1.4.1 S phát tri n c a c c u t ch c 1.4.2 Gi m chi phí truy n thông 1.4.3 Hi u qu công vi c 1.4.4 1.5 CÁC tin c y tính s n sàng C I MC AC S D LI U PHÂN TÁN 1.5.1 i u n t p trung 1.5.2 c l p d li u 1.5.3 Gi m d th a d li u 1.5.4 tin c y qua giao d ch phân tán 1.5.5 C i ti n hi u n ng 1.5.6 D dàng m r ng h th ng 1.6 CÁC MÔ HÌNH C S D LI U CLIENT/SERVER 1.6.1 Mô hình c s d li u t p trung: 1.6.2 Mô hình c s d li u theo ki u File Server: 1.6.3 Mô hình x lý t ng ph n c s d li u 10 1.6.4 Mô hình c s d li u Client/Server 10 1.6.5 Distributed database model (Mô hình c s d li u phân tán) 11 1.7 MÔ HÌNH THAM CHI U C S D LI U PHÂN TÁN 11 1.7.1 L c đ toàn c c 11 1.7.2 L c đ phân m nh 12 1.7.3 L c đ c p phát 12 1.7.4 L c đ ánh x c c b 13 1.7.5 DBMS site c c b d c l p 14 1.8 C U TRÚC LOGIC C A C S D 1.9 L I ÍCH PHÂN TÁN D 1.10 H LI U PHÂN TÁN 14 LI U TRÊN M NG 14 QU N TR C S D LI U QUAN H 15 1.10.1 Ki n trúc t ng quát 15 149 1.10.2 Ch c n ng c a h qu n tr c s d li u quan h 16 1.11 T NG QUAN V H QU N TR C S D LI U PHÂN TÁN 17 1.11.1 M đ u 17 1.11.2 H qu n tr CSDL phân tán thu n nh t 19 1.11.3 H qu n tr CSDL phân tán không thu n nh t 19 1.12 MÔ HÌNH KI N TRÚC H QU N TR CSDL PHÂN TÁN 20 1.12.1 Tính t v n hành 21 1.12.2 Tính phân tán d li u 22 1.12.3 Tính h n h p 22 1.12.4 Các ki u ki n trúc 22 1.13 KI N TRÚC H QU N TR CSDL PHÂN TÁN 24 1.13.1 Các h Client/Server 24 1.13.2 Các h phân tán ngang hàng( Peer to Peer) 25 1.14 KI N TRÚC T NG QUAN C A M T H QU N TR PH C H CSDL PHÂN TÁN (Multi Database Management System) 29 1.14.1 Mô hình ki n truc t ng quan c a m t ph c h 29 1.14.2 Phân lo i ph c h d a vào c u trúc 30 1.14.3 Các mô hình không s d ng l c đ khái ni m toàn c c 31 CÂU H I TR C NGHI M 33 CH NG II: THI T K 2.1 CÁC V N CÁC H CSDL PHÂN TÁN 38 V PHÂN M NH D LI U 38 2.1.1 Lý phân m nh 38 2.1.2 Các ki u phân m nh 39 2.1.3 M c đ phân m nh 40 2.1.4 Các quy t c phân m nh 40 2.1.5 Các ki u c p phát 40 2.1.6 Các yêu c u thông tin 41 2.2 PH NG PHÁP PHÂN M NH NGANG 41 2.2.1 Gi i thi u 41 2.2.2 Thông tin c n thi t c a phân m nh ngang 41 2.2.3 Phân m nh ngang c s 44 2.2.4 Tính đ y đ tính c c ti u c a v t đ n gi n 45 2.2.5 Thu t toán xác đ nh t p v t đ y đ c c ti u t t p Pr cho tr c 46 2.2.6 Thu t toán phân m nh ngang nguyên thu 47 2.3 PHÂN M NH NGANG D N XU T 48 2.4 PHÂN M NH D C 51 2.4.1 Khái ni m phân m nh d c 51 2.4.2 Thông tin c n thi t c a phân m nh d c 52 150 2.4.3 Thu t toán t nhóm 54 2.4.4 Thu t toán phân m nh 58 2.4.5 Ki m tra tính đ n 59 2.5 PH NG PHÁP PHÂN M NH H N H P ( HYBRID FRAGMENTATION) 60 2.6 C P PHÁT 61 2.6.1 Bài toán c p phát (AllocationProblem) 61 2.6.2 Thông tin c n thi t cho toán c p phát 62 2.6.3 Mô hình c p phát 63 2.7 KI M SOÁT D 2.8 LI U NG NGH A 64 QU N LÝ KHUNG NHÌN 64 2.8.1 Khung nhìn h qu n tr c s d li u t p trung 64 2.8.2 C p nh t qua khung nhìn 66 2.8.3 Khung nhìn h qu n tr c s d li u phân tán 67 2.9 AN TOÀN D LI U 68 2.9.1 Ki m soát c p quy n t p trung 68 2.9.2 Ki m soát c p quy n phân tán 70 2.10 KI M SOÁT TÍNH TOÀN V N NG NGH A 71 2.10.1 Ki m soát toàn v n ng ngh a t p trung 71 2.10.2 Ki m soát toàn v n ng ngh a phân tán 75 2.10.3 So sánh vi c ki m soát toàn v n ng ngh a t p trung phân tán 79 CÂU H I VÀ BÀI T P 79 CH NG III: X LÝ TRUY V N TRONG C S D LI U QUAN H PHÂN TÁN 84 3.1 GI I THI U 84 3.2 V N 3.2.1 X LÝ TRUY V N 84 t v n đ 84 3.2.2 M c đích c a vi c x lý truy v n 87 3.2.3 3.3 ph c t p c a thao tác đ i s quan h 87 C TR NG C A B X LÝ TRUY V N 88 3.3.1 Ngôn ng (Languages) 88 3.3.2 Các ki u t i u hoá (Types of Optimization) 89 3.3.3 Th i m t i u hoá (Optimization timing) 89 3.3.4 S li u th ng kê (Statistics) 90 3.3.5 V trí quy t đ nh (Decision sites) 90 3.3.6 Khai thác c u hình m ng (Exploitation of Network topology) 90 3.3.7 Khai thác m nh nhân b n (Exploitation of Replicated Fragments) 90 3.3.8 S d ng n a k t n i (Use of Semijoint) 91 3.4 CÁC T NG C A QUÁ TRÌNH X LÝ TRUY V N 91 151 3.5 PHÂN RÃ TRUY V N 92 3.3.1 B c chu n hoá câu truy v n 93 3.3.2 B c phân tích 94 3.3.3 B c lo i b d th a 96 3.3.3 B c vi t l i truy v n 96 3.6 C C B HÓA D LI U PHÂN TÁN 100 3.6.1 Rút g n cho phân m nh ngang nguyên thu 101 3.6.2 Rút g n cho phân m nh d c 103 3.6.3 Rút g n cho phân m nh d n xu t 104 3.6.4 Rút g n cho phân m nh h n h p 106 CÂU H I VÀ BÀI T P 107 CH NG IV: X LÝ TRUY V N TRONG C S D LI U QUAN H PHÂN TÁN 111 4.1 GI I THI U 111 4.2 V N X LÝ TRUY V N 111 t v n đ 111 4.2.1 4.2.2 M c đích c a vi c x lý truy v n 114 ph c t p c a thao tác đ i s quan h 115 4.2.3 4.3 C TR NG C A B X LÝ TRUY V N 115 4.3.1 Ngôn ng (Languages) 115 4.3.2 Các ki u t i u hoá (Types of Optimization) 116 3.3.3 Th i m t i u hoá (Optimization timing) 116 4.3.4 S li u th ng kê (Statistics) 117 4.3.5 V trí quy t đ nh (Decision sites) 117 4.3.6 Khai thác c u hình m ng (Exploitation of Network topology) 117 4.3.7 Khai thác m nh nhân b n (Exploitation of Replicated Fragments) 117 4.3.8 S d ng n a k t n i (Use of Semijoint) 118 4.4 CÁC T NG C A QUÁ TRÌNH X LÝ TRUY V N 118 4.5 PHÂN RÃ TRUY V N 119 4.5.1 B c chu n hoá câu truy v n 120 4.5.2 B c phân tích 121 4.5.3 B c lo i b d th a 123 4.5.4 B c vi t l i truy v n 123 4.6 C C B HÓA D LI U PHÂN TÁN 127 4.6.1 Rút g n cho phân m nh ngang nguyên thu 128 4.6.2 Rút g n cho phân m nh d c 130 4.6.3 Rút g n cho phân m nh d n xu t 131 4.6.4 Rút g n cho phân m nh h n h p 133 152 CÂU H I VÀ BÀI T P 134 CH NG V: T NG QUAN V 5.1 M 5.2 CSDL SONG SONG 138 U 138 CH C N NG H X LÝ SONG SONG 138 5.2.1 Các khía c nh ch c n ng 138 5.2.2 Các u m CSDL song song 138 5.2.3 Ch c n ng CSDL song song 139 5.3 KI N TRÚC H SONG SONG 139 5.3.1 Ki n trúc chia s b nh (Shared- Memory) 140 5.3.2 Ki n trúc chia s đ a (Shared-Disk) 140 5.3.3 Ki n trúc không chia s 141 5.3.4 Các ki n trúc phân c p (Hierachical Architectures) 141 5.3.5 Các ki n trúc NUMA 141 5.4 CÁC K THU T H QU N TR CSDL SONG SONG 142 5.4.1 S p đ t d li u 142 5.4.2 Phân vùng luân chuy n (Round Rrobin Partitioning) 143 5.4.3 Phân vùng b m (Hash Partitioning): 143 5.4.4 Phân vùng theo kho ng cách (Range Partitioning) 143 5.4.5 Các gi i pháp phân vùng 143 5.5 TRUY V N SONG SONG 145 5.5.1 Song hành n i toán t 145 5.5.2 Song hành liên toán t 145 5.5.3 X lý d li u song song 145 CÂU H I TR C NGHI M 146 M C L C 149 153