TÀI LIỆU HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
Số trang: 11
Loại file: pdf
Dung lượng: 376.64 KB
Lượt xem: 14
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Crash: Là các sự cố xảy ra không lường trước được, ví dụ như cúp điện, hư ổ cứng, RAM hoặc các thiết bị khác … Nói chung các sự cố này xảy ra làm cho việc thực hiện các transaction bị gián đoạn hoặc mất đi tình toàn vẹn dữ liệu. Như vậy có thể thấy có 2 trường hợp có thể xảy ra với 1 Transaction khi có sự cố:
Transaction chưa thực hiện commit (begin trans mà không có commit). Ở trường hợp này thì database
Transaction đã thực hiện commit nhưng vẫn chưa lưu dữ liệu...
Nội dung trích xuất từ tài liệu:
TÀI LIỆU HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Bài viết về: PHỤC HỒI SỰ CỐ. Nội dung: 1. Một vài giả định và quy ước: .................................................................................................... 3 1.1. Transaction: ......................................................................................................................... 3 1.2. Checkpoint: .......................................................................................................................... 3 1.3. Logging:................................................................................................................................ 3 2. Một vài khái niệm cơ bản: ........................................................................................................ 4 2.1. Crash: ................................................................................................................................... 4 2.2. Logging:................................................................................................................................ 4 2.3. Recovery: ............................................................................................................................. 4 2.4. Checkpoint và cơ chế Logging: .............................................................................................. 4 3. DBMS áp dụng cơ chế phục hồi như thế nào: ........................................................................... 7 3.1. Các kỹ thuật Recovery (3 kỹ thuật):....................................................................................... 7 3.1.1. Undo Logging (Sử dụng cho cơ chế phục hồi Immediate Update):..................................... 7 3.1.2. Undo Logging và Checkpoint:............................................................................................ 8 3.1.3. Redo Logging (Sử dụng cho cơ chế phục hồi Defer Update): ........................................... 10 3.1.4. Undo/ Redo Logging ....................................................................................................... 10 4. Bài tập:................................................................................................................................... 11 1. Một vài giả định và quy ước: 1.1. Transaction: Bắt đầu transaction: < start T1 > Hoàn tất transaction: < commit T1 > Hủy bỏ 1 giao tác < abort T1 > 1.2. Checkpoint: Tạo 1 checkpoint: 1.3. Logging: 2. Một vài khái niệm cơ bản: 2.1. Crash: Là các sự cố xảy ra không lường trước được, ví dụ như cúp điện, hư ổ cứng, RAM hoặc các thiết bị khác … Nói chung các sự cố này xảy ra làm cho việc thực hiện các transaction bị gián đoạn hoặc mất đi tình toàn vẹn dữ liệu. Như vậy có thể thấy có 2 trường hợp có thể xảy ra với 1 Transaction khi có sự cố: Transaction chưa thực hiện commit (begin trans mà không có commit). Ở trường hợp này thì database Transaction đã thực hiện commit nhưng vẫn chưa lưu dữ liệu từ bộ nhớ đệm xuống datafile (begin trans và commit). 2.2. Logging: Là cơ chế lưu vết lại tất cả các yêu cầu thay đổi từ phía User. Cần phải chú ý rằng đôi lúc việc kết quả truy vấn hay update cơ sở tưởng chừng như đã hoàn tất ở phía người dùng, tuy nhiên, trong 1 số trường hợp DBMS vẫn thực hiện vẫn chưa hoàn thành việc update (nói chính xác hơn là lưu trữ xuống datafile). Việc hiển thị kết quả chỉ là do DBMS thực hiện trên bộ nhớ đệm. 2.3. Recovery: Là phục hồi dữ liệu trên ổ cứng (datafile) về trạng thái đảm bảo tính toàn vẹn dữ liệu gần nhất. Có 2 cơ chế phục hồi: Defer Update: kết quả thay đổi của dữ liệu chỉ được lưu từ bộ nhớ đệm xuống datafile khi transaction thực hiện commit. Như vậy rõ ràng, trước khi giao tác này thực hiện commit, có sự có xảy ra thì cũng không ảnh hưởng đến datafile bên dưới. Immediate Update: kết quả thay đổi được lưu xuống datafile ngay sau khi thực hiện 1 thao tác dữ liệu trong một giao tác mà không cần chờ đến lệnh commit. 2.4. Checkpoint và cơ chế Logging: Theo cơ chế logging và kỹ thuật Recovery Immedia Update ở trên thì sau mỗi lần commit hoặc abort của 1 giao tác thì DBMS lại yêu cầu DataFile Management ghi toàn bộ dữ liệu xuống datafile đồng thời ghi 1 entry vào trong logfile. Chú ý rằng việc lưu trữ này tiêu hao nhiều thời gian đặc biệt đối với hệ thống nhiều User cùng thực hiện cùng lúc. Người ta đề ra checkpoint để giảm thiểu vấn đề trên. Như vậy sau 1 thời gian hạn định thì DBMS thực hiện lưu 1 checkpoint mà tại đó các giao tác vừa commit xong thì sẽ được lưu dữ liệu từ bộ nhớ đệm xuống datafile. Nếu trong khoảng thời gian đó giao tác hiện thời chưa hoàn tất(commit) thì DBMS sẽ đợi 1 khoảng thời gian cho đến khi giao tác này hoàn tất. Trong khoảng thời gian này DBMS không nhận thêm bất kì 1 giao tác nào khác nữa. Sau khi lưu mọi thông tin xuông datafile , Log Manager ghi 1 entry vào trong logfile. Như vậy, có thể thấy ràng mọi công việc đã hoàn tất trước checkpoint. Nếu có 1 sự cố xảy ra sau này chỉ cần quay lại vị trí checkpoint là đảm bảo các tính chất của dữ liêu. Tuy nhiên, cũng phải nhận định rằng, việc chờ đợi 1 giao tác hoàn tất mà không tiếp nhận bất kì 1 giao tác nào khác trong thời gian đó sẽ làm trì hoãn hoạt động của DBMS, đặc biệt là với DBMS nhiều người dùng. Vì thế người ta đưa ra 1 kỹ thuật mới là Nonquiescent Checkpoint. Nonquiescent Checkpoint: Cơ ch ...
Nội dung trích xuất từ tài liệu:
TÀI LIỆU HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Bài viết về: PHỤC HỒI SỰ CỐ. Nội dung: 1. Một vài giả định và quy ước: .................................................................................................... 3 1.1. Transaction: ......................................................................................................................... 3 1.2. Checkpoint: .......................................................................................................................... 3 1.3. Logging:................................................................................................................................ 3 2. Một vài khái niệm cơ bản: ........................................................................................................ 4 2.1. Crash: ................................................................................................................................... 4 2.2. Logging:................................................................................................................................ 4 2.3. Recovery: ............................................................................................................................. 4 2.4. Checkpoint và cơ chế Logging: .............................................................................................. 4 3. DBMS áp dụng cơ chế phục hồi như thế nào: ........................................................................... 7 3.1. Các kỹ thuật Recovery (3 kỹ thuật):....................................................................................... 7 3.1.1. Undo Logging (Sử dụng cho cơ chế phục hồi Immediate Update):..................................... 7 3.1.2. Undo Logging và Checkpoint:............................................................................................ 8 3.1.3. Redo Logging (Sử dụng cho cơ chế phục hồi Defer Update): ........................................... 10 3.1.4. Undo/ Redo Logging ....................................................................................................... 10 4. Bài tập:................................................................................................................................... 11 1. Một vài giả định và quy ước: 1.1. Transaction: Bắt đầu transaction: < start T1 > Hoàn tất transaction: < commit T1 > Hủy bỏ 1 giao tác < abort T1 > 1.2. Checkpoint: Tạo 1 checkpoint: 1.3. Logging: 2. Một vài khái niệm cơ bản: 2.1. Crash: Là các sự cố xảy ra không lường trước được, ví dụ như cúp điện, hư ổ cứng, RAM hoặc các thiết bị khác … Nói chung các sự cố này xảy ra làm cho việc thực hiện các transaction bị gián đoạn hoặc mất đi tình toàn vẹn dữ liệu. Như vậy có thể thấy có 2 trường hợp có thể xảy ra với 1 Transaction khi có sự cố: Transaction chưa thực hiện commit (begin trans mà không có commit). Ở trường hợp này thì database Transaction đã thực hiện commit nhưng vẫn chưa lưu dữ liệu từ bộ nhớ đệm xuống datafile (begin trans và commit). 2.2. Logging: Là cơ chế lưu vết lại tất cả các yêu cầu thay đổi từ phía User. Cần phải chú ý rằng đôi lúc việc kết quả truy vấn hay update cơ sở tưởng chừng như đã hoàn tất ở phía người dùng, tuy nhiên, trong 1 số trường hợp DBMS vẫn thực hiện vẫn chưa hoàn thành việc update (nói chính xác hơn là lưu trữ xuống datafile). Việc hiển thị kết quả chỉ là do DBMS thực hiện trên bộ nhớ đệm. 2.3. Recovery: Là phục hồi dữ liệu trên ổ cứng (datafile) về trạng thái đảm bảo tính toàn vẹn dữ liệu gần nhất. Có 2 cơ chế phục hồi: Defer Update: kết quả thay đổi của dữ liệu chỉ được lưu từ bộ nhớ đệm xuống datafile khi transaction thực hiện commit. Như vậy rõ ràng, trước khi giao tác này thực hiện commit, có sự có xảy ra thì cũng không ảnh hưởng đến datafile bên dưới. Immediate Update: kết quả thay đổi được lưu xuống datafile ngay sau khi thực hiện 1 thao tác dữ liệu trong một giao tác mà không cần chờ đến lệnh commit. 2.4. Checkpoint và cơ chế Logging: Theo cơ chế logging và kỹ thuật Recovery Immedia Update ở trên thì sau mỗi lần commit hoặc abort của 1 giao tác thì DBMS lại yêu cầu DataFile Management ghi toàn bộ dữ liệu xuống datafile đồng thời ghi 1 entry vào trong logfile. Chú ý rằng việc lưu trữ này tiêu hao nhiều thời gian đặc biệt đối với hệ thống nhiều User cùng thực hiện cùng lúc. Người ta đề ra checkpoint để giảm thiểu vấn đề trên. Như vậy sau 1 thời gian hạn định thì DBMS thực hiện lưu 1 checkpoint mà tại đó các giao tác vừa commit xong thì sẽ được lưu dữ liệu từ bộ nhớ đệm xuống datafile. Nếu trong khoảng thời gian đó giao tác hiện thời chưa hoàn tất(commit) thì DBMS sẽ đợi 1 khoảng thời gian cho đến khi giao tác này hoàn tất. Trong khoảng thời gian này DBMS không nhận thêm bất kì 1 giao tác nào khác nữa. Sau khi lưu mọi thông tin xuông datafile , Log Manager ghi 1 entry vào trong logfile. Như vậy, có thể thấy ràng mọi công việc đã hoàn tất trước checkpoint. Nếu có 1 sự cố xảy ra sau này chỉ cần quay lại vị trí checkpoint là đảm bảo các tính chất của dữ liêu. Tuy nhiên, cũng phải nhận định rằng, việc chờ đợi 1 giao tác hoàn tất mà không tiếp nhận bất kì 1 giao tác nào khác trong thời gian đó sẽ làm trì hoãn hoạt động của DBMS, đặc biệt là với DBMS nhiều người dùng. Vì thế người ta đưa ra 1 kỹ thuật mới là Nonquiescent Checkpoint. Nonquiescent Checkpoint: Cơ ch ...
Tìm kiếm theo từ khóa liên quan:
hệ quản trị cơ sở dữ liệu quản trị giao dịch cấu trúc hệ thống tổng thể kiến trúc hệ cơ sở dữ liệu hệ thống client serverGợ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 254 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 238 0 0 -
Thực hiện truy vấn không gian với WebGIS
8 trang 231 0 0 -
69 trang 144 0 0
-
57 trang 88 0 0
-
34 trang 81 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 77 0 0 -
Giáo trình Hệ quản trị cơ sở dữ liệu - Trần Thiên Thành
130 trang 74 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 70 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