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
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 ...
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ìm kiếm theo từ khóa liên quan:
Hệ quản trị cơ sở dữ liệu Bài giảng Hệ quản trị cơ sở dữ liệu Kỹ thuật phục hồi cơ sở dữ liệu Kĩ thuật Write-Ahead Logging Kĩ thuật phục hồi dựa trên Deferred Update Lịch trình khả phục hồiGợi ý tài liệu liên quan:
-
Giáo án Tin học lớp 12 (Trọn bộ cả năm)
180 trang 266 0 0 -
Thực hiện truy vấn không gian với WebGIS
8 trang 243 0 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 243 0 0 -
69 trang 144 0 0
-
57 trang 89 0 0
-
34 trang 84 0 0
-
Bài giảng Khái niệm về hệ cơ sở dữ liệu: Bài 2 - Hệ quản trị cơ sở dữ liệu
13 trang 78 0 0 -
Giáo trình Hệ quản trị cơ sở dữ liệu - Trần Thiên Thành
130 trang 75 0 0 -
Phát triển Java 2.0: Phân tích dữ liệu lớn bằng MapReduce của Hadoop
12 trang 71 0 0 -
Lý thuyết, bài tập và bài giải hệ thống thông tin kế toán: Phần 1
198 trang 70 0 0