Danh mục

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 - Nguyễn Thị Uyên Nhi

Số trang: 69      Loại file: pdf      Dung lượng: 1.15 MB      Lượt xem: 10      Lượt tải: 0    
Hoai.2512

Xem trước 7 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 Các kỹ thuật phục hồi cơ sở dữ liệu cung cấp cho người học những kiến thức như: Các loại sự cố  Lịch trình khả phục hồi; Tổng quan về phục hồi; Kĩ thuật Write-Ahead Logging; Kĩ thuật phục hồi dựa trên Deferred Update; Kĩ thuật phục hồi dựa trên Immediate Update; Kĩ thuật phục hồi dựa trên Shadow Paging.
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 - Nguyễn Thị Uyên Nhi CÁC HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU CHƯƠNG 4 CÁC KỸ THUẬT PHỤC HỒI CSDL Giảng viên: Đỗ Ngọc Như Loan Biên soạn: Nguyễn Thị Uyên Nhi KHOA CÔNG NGHỆ THÔNG TIN NỘI DUNG  Các loại sự cố  Lịch trình khả phục hồi. SGU - CNTT - Hệ quản trị cơ sở dữ liệu  Tổng quan về phục hồi.  Kĩ thuật Write-Ahead Logging.  Kĩ thuật phục hồi dựa trên Deferred Update.  Kĩ thuật phục hồi dựa trên Immediate Update.  Kĩ thuật phục hồi dựa trên Shadow Paging. 2 SỰ CỐ Nghiêm trọng Ít nghiêm trọng SGU - CNTT - Hệ quản trị cơ sở dữ liệu (Catastrophic Failure) (Noncatastrophic Failure) SỰ CỐ 3 Theo góc nhìn của hệ thống, không phải góc nhìn của ứng dụng SỰ CỐ ÍT NGHIÊM TRỌNG Noncatastrophic failure  Thể hiện: CSDL vẫn hoạt động nhưng ngữ nghĩa bị sai SGU - CNTT - Hệ quản trị cơ sở dữ liệu lệch tạm thời  Phạm vi: Mức độ ảnh hưởng cục bộ  Chi phí: Có thể phục hồi nhanh chóng, dễ dàng  Các sự cố hệ thống (phần cứng, phần mềm, mạng), các sự cố liên quan đến việc thực thi transaction 4 SỰ CỐ NGHIÊM TRỌNG Catastrophic failure  Thể hiện: CSDL không hoạt động trong thời gian dài SGU - CNTT - Hệ quản trị cơ sở dữ liệu  Phạm vi: Mức độ ảnh hưởng rộng lớn  Chi phí: Đòi hỏi nhiều chi phí cho việc phục hồi  Các sự cố liên quan đến ổ đĩa và các sự cố vật lý khác. 5 TÍNH KHẢ PHỤC HỒI CỦA LỊCH TRÌNH  Trong việc tìm hiểu về điều khiển song hành, ta chưa xét nhiều đến sự thất bại của giao dịch. SGU - CNTT - Hệ quản trị cơ sở dữ liệu  Nếu giao dịch Ti thất bại vì lý do nào đó (thường là các sự cố - failures), ta cần hủy bỏ giao dịch này để đảm bảo tính nguyên tử của giao dịch.  Và để đảm bảo tính nhất quán, ta cần phải hủy bỏ tất cả các hiệu quả liên quan của giao dịch T. 6 TÍNH KHẢ PHỤC HỒI CỦA LỊCH TRÌNH  Một số lịch trình dễ dàng phục hồi trong khi 1 số khác không thể phục hồi. SGU - CNTT - Hệ quản trị cơ sở dữ liệu  Lịch trình mà có các giao dịch sau khi đã được bàn giao (Commit) không bao giờ phải rollback lại gọi là lịch trình khả phục hồi (recoverable).  Với mỗi cặp giao dịch Ti và Tj trong lịch trình khả phục hồi: nếu Ti đọc hạng mục dữ liệu được ghi bởi Tj thì lệnh commit của Tj phải diễn ra trước lệnh commit của Ti. 7 VÍ DỤ Lịch trình S1 T1 T2  Giả sử trường hợp T1 gặp sự cố và Read(X) phải rollback. Write(X) SGU - CNTT - Hệ quản trị cơ sở dữ liệu Read(X)  T2? Read(Y) Write(X)   Lịch trình không thể phục hồi Commit và không được phép thực hiện. Abort 8 VÍ DỤ Lịch trình S2 Lịch trình S3 T1 T2 T1 T2 Read(X) Read(X) Read(X) Write(X) SGU - CNTT - Hệ quản trị cơ sở dữ liệu Write(X) Read(X) Read(Y) Read(Y) Write(X) Write(X) Commit Write(Y) Write(Y) Commit Commit Commit Khả phục hồi? 9 LỊCH TRÌNH CASCADELESS Lịch trình S4  Ngay cả khi lịch trình là khả T1 T2 T3 phục hồi, việc phục hồi đúng SGU - CNTT - Hệ quản trị cơ sở dữ liệu Read(A) sau thất bại của một giao Read(B) Write(A) dịch cũng xảy ra vấn đề. Read(A)  Việc rollback của S4 diễn ra Write(A) như thế nào? Read(A) Abort 10 LỊCH TRÌNH CASCADELESS  Hiện tượng 1 giao dịch thất bại kéo theo một loạt các giao dịch khác phải rollback gọi là sự cuộn lại hàng loạt SGU - CNTT - Hệ quản trị cơ sở dữ liệu (cascading rollback).  Việc này dẫn đến việc hủy bỏ một khối lượng công việc đáng kể.  Các lịch trình không xảy ra cascading rollback được gọi là lịch trình cascadeless. 11 LỊCH TRÌNH CASCADELESS  Một lịch trình cascadeless là một lịch trình trong đó mỗi cặp giao dịch Ti và Tj: Nếu Ti đọc một hạng mục dữ liệu được ghi trước đó bởi Tj thì lệnh commit của Tj phải diễn ra trước lệnh ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: