Giáo trình hệ cơ sở dữ liệu phân tán và suy diễn phần 1 nguyễn văn huân, phạm việt bình

127 354 2
Giáo trình hệ cơ sở dữ liệu phân tán và suy diễn  phần 1   nguyễn văn huân, phạm việt bình

Đ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

NGUYHN VÃN I I UÂN - PIIẠM V l ị n ' BÌNH GIÁO TRÌNH HỆ Cơ SỞ DỮ LIỆU PHÂN TÁN VÀ SUY DIỄN NHÀ X U Ấ T BẢN K H O A H Ọ C V À K Ỹ T H U Ậ T Hà Nội - 2Ỏ09 MỤC LỤC M ĐẦU M ỤC LỤC CH Ư Ơ NG I G IỚI TH IỆU C H UNG VỀ c s DỮ LTỆU 1.1 KHÁI NIỆM C BẢN VỀ CÁC HỆ c s DỮ LIỆU 1.1.1 Cơ sở liệu 1.1.2 Sự cần thiết hệ sở liệu 1.1.3 Mô hình kiến trúc tổng quát sở liệu mức 1.1.4 Mục tiêu hệ sở liệu 1.1.5 Hệ quản trị CSDL & người quản ữị CSDL 1.1.6 Ràng buộc liệu 1.1.7 Các mô hình truy xuất liệu 1.1.7.1 Mô hình sờ iiệu Client Server 1.1.7.2 Mô hình ClienưServer nhiều lớp 1.1.7.3 Kỹ thuật lập trình sở liệu - Web động 1.1.7.4 Kiến trúc hệ thống Server (Server System Architecture) 1.1.7.5 Các mô hình kiến trúc ứng dụng 1.2 CÁC MÔ HÌNH C SỞ D ữ LIỆU 1.2.1 Mở đầu 1.2.2 Mô hình liệu (Data Model) 1.2.2.1 Phân biệt mô hình liệu 1.2.2.2 Các hệ thống CSDL đối tượng tri thức 1.2.3 Mô hình CSDL phân cấp (Hierarchy Data Model) 1.2.3.1 Cấu trúc biểu diễn liệu phân cấp 1.2.3.2 Ngôn ngữ thao tác CSDL phân cấp 1.2.4 Mô hình CSDL mạng (Network Data Model) 1.2.4.1 Cấu trúc biểu diễn liệu mạng 1.2.4.2 Ngôn n^ữ liệu thao tác CSDL mạng 1.2.5 Cách tiếp cận mô hình CSDL quan hệ C H Ư Ơ NG n C SỞ D ữ L IỆ U PH Â N TẢN 2.1 HỆ C SỞ D ữ LIỆU PHÂN TÁN 2.1.1 Định nghĩa CSDL phân tán 2.1.2 Phân loại sở liệu phân tán 2.1.3 Các đặc điểm sở liệu phân tán 2.1.5 Xử lý liệu phân tán 2.1.5 u nhược điểm việc sử dụng sờ liệu phân tán 2.1.6 Cơ sờ liệu phân tán sở liệu tập trung 2.1.7 Kiến trúc CSDL phân tán 2.1.8 Hệ quản trị CSDL phân tán 2.2 CÁC MÔ HÌNH X Ử LÝ PHÂN TÁN 2.2.1 Mô hình xử lý Master - Slave 2.2.2 Các hệ khách/đại lý 2.2.3 Các hệ phân tán ngang hàng 2.2.4 Môi trường đa tầng 2.3 THIẾT KE C SỔ D ữ LIỆU PHÂN TÁN 2.3.1 Các chiến lược thiết kế 9 10 11 14 15 17 18 18 19 20 21 23 23 24 24 25 25 25 25 26 28 28 30 30 33 33 33 35 36 38 39 4Q 41 42 45 45 45 47 47 48 48 2.3 l.K 2.3.1.2 2.3.2 2.3.2.1 23.2.2 2.3.23 2.3.3 2.3.3.1 2.3.3.2 2.3.33 2.3.3A 2.33.5 2.3.4 2.3.5 2.3.6 2.3.6.I 2.3.Ổ.2 2.3.63 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.5 2.5.1 2.5.2 2.5.3 2.5.4 2.5.4.I 2.5A.2 2.5.4.3 Quá trinh thiết kế từ xuống (top-down) Quá trình thiết kế từ lên (bottom-up) Các vấn đề thiết kế Lý phân mảnh Các quy tắc phân mảnh đắn Các yêu cầu thông tin Phân mảnh ngang Hai kiểu phân mảnh ngang Yêu cầu thông tin phân mảnh ngang Phân mảnh ngang nguyên thuỷ Phân mảnh ngang dẫn xuất Kiểm định tính đắn Phân mảnh dọc Phân mảnh hỗn hợp Cấp phát Bài toán cấp phát Cách tiếp cận Cách tiếp cận X Ử LÝ V ÁN TIN Bài toán xử lý vẩn tin Phân rã vấn tin Cục hóa liệu phân tán Tối ưu hoá vấn tin phân tán QUẢN LÝ GIAO DỊCH Giao dịch (Transaction) Giao dịch phân tán Tính khả lịch biểu việc sử dụng chung Các kỹ thuật điều khiển tương tranh khóa Mô hình khóa Mô hình khóa đọc khóa ghi Thuật toán điều khiển tưcmg tranh nhãn thời gian CHƯƠNG m CƠ SỞ DỮ LIỆU SUY DIỄN 3.1 3.2 3.2.1 3.2.2 3.2.2.I 32.2.2 3.2.3 3.2.4 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.4 GIỚI THIỆU CHUNG C SỞ D Ở LIỆU SUY DIÊN Mô hình sở liệu suy diễn Lý thuyết mô hình sờ liệu quan hệ Nhìn nhận sở liệu theo quan điểm logic Nhìn lại sở liệu quan hệ Nhin nhận sở liệu suy diễn Các giao tác frên sờ liệu suy diễn C SỞ D ữ LIỆU D ự A TRỂN LOGIC Cú pháp Ngữ nghĩa Cau trúc Cấu trúc câu hỏi So sánh DATALOG với đại số quan hệ Các hệ sở liệu chụỵên gia MỘT SỐ V ẮN ĐỀ KHẤC 48 49 50 50 50 51 51 51 51 54 60 62 62 71 71 72 72 75 80 81 84 91 101 104 104 109 115 116 119 121 123 129 129 129 129 131 131 131 132 133 133 133 134 134 137 138 142 142 CHƯ ƠNG IV C SỞ D ữ LIỆU HƯỞNG Đ Ó I TƯỢNG 4.1 NGUYÊN TẮC CỦA CÁC MÔ HÌNH HƯỞNG ĐỐI TƯỢNG 4.1.1 Mô hình hóa đối tượng 4.1.2 Phương pháp 4.1.3 Lớp (Class) 4.1.4 Các liên kết thừa kế lớp 4.1.5 Lược đồ lớp 4.2 TÍNH BỀN VỮNG CỦA CÁC ĐỐI TƯỢNG 4.2.1 Cơ sở liệu hướng đổi tượng 4.2.2 Quản lý tính bền vững CHƯ ƠNG V T H ự C H À N H M Ộ T SÓ ỨNG DỤNG 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.2 THIẾT KE MỘT HỆ c ỏ s DỮ LIỆU KẾ TOÁN Đặt vấn đề toán Chiến lược Phân tích Thiết kế Mô tả thiết kế hệ sở liệu phân tán cho hệ thống kế toán Sơ đồ phân cấp chức hệ thống THỰC HÀNH VỚI MỘT số THUẬT TOÁN ĐIỀU KHIÊN TƯƠNG TRANH TRONG QUAN LÝ GIAO DỊCH PHÂN TÁN M Ộ T SỐ ĐỀ Đ Ẫ T H I Ọ UA CÁC NĂM TÀI LIỆU TH AM K H A O 145 145 145 146 146 147 148 148 148 148 151 151 151 158 158 171 172 176 178 189 205 CHƯƠNG I GIỚI THIỆU CHUNG VỀ c s DỮ LIỆU 1.1 KHẢI NIỆỈVI CO BẢN VÈ CÁC HỆ c s ỏ DỮ Ì A Ệ Ỉ Ì Trong chương trình bày khái niệm C0‘ hệ sở dũ‘ liệu E.F Codd đề xuất Những khái niệm bao gồm mục tiêu cúa hệ CO’ sờ liệu Sự cần thiết phải tổ chức liệu dạng sở liệu Tinh độc lặp cúa liệu thể mỏ hinh kiến trúc mức Vì nói sở liệu phan ảnh tính trune thực, khách quan cúa giới dừ liệu Không dư thừa thông tin khỏng thiếu thông tin Nội dung cúa chương bao gồm phần; • Cơ sỡ liệu gi; • Sự cần thiết hệ sở liệu; • Mô hình kiến trúc mức cư sờ liệu; • Mục tiẽi! hệ sờ dừ liệu; • Hệ quản trị CSDL & người quản trị CSDL: • Tô chức lưu trữ dĩr liệu: • Cá c m ô hình truy x u ấ t 1.1.1 C s 'd ữ liệu gi Cơ sở liệu sưu tập lớn loại liệu tác nghiệp, bao gồm loại liệu âm thanh, tiếng nói, chữ viết, văn bán, đồ hoạ, hình anh tĩnh hay hình ánh động mã hoá dạng chuỗi bit lưu trữ dạng File dừ liệu nhớ m ả y tính, c ấ u trúc lưu trừ d ữ liệu tuân theo q uy lấc dựa lý thuyếl toán học C sớ liệu phàn ảnh trung thực giới liệu thực khách quan (V/ sư d ữ liệu Ic) íùi nguyên Ịhỏììịi^ tin dimịĩ^ chim ^ cho nhịẻiỉ ngirờì: Cơ sở dừ liệu (CSDL) tài nguvẻn thông tin chiiim cho nhiều nụirời sư dụng Bất kỳ ngiròi sử dụng trẻn mạng máy tính, thiết bị đầu CLioi, vè ngiivên tấc có quyền truy nhập khai thác loàn hay phần dừ liệu theo ché độ trực tuyến hay tương tác mà không phụ thuộc vào vị trí địa lý người s d ụ n g với tài nguyên Cơ sơ d ữ ìiệu dược hệ ứng cỈỊữỉg khai fhúc hòrìg ĩiịĩ^ỏrì ng ữ d ữ Hệii cúc chương trình ím g dụng đế xử lý, tìm kiếm, tra cửu sửa đối, bồ sung hay loại bò liệu Tìm kiếm tra cứu thông tin chức quan trọng phô biến dịch vụ CO' sở liệu Hệ quản trị CSDL HỌTCSDL (DataBase Management System - DBMS) phần mềm điều khiến chiến lược tmy nhập CSDL Khi ngiròi sư dụng đưa yêu cầu truy nhập ngôn ngữ liệu dó, HQTCSDL tiếp nhận thực thao tác trẽn CSDL lưu trữ Đối tiiựng nml'iièn ciVii cua C'SDl ílnrc thè niối quan hệ giìm thực thê Thực the mối quan lìệ uiữa CÍÍC lỉiục tlìc hai dồi tirọnu kliñc Iihaii \ c ban Mối quan hệ thực thể c ùn g ỉoại thực tlìê dặc biệt Tron g cách ticp cận C'SÍ.)l qua n hệ, imLiời ta d ụ a sờ lý thuyết íiại sồ quan hệ đè xâ\ dựng quan hệ clìLiân klii két nối khôns tổn thất thông tin biểu diền liệu Dữ liệu đưọc lưu trữ Irone nhó' máy tính phải tính đến yếu tố tối ưu không ụian lưu trữ, mà phải đảm bao tính khách quan, trung thực liệu thực Nehĩa phải đam bào tính nhắt quán ciia liệu iiiừ sụr toàn vẹn ciia dừ liệu 1.1.2 S ự c ầ n thiết ciia hệ CO' sỏ' dù' iiệu T c hức lưu trữ liệu theo !y thuyết CO' SO' liệu cỏ n h ữ n g tru điểm; Giám hớt đít' ílìừa ciữ liệu írong ỉini írừ: Trong ứng dụng lập trinh truyền thống, p hư n g p há p tố c h ứ c lưu trĩr CÌLÌ liệu vừa tốn kém, làng phí nhcV thiết bị lưu trfi\ vừa d thừa thông tin lưu trữ Nhiều cluronii trìnli ứng dụnii khác cùnu xứ Iv trẽn dừ liệu nhau, dẫn đến dư thừa đáng kẻ dử liệu Ví dụ loán nghiệp vụ quan Iv "Cưóc thuê bao điện thoại" "Doanh thu & sán lưọng" tiarnũ ứng vôi moi Miột c h c i m trình ỉà hay nhiêu tệp dừ liệu lưu trữ riẻim biệt, độc lặp vói Trong cá chưong trình xử lý số thuộc tínli ciìa đàm thoại “số máy gọi di“", '^số máy gọi đến‘\ "hirớiìg gọi’\ “thời gian bất dau" "thòi uian kết thúc" Nhiều thuộc tính đưọc mô tả lưu trCr nhiều lần độc lập với Neu tổ chức lưu trữ theo lý thuyết CSDL cỏ thề họp tệp lưu trữ cúa toán trên, chironu trinh ứng dụim có tlìẻ cùim chia sé tài nguyên trẻn liệ CSDL Tố chức lim írữ liệu Ịheo lý ihuyẻỊ CSDL sè írủnh (lirợc khòỉĩiĩ nlìầí cỊuáỉì íroìiịị lưu tr ữ d ữ lỉệ ỵ vù bao dam dược íinh Ịoàỉi vẹj7 cua cỉữìiệu: Nếu thuộc tính đirợc mô tả nhiều tệp liệu khác lặp lại nhiều lần bán glii, klii thực việc cập nhật, sửa đổi, bổ sung sề không sứa hốt nội dung mục Nếu dCr liệu nhiều sai sót cập nhật, bổ sung lón Kha xuất niâii thuẫn, không quán thông tin nhiều, dẫn đến không cỊuán (iữ liệu tronu lưu trữ Tất VCU kéo tiieo dị thường thôniỉ tin, thừa, thiếu mâu thuẫn tliỏng tin Thông thuửnt», thực thẻ thuộc tínli có mối quan hệ ràng buộc lẫn nhau, tác động ảnh liưỏng lẫn Cước đàm thoại phụ thuộc vào khoảng cách thời gian gọi, tức ià phụ tliLiôc hàm vào thuộc tính máy gọi đi, máy gọi đến, thời gian bắt đầu thòi gian kết thúc gọi Các trinh ứng dụng khác xử lý cước đàm thoại thực thể lưu trữ tirong ứ m khác chưa hãn cho kết sán lượng phút doanh thu Điều K giai doanh nghiệp, xử lý trẽn chi tiêu quản lý mà số liệu báo cáo cua phòng ban, công ty lại cho kết khác nhau, chí trái ngược Như vậy, khắng định, liệu không tố chức theo lý th uy ết c s d ữ liệu, tất yếu phản ảnh giới thực d ữ liệu, không phản ảnh đ ún g chất vận động liệu S ự không nhcíí (Ịiián liêu Irong lim írữ làm cho d liệu tính loàn vẹn CLiả Tính toàn vẹn liệu đám bao cho lưu trừ dừ liệu liiòn Khỏng thẻ có mã vùng qu y định CO' quan quản lý ngàv sinh nhân viên k h ô n g the xáy sau ngày tốt nghi ệp trưòìig ciia nhân viên 10 Tỏ chức h m ỉrừ d ữ liệu theo /ý íhiỉyếí CSDL có ílỉê ĩriên khai ckmg ỉhờỉ nhiều tm g dimg irẽn củrìg m ội CSDL\ Điều nảy có nghĩa ứng dụní> không chia sẻ chung tài nguyên liệu mà CSDL có thê triển khai đòng thòi nhiều ứng dụng khác thiết bị đầu cuối khác Tó chức cỉìr Hệ li theo ìý íhiỉvêỉ sa dừ Hệ li íhòng nhâí íìẽu chiiârỉ, ihii tục VÍỊ cúc biện phcip hao vệ, an íoàrỉ d ữ ìíệií: Các hệ CSDL sè diro'C quán lý tập triing bỏi ngirô'i hav nhóm người quản trị CSDL, bang hệ quản trị CSDL Người quản trị CSDL áp dụng thốHii tiêu chuẩn, quy định, thủ lục chung quy định thống mẫu biểu báo cáo, thời gian bổ sung, cập nhật dir lỉệii Điều làm dễ dàng cho công việc bao trì dCr liệu Người quản trị CSDL có thê bảo đảm việc truy nhập tới C SD U có thẽ kiêm tra, kiêm soát quyên truy nhập người sử dụng Ngăn chặn triiv nhập trái phép, sai quy định từ từ vào 1.1.3 M ô h ìn h k iến trú c tô n g q u át CO’ sỏ' liệu m ức Mô hình kiến trúc mức hệ CSDL gôm: Mức trong, mức mỏ hình d ữ liệu (Mức quan niệm) mức ĩigoài CúCra mức tồn ánh xạ quan niệm ánh xạ quan niệm Trung tâm hệ thống mức quan niệm, tức mửe mô hỉnh dci‘ liệu Ngoài cỏ khái niệnì íigười sử dụng, hệ quán trị C'SDL nmrỏi quản trị CSOL N gưỏi sư cÌỊitig: Là n h ữ n g ngiròi thiêt bị đáu CLiòi triiv n h ậ p v hệ C S D L theo ché độ trực tuyến hay tương tác chương trình ứng dụng hay ngôn ngữ liệu Thưòng chuyên viên kỹ thuật tin học, có trình độ thành thạo biết lập trình biết sử dụng ngôn ngữ thao tác diì liệu (SQL Server, Oracle ) Nguời sứ dụng có thê truy nhập loàn hay phần CSDL mà họ qưan tâm, phụ thuộc vào qiivên tni> nhập lìọ C'ách nhìn CSDL người sử dụng nói cliung trìu tiạrng Họ nhìn CSDL bằnu mò hinh ngoài; gọi mô hình dừ liệu Chắng hạn ngưòi sử dụng mộl nhản viẻn ciia phòng kế toán tài chính, nhin thấy tập xuất kiểu ghi doanh thu, san lưọng tháng, nlììn thấy xuất kiểu bán ghi lưu trữ chi tiêu kỹ thuật cua đường thông, mạng lưói Mỏ hình ngoài: Mô hình nội dung íhỗng tin CLÌỄI CSDL cách nhin ngLròi sử dụng, l.à nội d u n g t h ò n g tin cua phần d ữ liệu tác nghiệp đ ọ c m ộ t ngưòi hoặe nhóm níiười sứ dụng quan tâiiì Nói cách khác, mô hình nìỏ la cách ỉihin dừ liệu cùa người sử dụng người sử dụng có cách nhìn dù' liệu khác Nhiều mô hinh khác tồn hệ CSDL, nghĩa có nhiều ngưòi sư dụng chia sé chung CO' sở dĩr liệu Hơn nữa, m ô hình quan hệ, mỏ hình p h â n c ấ p hay mô hình kiểu mạng tồn sỏ’ liệiL So' đồ không làm "hiệir' mà nhúng vào logic đon tác cỏ liên quan • Mò hình g m nhiều xuất kiểu ghi ngoài, nghĩa ng ưò i sử dụng có sơ đồ dCr liệu riêng, khung nhỉn iiệu riêng Bán ghi cua người sử dụng khác với bán ghi lưu trữ ghi quan niệm • Mỏ hinh dtroc xác dịnh sơ đồ bao gồm mô tẳ kiểu ghi rên trirờiig kiểu dQ' liệu trirờng, độ rộng trường • N gô n n g ữ c on liệu ngLrời sử dụ ng thao tác trẽn ghi 11 • Người s d ụ n g khác có k h u n g nhin liệu khác • Người sử dụng đầu cuối có thề lả ừng dụng liav thao tác trực tiếp bànu ngôn ngữ thao tác, truy vấn iiệii Mô hhih d ữ liệu (mỏ hình quan ìiiệm}: Mô hình quan niệm cách nhìn liệu mộí cách tổng quát người sử dụng Nghĩa có nhiều cách nhìn liệu ò’ mô hình ngoài, có cách nhiiì dũ' liệu mức quan niệm Biểu diền toàn thông tin CSDL • Mò hinh liệu gồm nhiều xuầl cua nhiều kiểu ban ụhi dử liệu Ví dụ kiểu \uất ghi nhân sụ\ kiếii xuất bán ghi doanh thu, san lượng, kiểu XLiấì ban lỉhi cưởc đàm thoại • M ô hinh d ữ liệu đ ợ c xác định bỏi m ộ t SO' đồ dũ' liệu mô tả nhiều kiếu thực thể, chẳng hạn nlur mô tả thực thể tuyến cáp, loại cáp, thầy giáo, học sinh Sơ đồ diì liệu bao gồm định nghĩa kiểu ghi, ràng buộc cho quyền tính toàn vẹn tliích họp Những ràng buộc tính chất dù liệu, lính liên két thuộc tính củnu kiểu liệu Các định nghĩa không bao hàm cấu trúc lưu trữ, chiến lược truy nhập, cíuìng định nghĩa nội dung thông tin, tính độc lập liệu mô hinh quan niệm • Sơ đồ quan niệm ỈL iò n ôn định, nghĩa mô tả thêm biệt sát nhập vào sơ đồ liệu, không iàm thav dôi sơ dồ liệu kiểu thực thể đặc cù Neu sơ đồ dũ’ liệu không ồn định thi ứng dụng mỏ hình củng không ôn định So’ đồ dũ' liệu chi đuọc thay đối k lứ c ó điều chinh the giói thực, đòi hói điều chinh lại định nghĩa cho phản ảnh giới thực khách quan hon, chân lý ho‘n • Thiết kế mô hình liệu giai đoạn quan trọng dịnh việc thiết kế cài đặt hệ sớ liệu Quá trình íliiết kế không phụ thuộc nhiều vào cấu trúc lưu trừ vật lý chiến lược truy nhập cũa liệu Như vặv việc thiểt ké SO' đồ liệu phải đưục lien hành độc lập với việc thiết kế SO' đồ tro ng s dồ liên kếu neu kh ỏ n g việc thicl kc không ổn định t h n g xuyên phái \eiTi xét lại lác độn g tlurònu xuyên đén nhiều ihành phần khác cúa hệ thống • Với cách thiết kế truyền thống nay, ngưòi thiết kế chi cung cấp một-số sơ đồ tập sơ đồ họ coi sơ đồ dfr liệu, mỏ hình liệu Vì vặy tỉnh khôn g ổn định hệ thống, lính kh ôn g phù h ọp vói ửnii (ÌỊiiig sinh sau mộl thòi gian hoại động Mâu dị thưòng thòng tin sè \â y Vi phạm tính ít)àn vẹn cua liệu • Ngoài định nghĩa xuất nlìiềii kiêu ban ghỉ quan niệm, sơ đồ liệu chứa định nghĩa quyền truy nhập cúa ngiiửi sứ dụng, thư tục kiêm tra tính đan liệu nhằm bảo đàm tính toàn vẹn CSDL Các luồng lưu chuyến tliông tin, quy định cách thức sử dụng thông tin N hư vụv lĩiô hình cỉữ Hệiỉ ¡¿Ị cách nhìn ioíiiì hộ nội chiỉìịỉ, thônọ, ỉin cua C SD L sơ dồ quan niệm lù định nghĩa cua cách nhìn áy Lii hước di clầit iiữn c/uan ỉrọỉìịỉ Ỉroỉiịỉ việc íhièl kế cùi đật hệ sợ d ữ ỉiệii 12 Thuật toán 2PC-Participant (thành viên) Declare-var Msg: Message Ev: Event Begin WAIT(ev) Case o f ev {các biến cố khả hĩru !à MsgArrival Timeout} MsgArrival: Begin Đặt thông báo vừa đến msg Case o f msg Prepare: Begin If sẵn sàng uỷ thác then Begin Ghi mẫu tin ready vào nhật ký gửi thông báo vote-commit đến điều phối viên đặt cho định end else begin {hủy bỏ đơn phương} ghi mẫu tin abort vào nhật ký gửi thông báo vote-abort đến điều phối viên yêu cầu xir lý liệu cục hủy bỏ giao dịch end end-if end global-abort: begin ghi mẩu tin abort vào nhật ký yêu cầu xử lý liệu cục hủy bỏ giao dịch end global-com m it: begin ghi mẩu tin commit vào nhật ký yêu cầu xử lý liệu cục uỷ thác giao dịch end 114 end-case end Timeout ßegin thực thi nghi thức kết thúc end end-case end {2PC-Participant} T ín h kh ả tu ần tự lịch biếu việc sử d ụ n g ch u n g Mục đích ciia giao thức điều khiên tưong tranh xếp lịch thực cho không xảy tác động lẫn chúng Có giải pháp đơn giản: Chì cho phép giao dịch thực thời điểm Nhưng mục đích hệ quàn trị sở liệu đa người dùng lại tối đa hoá thực đồng thời hệ thống cho giao dịch thực đồng thời không ảnh hưởng lẫn Lịch biếu dãy (có thử tự) thao tác tập giao dịch tưong tranh mà thứ tự mồt thao tác mồi giao dịch đưọc bảo toàn Đây vấn đề xử lý hoạt động đồng thời cỏ liên quan đến nhà thiết kế CSDL nhà thiết kế hệ thống đồng thòi tổng quát Giả sử có tập giao dịch s ÍT|, Tì, } Lịch biểu tuần tự: Chúng ta thấy imay néu giao dịch thực tiiầrĩ theo thứ tự đó, thao tác giao dịch thực nhau, thao tác cúa giao dịch khác xen kẽ vào cố tranh chấp chác chắn không xảy CSDL có kết Chúng ta định nghĩa lịch biêu cho tập giao dịcli s th ứ tự (có thê xen kẽ) bước han cua cua giao dịch (khoú, đục, ghi, ) thực hiệrì Các bước cùa giao dịch cho phải xuát lịch biếu theo thử tự xảy giao dịch Lịch biểu không tuần tự: Là lịch mà đỏ thao tác cúa tập giao dịch tương tranh xen kẽ vào Bỏ’i luỏn có lịch biêu tuồrì tự cho tập giao dịch s vi giả sử hoạt động giao dịch đồng thời điing đắn chí tcĩc dụng cua giong tác dụng có cùa lịch hiẻu Lịch biểu gọi khcì íiiầrì ỉự {seriaHzaNe) nẻu íác dụrìg cua giong với tác dụrìg cua m ột lịch biêu íuần tự Lịch biểu gọi bất khả tác dựng không giống với tác dụng lịch biểu Mục tiêu xếp lịch vói tập giao dịch đồng thời, đưa lịch biếu khả 115 Trong việc hoá, thứ tự cùa thao tác đọc ghi quan trọng: - Nếu hai thao tác chì đọc mục dCr liệu thỉ chúng không ảnh hướng đến thứ tự giCra chúng không quan trọng; - Neu hai thao tác đọc hay ghi hai mục liệu hoàn toàn khác chúng không ảnh hưỏng đến thứ tự chúng không quan trọng; - Nếu thao tác ghi mục liệu thao tác khác đọc hay ghi mục liệu thi thứ tự chúng quan trọng Xét lịch biểu: Lịch biểu thị trưòng T| Read A Ã:=Ả-ĨO WriteA Read B B:=B+10 WrileB RcadB B:=B-20 WriteB Read c ' ]::= C + Write c Lịch biểu khả T| T ReadA ReadB A:=A-IO B ;-B 20 WrieA WriteB ReadB Read c B:=B+10 C:=C+20 WriteB WriteC (a) Lịch biểu bất khả T, T, ReadA A:=A-ÍO ReadB WriteA B:=B-20 ReadB WriteB B:=B+10 ReadC WriteB C -C + Write c (b ) (c) Hình 2.15 M ột số lịch biểu Hinh 2.15 (a) lịch biểu tuần ụr; Hinh 2.15 (b) lịch biểu tuần tự; Hinh 2.15 (c) lịch biếu bất khả tuần tự; Trong thực tế, qua tính chất đại số đơn ta gặp lịch biểu bất khả cho kết so với lịch biểu 2.5.4 Các kỹ thuật điều khiển tưong tranh bàng khóa Hệ quản trị CSDL phục vụ nhiều người dùng Mỗi người thực nhiệm vụ khác nhau, truy nhập đến mục liệu Việc sử dụng chung liệu khoảng thời gian thường dẫn đến tranh chấp người dùng, Họ tranh chấp thứ tự truy nhập tranh chấp liệu truy nhập họ chấp nhận khai thác tương tranh Việc giao dịch thực liệu khoảng thời gian gây ra: thất lạc phép toán, không đảm bảo tính chặt chẽ CSDL Điều khiển khai thác tương tranh trang chức hệ quản trị CSDL Nó đảm bảo điều khiển khai thác cách đồng thòi phép toán liệu, cho kết 116 khai thác Đối tượng điều khiển gịáb dịch Những tài nguyên điều khiển khoảng thời gian, vùng nhớ, N ói cádt Khác việc điều khiển khai thác tưong tranh đề cập phân phối thời gian thực hiện, chia sè liệu số người sử dụng • Khoá Khoá (Lock) đặc quyền giao dịch quản lý khoá frao cho để truy cập mục liệu Hay khoá biến gắn với mục liệu sở liệu để biểu diễn trạng thái mục liệu mối liên quan đến thao tác thực Bộ quản lý khoá thu hồi lại khoá Tại thời điểm, mục liệu X có trạng thái: - Có khoả đọc (read-lock) (còn gọi khoá chia sẻ - shared lock): chi cho phép giao dịch đọc mục không cập nhật mục - Có khoả ghi (wrire-lock) (còn gọi khoá độc quyền - exclusive lock): cho phép thực hai thao tác đọc, ghi - Không có khoá Các khoá đưọrc sử dụng theo cách sau: + Bất kỳ giao địch cần truy cập vào mục liệu trước hết phải khoá mục liệu lại Giao dịch yêu cầu khoá đọc chi cần đọc liệu yêu cầu khoá ghi vừa cần đọc cần ghi iiệu + Nếu mục liệu chưa bị khoá giao dịch khác khoá cấp phát theo yêu cầu + Nếu mục liệu bị khoá, HQT CSDL xác định xem khoá đuợc yêu cầu có tương thích với khoá hành hay không Khi giao dịch yêu cầu cấp khoá đọc cho mục liệu mà mục có khoá đọc (của giao dịch khác) khoá yêu cầu cấp phát Trong trường hợp khoá yêu cầu khoá ghi giao dịch yêu cầu khoá phài chờ khoá hành giải phóng cấp khoá 117 + Một giao dịch tiếp tục giữ khoá tliòi điẽm khoá giải phóng, thòi điêm năm trình tlụrc giao dịch tliời diêm íiiao dịch chuyên giao hay bị huý bò Chi khoá ghi đưọc gìái kết cua thao tác ghi thấy giao dịch khác Một sổ hệ thống cho phép giao dịch đưa khoá đọc mục dừ liệu sau nâng cấp khoá lên thành khoá ghi Điều cho phép ííiao dịch kiểm tra liệu trước, sau định có cập nhặt hay không Bộ quàn lý khoá lưu khoá khoủ (lock table) Khỉ điều khiển hoạt động tương tranh khoá, có Ihể xảy tình huống; Khoá sống (iive-lock) tình mà giao dịch yêu cầu khoá mục mà chẳng nhận khoá có giaodịch khác giũ'khoá trênmục {khoá sống mục A giao dịch T khoá không khoá đirọc A Aluôn bị khoá bới giao dịch khác), có số lằn giao dịch có hội nhận khoá mục Rất nhiều giải pháp đă nhà thiết ké hệ điều hành đề xuất vấn đề giáỉ khoú sống Có thể sư dụng chiến lược đơn giản "đếìi ĩnrớc, phục vụ ĩrư c ' đế loại bỏ khoá sống B ế íẳc hay khoá gài (deadlock) tình mà giao dịch tập hay nhiều giao dịch đợi nhận khoá mục bị khoá bời giao dịch khác tập giao dịch neược lại (một mục giao dịch bị ^¿ìi giao dịch khác ngược lại) Ví dụ 2.30: Giả sử có hai giao dịch đồngthời TI -và T ị sau: T1 : Lock A ; Lock B ; Unlock A ; Unlock B; Tt : Lock B ; Lock A ; Unlock B ; Unlock A; T| va Tt thực số tác vụ A B Giả sử T| T:> thực lúc Tị yêu cầu trao khoá A, T) yêu cầu đirợc trao khoá B Do Tị yêu cầu khoá B phải đọi T.) đa khoá B Tirơng tự T.) yêu cầu klìoá A phải đợi vi Tị khoá A Kết không giao dịch tiếp tục hoạt động được: giao dịch phải đọi giao dịch mó’ khoá, chúng phải đợi nlnrng chẳng nhận khoá yêu cầu Để tránh bế tắc sử dụng giái pháp: (i) Buộc cúc giao dịch phai íhra íầi ca veil cầu khoủ lúc q im i ìỷ khoá trao tất khoá cho chúng được, không trao cho giao dịch đợi hay nhiều khoá yêi! cầu bị giữ giao dịch khác, (ii) Gán th ứ tự tuyến tÍỴ ìh cho mục yêu cầu tất cà giao dịch phải xin khoá theo thứ tự (ịii) Cách khác đế x lý bé tắc định kỳ kiểm tra yẻii cầu khoá phát có xả> bế tắc không Bằng cách dùng đồ thị chò’, với nút biểu diễn giao dịch cung Tj -> Tj biểu thị Tj đợi nhận khoá mục T, giữ Nếu đồ thị có chu trinh, bế tấc xảy chu trinh thi kết luận khoá gài hay bế tắC- 118 Nếu khoá gài bị phát hiện, hệ thống buộc giao dịch bị bế tắc phải khởi động lại tác dụng giao dịch sở liệu phải hoàn toàn trả lại 2.5.4.I Mô hình khóa Khoá (Lock) đặc quyền truy cập mục liệu mà quản lý khoá (lock manager) trao cho giao dịch thu hồi lặi Trong mô hình giao dịch có sử dụng khoá thao tác đọc ghi mục mà có thao tác khoá (lock) mở khoá (unlock) chúng Mỗi mục khoá phải mở khoá sau Với mục A, bước lock A unlock A giao dịch, giao dịch phải coi giữ khoá A Trong mô hỉnh này, dựa ữên giả định sau: - Một khoá phải đặt mục trước đọc hay ghi mục - Các thao tác khoá hoạt động sờ đồng hoá, nghĩa giao dịch khoá mục bị khoá trước giao dịch khác, thao tác mục lchoá giải phóng lệnh mở khoá giao dịch giữ khoá trước thực - Mỗi giao dịch mở khoá khoá - Một giao dịch không yêu cầu khoá mục giữ khoá mục mở khoá mục mà không giữ khoá mục Các lịch biểu tuân theo quy tắc gọi hợp lệ Ví dụ 2.31: Xét hai giao dịch đồng thời Ti T2 truy xuất đến mục liệu A theo mô hình là: Ti L ock A T Lock A Read A Read A A;=A+1 A:=A+1 Write A Write A Unlock A Unlock A N eu T bắt đầu trước T2, yêu cầu khoá ừên mục A Giả sử giao dịch khoá A, quản lý khoá sỗ cho khoá mục Khi có T truy xuất đến mục Nếu T2 bắt đầu trước Ti chấm dứt thi T2 thực Lock A, hệ thống buộc T2 phải đợi Chi đến T| thực lệnh Unlock A, hệ thống cho phép T tiến hành Như vậy, Tị hoàn thành trước T2 bắt đầu kết sau hai giao dịch, giá ừị A 32 Với mô hình này, để kiểm tra tính khả lịch biểu, ta xem xét thứ tự mà giao dịch khoá mục cho Thứ tự phải thống với thứ tự lịch biểu tương đưomg Đây thực chất việc kiểm tra đồ thị có chu trình hay không Thuật toán 3: Kiểm fra tính khả lịch biểu Nhập\ Một lịch biểu s cho tập giao dịch T), T2,—, Tfc Xuẩv Khẳng định s có khả hay không? Nếu có đưa lịch biểu tương đương với s 119 Phương pháp: Bưỏ'c 1: Tạo đồ thị có hướng G (gọi đồ thị lioá), có nút giao dịch, cung đồ thị đưọc xác định sau: Gọi s ai, a 2, a„ a, thao tác giao dịch có dạng; T ị: Lock A|„ h o ặ c Tj : U n lo c k A|„ với Tj giao dịch thực thao tác khoá mỏ' mục A|„ Nếu a, Tý Unlock A,„ hành động ẵp a, có dạng Ts! Lock A,„ Neu s ^ j vẽ cung từ T| đến Ts- Cung có nghĩa lịch biểu tương đương, Tj phải trước Ts Bước : Kiểm tra, ộ cỏ chu trình s bất khả Neu G chu trinh ta tìm thứ tự tuyến tính cho giao dịch, T, trước Tj có cung từ T| -> Tj Đe tim thử tự tuyến tính đó, ta thục trinh xếp topo sau Đầu tiên ta xuất phát từ nút T| khôií^ có cung vào (ta tìm thấy nút thế, không G đồ thị có chu trình), liệt kê T| loại bỏ Tj khỏi G Sau lặp lại trình đồ thị không nút Khi đó, thứ tự nút liệt kê thứ tự giao dịch Ví dụ 2.32: Giả sừ ta có lịch biếu cúa ba giao dịch T|, T), Tu sau TI : Lock A Tị ; Lock B T j : Lock c Tj : Unlock B TI : Lock B T, ; Unlock*A T : Lock A T : Unlock c T : Unlock A T : Lock A T, : Lock c T, : Unlock B T : Unlock c T : Unlock A ĐỒ thị có lút T |, T T Các cung xây dirng nliư sau: bước (4) ta có T ị Vậy ta vẽ cung từ Ti > bước ( ) ta cỏ T| Vậy ta vẽ cung từ T| ^ 120 : Unlock B,bưóc có lệnh Lock B bước (5) T|: Lock B T| : Unlock A, bước có lệnh Lock A ià bước (7) Tv Lock A Ti bưỏc (8) ta có T2 : Unlock c , bước có lệnh Lock c bước (II) T v Lock c Vậy ta vẽ cung từ T2 T ì bưóc (9) ta có T: :Unlock A, bưóc có lệnh Lock A bưóc (10) có Ty Lock A Vậy ta vẽ cung từ T? Tv Đồ thị có chu trinh nên lịch biểu cho bất khả / (ỉụ 3 : Lịch biếu ba giao dịch T|, Ti Tí (1) T: : Lock A (2) T ; Unlock A (3) T : Lock A (4) T;, : Unlock A (5) T : Lock B ( 6) T, ; Unlock B (7) T t : Lock B ( 8) T : Unlock B - Hình Ị Đ thị cho ba giao dịch 2.5,4,2 M ô hình khóa đọc khóa g h i Trong mô hình khoá ca bàn, ta già sử khoá mục có tlìể thay đồi mục Trên thực tế, có trường hợp giao dịch truv cập mục theo nghĩa chí đọc giá trị mục không thay đối giá trị mục Vì ta phân biệt hai loại truy cập: chi đọc (read only) đọc ghi (read write), thi ta tiến hành số thao tác đồng thời bị cấm mọ hình khoá Khi đó, ta phân biệt hai loại khoá sau: Khoá đọc (read lock or shared lock) ký hiệu RLock hoạt động sau: giao dịch T chí muốn đọc mục A thực lệnh RLock A, ngăn không cho giao dịch khác ghi giá trị vào A T khoá A, nlumg giao dịch khác giừ khoá đọc A lúc với T Khoá ghi (write lock) ký hiệu WLock hoạt động mô hinh khoá bản, nghĩa giao dịch muốn thay đổi giá trị mục A thực lệnh WLock A Khi đỏ không giao dịch lấy khoá đọc khoá ghi trẻn mục Cả khoá đọc khoá ghi mớ bàng lệnh Unlock Ngoài giá định mô hinh khoá bản, ta có thêm giá định giao dịch yêu cầLi khoá ghi mục mà giữ khoá đọc 121 Hai lich bieu la tuang dirong neu; chung sinh cung mot gia tri cho moi muc va moi khoa doc dugc ap dung boi mot giao dich xay ca hai lich bieu vao nhung luc muc bi khoa CO cimg gia tri T h u a t toan 4: Kiem tra tinh kha tuan tu cua cac lich bieu vai cac khoa doc/ghi Nhgp: Mot lich bieu S cho mot tap cac giao dich T], T ; ]\ Xudt: Khang dinh S c kha tuan tir hay khong? Neu c thi dua mot lich bieu tuan tir tu’ong duong voi S Phu’O’ng phap: Bu'oc 1: Chung ta xay dung mot thi c huong G (goi la thi tuan tir hoa), c cac nut lacac giao dich Cac cung cua thi dugc xac dinh bang quy tac sau: Gia su‘ S, T, nhan khoa doc hoac khoa ghi muc A, '1', la giaodich ke tiep khoa A, va i ^ j, thi ta se dat mot cung tu' T, ghi Tj Gia sir S, giao dich Tj khoa ghi A, T,n la khoa doc A sau T, mo khoa A nhung truoc cac giao dich khac khoa ghi A, va i ^ m, thi ta se dat mot cung tir T, —> T,,, Birac : Kiem tra, neu G c chu trinh thi S bat kha tuan tir Neu G khong c chu trinh thi mot sap xep tope cua G la thiV tu tuan tir cua cac giao dich Vi du 2.34: Mot lich bieu ciia bon giao dicii ( 1) T : RLock A (2 ) : RLock A (3) T : WLock B (4) T ; Unlock A (5) : WLock A ( 6) T : Unlock B (7) T : RLock B (8) (9) : Unlock A T j : RLock B ( 10) T : RLock A ( 11 ) T : Unlock B ( 12) T, : WLock C (13) T| : Unlock A (14) T j : WLock A (15) T j : Unlock A (16) T, : Unlock B (17) T, : Unlock C D thi tu4n tir hoa ciia lich bieu dugc trinh bay hinh 2.18 Cac nut la bon giao dich Tj , 122 , T Cac cung dugc xac dinh nhu sau: buức (4) T mò' khoá mục A Bước ( ) T;, khoá ghi mục A, T3 phái sau T2, có cung từ Ty đến Tv bước ( ) T mờ khoá mục B Bước (7) T khoá đọc mục B T bước (9) Như T| T4 phải sau T.ì, có cung từ T đến nút bưóc ( ) Tì mỏ' khoá mục A Bước (10) T| khoá đọc mục A khoá ghi mục A T4 bước (14) Như TI T4 phải sau T 3, có cung từ T3 đến nút bước (13) Tị mỏ- khoá mục A, bưóc (14) T4 khoá ghi mục A, T phải sau T|, có cung từ T| đến T4 Hình 2.18 Đ thị hoá Sắp xếp topo cho đồ thị ta thứ tự giao dịch là; T |-> T 7-> T > T4 Giao thức hai pha mô hình trước cOng có the áp dụng cho mô hinh Các khoá đọc khoá ghi trước bước mở khoá, điều đảm bảo tính khả lịch biêu Trong mô hinh ta rút quy tắc liên quan đển việc trao klioá nhir sau: Một khoá đọc mục trao cho giao dịch khoá ghi giao dịch khác giữ Một khoá ghi trén mục trao cho giao dịch khoá đọc khoá ghi giao dịch khác giữ mục đỏ 2.5,4.3, Thuật toán điều khiển tư ơn g tra n h bằn g nhãn th i gian Đẻ đàm bảo tính khả cùa lịch biểu, mô hình sử dụng khoá trinh bày Ta sử dụng nhãn thời gian (timestamp) Ý tưởng gán cho giao dịch nhãn thời gian, điểm bắt đầu giao dịch Chẳng hạn mồi giao dịch bắt đẩu, hệ thống gọi xếp lịch giao dịch trao cho nhãn thời gian giá xếp lịch trao nhãn thời gian lần giao dịch yêu cầu truy xuất mục sở liệu Lim ý: Không xảy trường họp hai giao dịch có nhãn thời gian 123 • Thiết !ập nhãn thòi gian Nếu tất giao dịch lập lịch gáỉì ỉìhàỉi ihởì giun lập lịch trì đếm số lượng giao dịch đà đưọc lặp lịch Khi có ũ;iao dịch mói yẻu cầu lập lịch, lập lịch tăng đếm số lưọng lên đon vị iịản trị số cho siao dịch có yêu cầu Như vậy, không thề xảy trường họp hai giao dịch có nhãn thời gian, thử tụ tương đối ìĩhãỉi thìĩị g k w cùa giao dịch cìiim thứ tụ mà íiiao dịch đưọc thực Một cách gáìi rìhãn thời gỉan khác cho giao dịch dùng giá trị đồng hồ hệ thống thời điểm bắt đầu giao dịch Trong trường họp tồn nhiều xếp lịch hệ ihốno CSDL chạy trẽn máv đa xử lý hệ CSDL phân tán ta phái gán thêm niội hậu tố cho mồi nhăn thòi gian Hậu tố định danh cua xử K tưonu ứn” Klii đó, việc đồng hoá đếm đồng hồ dùng \ ứ lý yẻu cầu quan trọnu đẽ đảm bao tính lịch biểu • Đảm bảo tính khả nhãn thời gian Trong lưọc đồ đọc “■ghi, liên kết mục sỏ’ liệu với hai thời điểm: - Thòi điểm đọc (RT - Read Time); nhãn thòi gian cao nhắl có giao dịch đọc mục - Thời điểm ghi (W T - Write Time): nhãn thòi gian cao có giao dịch ghi mục Bằnệ cách thực thế, cho mồi giao dịch tlìực lập tức, thòi điểm đưọc bànu nhăn thòi gian Trước hết, cần quan tâm tới số lỉnh huong sau: (1) Không xảy trường hợp giao dịch đọc đtrọc giá trị cúa mục giá trị chưa ghi sau lúc thực giao dịch Nghĩa mộl giao dịch có nhãn thời gian tị đọc mục cỏ thời điểm ghi Í2 > t| Nếu íiìột trường liợp xảy giao dịch có nhãn thời gian t| phải bị luiỷ bỏ khơi động lại với nhãn thời gian (2) Không xảy trưòna họp giao dịch ghi giá trị cùa mục giá trị cũ ciìa mục đỏ đọc thòi điểm sau Nghĩa giao dịch có nhàn thời gian ÍỊ ghi mục cỏ thời điểm đọc Ì2 t.i > t| Nếu trưòng họp xáy thi giao dịch có nhăn thời gian tị phải bị huỳ bò đưọc khới động lạỉ với nhãn thời gian mói Ọuy tắc tri thứ tự nhàn thòi gian sau Giả sứ ta có giao dịch cỏ nhãn thòi gian t muốn thực thao tác X mục có thòi điếm đọc t( thòi điểm ghi thi: a/ Cho thực thao tác nếu: X ^ Read t > X - Write t > tr t > tw Trong trườr.g họp trước, đặt thòi điểm đọc t t > tj trường hợp sau, đặt thời điểm ghi t t > t,, 124 b/ Không thực X = Write t, < t < c/ Huỷ bỏ giao dịch nếu: X = Read t < tu X = Write t < t, Ví dụ 2.35: Trong RLock xem Read, WLock xem Write, bước Unlock khône tồn Các giao dịch Ti, Tt , Ta, T có nhãn thời gian 100, 200, 300, 400 bước (1), T (có nhãn thòi gian t = 200) đọc A (có WT = 0), tức t > t„.Thao tác đưọc phép, vi t > tr (bằng 0) nên RT cùa A đuọc đặt lại 200 Tương tự bưóc (2), T (có nhãn thòi gian t = 300) đọc A (có WT = 0), tức t > t„ Thao tác đưọc phép, t > tr (bằng 200) nên RT cìia A đưọc đặt lại 300 bước (3), T (có nhãn thời gian t = 200) ghi B (có RT = WT = 0), tức t > Tr t >tw Thao tác phép, vi t > tw (bằng 0) nên WT B đặt lại 200 bước (4), T;, (có nhãn thời gian t t Tf > t« Thao tác 'lày phép, vi t > t\v' (bằng 0) nên WT A đặt lại 300 bước (5), T| (có nhãn t < 300) ghi A (có RT =" 300 WT=0), tức t > tw Vi thao tác TI T| 100 (1) bị huỷ bỏ T4 A _ B c T, _T., 200 300 400 Read A (2) RT=0 WT=0 RT=0 WT=0 RT=300 Write B (4) RT=0 WT=0 R T-200 Read A (3) (5) thời gian t = 100) đọc B (có WT = 200), tức WT=200 Write A WT=300 Read B T ị bị huỷ bỏ Vi dụ 2.36\ Giả sử có hai giao dịch T|, T ị cùiĩg đồng thời truy xuất tói mục liệu A Với RT thòi điểm đọc WT thòi điếm ghi mục liệu A bị thay đổi Chúng ta giả sử thời điểm đọc thời điểm ghi ban đầu Và T|, T có nhãn thời gian tương ứng 150 160 Giả sử giao dịch thục với dãy hành động sau: 50 (1) (2) (3) 160 Read A Read A A;=A+1 (4) A:=A+1 (5) Write A ( 6) RT=0 WT - Write A 125 Yeu cau: Anh (chj) hay cho biet giao dich nao xay ra, giao dich nao bi huy bo va dien giai? Nhan xet Tra I6i: Xac dinh RT, WT cua tung thao tac T, T 160 150 ( 1) (2 ) Read A (3) A:=A+I Read A A RT - W T=0 R T -I5 RT= 160 A:=A+1 (4) (5) (6) Write A WT=160 Write A TI bi huy bo Dien giai: Tai buac (1): RT ciia A la: 150 T| doc muc du' lieu A (2): RT cua A la: 160 Tidoc muc du' lieu A (3): TI thirc hien tinh A (4): Ti thuc hien tinh A (5): Khi T t ghi A nhan thai gian ciia Ti la 160 => WT = 160, ciing khong nho hon WT cua A ia Thao tac ghi dirge thirc hien ( ): Khi T| co g^ng ghi vao A, nhan thai gian cua T| la 150 => WT 150 < RT = 160 => Thao bi huy bo Nhan xet: Mgt chuoi sir kien tuong tir cimg xay neu nhan thai gian ciia T| > Ti Tj bi huy bo a bu'oc (5) > Do Vi du 2.37: Gia sir co ba giao dich T|, Ti, T;, hoat tac tren ba muc du' lieu A, B C v6 i nhan thai gian tuong ung la 200, 150, 175 Vai RT la thai diem doc va W T la thai diem ghi ciia muc dir lieu A dugc chi no bj thay doi Chung ta gia sir rang thai diem doc va thai diem ghi ban dau la Gia sir cac giao dich dirge thirc hien v6 i mot day cac ^ 200 (1) (2) (3) (4) (5) (6 ) (7) 126 anh dong nhir sau: T T, ^ 50 Read B Read A Read C Write B Write A Write C Write A Y cầu: Anh (chị) cho biết giao dịch xáy ra, giao dịch bị huỳ bỏ diễn giải? Nhận xét T r ả lòi: Xác định RT, W T thao tác TI T2 T3 A B c 200 150 175 RT = W T -0 RT = WT = RT = W T- (I) (2) (3) Read B (4) Write B Write A • (5) (6) RT - 200 R T = 150 Read A Read c WT = 200 WT= 200 Write c T j bi hiiỷ bỏ (7) RT= 175 WT=150 Write A W T - 175 Diễn giải: Tại bước ( I ): RT cùa B là: 200 TI đọc mục liệu B (2): RT cùa A là: 150 T^đọc mục dĩr liệu A (3): RT cũa c là: 175 Tí đọc mục liệu c (4): WT cùa B 200 > RT cùa B 200 => Thao tác thực (5): WT A 200 > RT cùa A 150 => Thao tác thực (6): WT c 150 < RT c 175 => RT > WT => T ị không thực được, thao tác bị huỳ bỏ (7) : T, thực ghi A mà WT cùa A 175 > RT cùa A = 150, không cần huỷ bò Tuy nhiên, thời điểm ghi A 200 T| ghi => Vì giá trị A ghi không đưa vào sò' liệu 127 [...]... dữ liệu phân tán Các máy tính được nối với nhau bởi một mạng truyền thông 34 Hình 2.3 M ô hình c ơ sở dữ liệu ngân hàng phân tán 2 .1. 2 Phân loại cơ sở dữ liệu phân tán Nhìn chung, cơ sở dữ liệu phân tán được chia thành hai loại sau: (1) Cff sở dữ liệu phân tán thuần nhầ Cơ sở dữ liệu phân tán thuần nhất là loại cơ sờ dữ liệu được thiết kế bằng cách chia nhỏ cơ sở dữ liệu phân tản đó thành nhiều cơ sở. .. TC# MC# SL NG TOI MOI 10 21/ 10 /19 96 TOI M02 20 15 /7 /19 82 TOI M03 15 20 /1/ 19 81 T02 MOI 29 31/ 12 /19 99 T02 M02 18 15 /9 /19 98 T03 M04- 10 3/9 /19 99 T04 M02 4 1/ 5 /19 80 T04 M03 8 27/9/2000 31 b) Thông tin về các tuyến cáp: TC# c) TOI Hà Nội - Hải Phòng 12 0 km 1/ 2 /19 80 T02 Hà Nội - Quảng Ninh 17 0 km 31/ 12 /19 85 T03 Hải Phòng - Quảng Ninh 60 km 30/6 /19 90 T04 •H à N ộ i-H à Tây 15 km 31/ 12 /19 79 Thông tin về các... MOI Loại 10 dôi M02 VNA TI T2 10 29 21/ 10 /19 96 31/ 12 /19 99 1, 5 HQA Hàn Quôc TI T2 T4 10 18 4 15 /07 /19 82 15 /09 /19 98 01/ 05 /19 80 Loại 20 đôi M03 Cáp đông trục ~3 Ị TI T4 M04 Ị Cáp sợ i quang I Việt Nam 4 T3 NGA Nga 15 8 Ị LDA 20/ 01/ 19 81 27/09/2000 I 10 VN-HQ 03/09 /19 99 Hình 1. 9 D ữ liệu biểu diễn dưới dạng phân cấp • Các phép tìm kiếm: Các xuất hiện của các bản ghi phụ thuộc chỉ tồn tại khi và chỉ khi... sở dữ liệu địa phương Các cơ sở dữ liệu địa phương được định vị tại một frạm và đều được quản trị bằng một hệ quản frị => thực hiện ừên cùng một hệ điều hành Hình 2.4 T hiết kế c ơ sở dữ liệ u phân tán thuần nhất 35 (2) C ơ s ở dữ liệu phãn tán không thuần nhất Cơ sở dữ liệu phân tán không tluiần nhất là loại CO' sở dừ liệu đưọc thiết kế bàng cách hợp nhất nhiều cơ sở dữ liệu địa phưona hiện đà có và. .. Server 1. 1.7.5 Các mô hình kiến trúc ứng dụng Client Server a Kiến trúc 2 lớp b Kiến trúc 3 lớp Hình 1. 8 Kiến trúc ứng dụng 2 v à 3 lớp 1. 2 CÁC MÔ HÌNH C ơ SỞ DỮ LIỆU Trong chưcmg I đã giới thiệu mục tiêu của các hệ cơ sở dữ liệu là tính độc lập và tính toàn vẹn của dữ liệu Trong chưcmg này giới thiệu các phương pháp tiếp cận mô hình dữ liệu: mô hình cơ sờ dữ liệu mạng, phân cấp, cơ sở dữ liệu quan hệ và. .. bộ nhở H ình 1. 2 S ơ đồ k iến trúc hệ tìiống cơ sở dữ liệu 1. 1.5 Hệ quản trị CSDL & người quản trị CSDL Hệ quàn trị CSDL DBMS (DataBase Management System) là hệ thống phần mềm điều khiển toàn bộ các chiến lược truy nhập và cấu trúc lưu trữ cơ sở dữ liệu Các chức năng chủ yếu cùa một hệ quản frị cơ sở dữ liệu: - Mô tả dữ liệu tạo lập và duy trì sự tồn tại của CSDL; - Cho phép fruy xuất vào CSDL theo... truyền tin và sự bành trưóng cúa internet C ơ sở dũ' liệu phân tán đã trờ thành một lĩnh vực thu hút nhiều sự quan tâm của các nhà nghiên cứu về mặt trực quan theo nghĩa đen cũa cụm từ cơ sỏ‘ dCr liệu phân tán chửa hai cụm từ: Co‘ sờ dữ liệu và phân tán Tuy nhiên, việc phân tán ở đây chúng ta hiểu là phân tán thông tin và các thông tin đó được lưu trữ trên mạng máy tính Do vậy: C ơ sở dũ' liệu phân tán "... cua nguoi sur dyng vdri mo hinh dff li^u 13 1. 1.4 M ụ c tỉêu ciía các hệ co sò dữ liệu Người sử dụng khi thao lác trên các cơ sỏ- dù’ liệu khòim đirọ'c làm thav đối cấu trúc lưu trữ dữ liệu và chiến lưọc tĩ'uy nhập tói các hộ co sỏ dữ liệu Dữ liệu chi đưọc biểu diễn, mô ta một cách duy nhất, cấii triic luu trữ dữ liệu và các hệ chưoim trình írniỉ dụ\m trẽn các hệ CSDL hoàn toàn độc lập với nhau, khỏnu... hiròng đẻn CÍUI trúc lưu trữ và chiên lưọc truy nhập của dũ' liệu Tính độc lập CLÌa dữ liệu bảo đảm cho việc biêu diẽn nội dung thòng tin cho các thực thê là duy nhát và bao đam tính toàn vẹn và nhất quán dữ liệu troim lưu trữ Trong các mô hình dữ liệu như mỏ hinli dữ liệu quan hệ, mô hinh dữ liệu phân câp và mô hình dữ liệu mạng thì mỏ hình dừ liệu quan hệ đưọc sử dụntỉ phổ biến và được nhiều người quan... các dữ liệu và hệ thống không thuần nhất, thế hệ thứ ba của hệ quản trị CSDL ra đòi vào những năm 80 trong đó có CSDL phân tán để đáp ứng nhũng nhu cầu mói 2 .1 H Ệ C ơ S Ở D ữ L IỆ U P H Â N T Á N 2 .1 1 Đ ịn h n g h ĩa C S D L p h ân tán C ơ sở dũ’ liệu phân tán nói riêng và các hệ phân tán nói chung là một lĩnh vực được nghiên cứu từ lâu nhưng gần đây do sự phát triẻn nhanh chỏng của còng nghệ truyền ... 51 51 51 51 54 60 62 62 71 71 72 72 75 80 81 84 91 1 01 104 10 4 10 9 11 5 11 6 11 9 12 1 12 3 12 9 12 9 12 9 12 9 13 1 13 1 13 1 13 2 13 3 13 3 13 3 13 4 13 4 13 7 13 8 14 2 14 2 CH NG IV C S D LIU HNG ể I TNG 4 .1. .. H I UA CC NM TI LIU TH AM K H A O 14 5 14 5 14 5 14 6 14 6 14 7 14 8 14 8 14 8 14 8 15 1 15 1 15 1 15 8 15 8 17 1 17 2 17 6 17 8 18 9 205 CHNG I GII THIU CHUNG V c s D LIU 1. 1 KHI NIVI CO BN Vẩ CC H c s D è... MC# SL NG TOI MOI 10 21/ 10 /19 96 TOI M02 20 15 /7 /19 82 TOI M03 15 20 /1/ 19 81 T02 MOI 29 31/ 12 /19 99 T02 M02 18 15 /9 /19 98 T03 M0 4- 10 3/9 /19 99 T04 M02 1/ 5 /19 80 T04 M03 27/9/2000 31 b) Thụng tin v cỏc

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

Từ khóa liên quan

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

Tài liệu liên quan