Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Chương 6 Điều khiển tương tranh phân tán thuộc bài giảng Cơ sở dữ liệu phân tán. Nội dung chương này trình bày về: một số vấn đề điều khiển đồng thời, một số tính chất khi thao tác trên đơn vị dữ liệu, lịch tuần tự và lịch khả tuần tự, sắp xếp các giao tác bằng nhãn thời gian, điều khiển tương tranh bằng cơ chế khóa. | NGUYỄN MẬU HÂN, PhD. HUE COLLEGE OF SCIENCES - HUE UNIVERSITY CHƯƠNG 6: ĐIỀU KHIỂN TƯƠNG TRANH CONTENTS 1. Một số vấn đề điều khiển đồng thời 2. Một số tính chất khi thao tác trên đơn vị dữ liệu 3. Lịch tuần tự và lịch khả tuần tự 5. Điều khiển tương tranh bằng cơ chế khóa 4. Sắp xếp các giao tác bằng nhãn thời gian CHƯƠNG 6: ĐiỀU KHIỂN TƯƠNG TRANH MỤC ĐÍCH Chương 4 Giới thiệu Giao tác là một tập hợp các thao tác có thứ tự truy xuất dữ liệu trên CSDL thành một đơn vị công việc logic (xem là một thao tác nguyên tố), chuyển CSDL từ trạng thái nhất quán này sang trạng thái nhất quán khác. Nguyên lý điều khiển tương tranh: Là quá trình điều khiển giúp cho nhiều giao tác diễn ra đồng thời mà không xảy ra tranh chấp. Giới thiệu Điều gì xảy ra khi có sự đụng độ? Mất dữ liệu (Lost update) Khóa chờ (Livelock) Khóa chết (Deadlock) Giới thiệu Để ghi nhận sự hoàn tất hay không của một thao tác người ta sử dụng các lệnh sau: BEGIN TRANSACTION Bắt đầu giao tác COMMIT TRANSACTION Kết thúc một giao tác thành công ROLLBACK TRANSACTION Kết thúc một giao tác không thành công, những thao tác làm ảnh hưởng CSDL trước đó được undo, CSDL được trả về tình trạng trước khi thực hiện giao tác. END TRANSACTION Chỉ mạng ý nghĩa hình thức, thường không sử dụng 1. Một số vấn đề điều khiển đồng thời 1. 1. Mất dữ liệu cập nhật (lost update) Ví dụ: Cho quan hệ HANGHOA (MaHH, Tên HH, ĐVT, SLTon) Giả sử: SLTon =20 Transaction Gía trị T1 (bán hàng) T2 (bán hàng) x1 x2 SLTon Begin Transaction Read(SLTon)→x1 x1 - 10→x1 Write x1→SLTon Commit T1 Begin Transaction Read(SLTon)→x2 x2 - 3→x2 Write x2→SLTon Commit T2 20 20 10 10 10 10 20 20 17 17 17 20 20 20 20 20 10 17 17 Lost Update: Thao tác cập nhật của T1 xem như bị mất, không được ghi nhận (do những thay đổi của các giao tác khác ghi đè lên). 1. Một số vấn đề điều khiển đồng thời Ví dụ: Cho quan hệ HANGHOA ( MaHH,TenHH, ĐVT, SLTon) SLton = 20 Transaction Giá trị T1(nhập hàng) T2 (bán hàng) x1 x2 SLton Begin transaction Read . | NGUYỄN MẬU HÂN, PhD. HUE COLLEGE OF SCIENCES - HUE UNIVERSITY CHƯƠNG 6: ĐIỀU KHIỂN TƯƠNG TRANH CONTENTS 1. Một số vấn đề điều khiển đồng thời 2. Một số tính chất khi thao tác trên đơn vị dữ liệu 3. Lịch tuần tự và lịch khả tuần tự 5. Điều khiển tương tranh bằng cơ chế khóa 4. Sắp xếp các giao tác bằng nhãn thời gian CHƯƠNG 6: ĐiỀU KHIỂN TƯƠNG TRANH MỤC ĐÍCH Chương 4 Giới thiệu Giao tác là một tập hợp các thao tác có thứ tự truy xuất dữ liệu trên CSDL thành một đơn vị công việc logic (xem là một thao tác nguyên tố), chuyển CSDL từ trạng thái nhất quán này sang trạng thái nhất quán khác. Nguyên lý điều khiển tương tranh: Là quá trình điều khiển giúp cho nhiều giao tác diễn ra đồng thời mà không xảy ra tranh chấp. Giới thiệu Điều gì xảy ra khi có sự đụng độ? Mất dữ liệu (Lost update) Khóa chờ (Livelock) Khóa chết (Deadlock) Giới thiệu Để ghi nhận sự hoàn tất hay không của một thao tác người ta sử dụng các lệnh sau: BEGIN TRANSACTION Bắt đầu giao tác COMMIT .