Tải bản đầy đủ (.ppt) (64 trang)

bài giảng hệ cơ sở dữ liệu phân tán xử lý sự cố

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (483.16 KB, 64 trang )

CHƯƠNG V: PHỤC HỒI SỰ CỐ


CHƯƠNG V. XỬ LÝ SỰ CỐ
5.1 Các khái niệm và đo lường độ tin cậy
5.2 Các giao thức tin cậy cục bộ
5.3 Các giao thức tin cậy phân tán


5.1 Các khái niệm và đo lường độ
tin cậy
• Làm sao duy trì được tính nguyên tử và tính bền vững của
giao dịch


a. Những vấn đề chung
• CÁC ĐỊNH NGHĨA CƠ BẢN
• CÁC NGUYÊN NHÂN LỖI
• CÁC KIỂU SỰ CỐ
• MÔ HÌNH SỰ CỐ


CÁC ĐỊNH NGHĨA CƠ BẢN
Độ tin cậy
– Mô tả sự thành công của 1 hệ thống tuân thủ đặc tả
chính thức nào đó các hành vi của nó
– Xác suất mà hệ thống không sự cố trong một thời gian
cho trước
– Thường dùng để mô tả hệ thống không bị sửa chữa
hay thao tác làm việc găng ở đâu
Tính sẵn sàng


– Phần thời gian mà hệ thống gặp đặc tả của nó
– Xác suất hệ thống làm việc trong thời gian t đã cho


CÁC ĐỊNH NGHĨA CƠ BẢN
• Failure (thất bại): Sự chuyển hướng một hệ thống khỏi mô
tả đã đặc tả của nó
• Erronous State(trạng thái lỗi): Trạng thái của hệ thống
trong đó tồn tại các hoàn cảnh việc xử lý hơn nữa theo thuật
toán thông thường dẫn đến sự cố không định trước.
• Errors(lỗi): Một phần trạng thái làm việc không đúng
• Faults(sai sót): Lỗi trạng thái nội tại của các thành phần hệ
thống hay thiết kê hệ thống.


Từ sai sót đến thất bại
Sai sót

Lỗi

- Sai sót gây ra Lỗi
- Lỗi dẫn đến Thất bại

Thất bại


CÁC NGUYÊN NHÂN LỖI
Mất hiệu lực
 Mất hiệu lực logic
 Mất hiệu lực vật lý

Các lỗi bởi người dùng
 Mất bảng, bảng bị cắt xén bất thường
 Xóa, cập nhật các hàng trong bảng một cách bất thường
 Xóa một file dữ liệu hay mất một bảng bất thường
Thảm họa
 Chiến tranh, khủng bố
 Động đất, lũ lụt, cháy hoặc bão
 Không có nguồn trong một thời gian dài
 Sự cố server, phần cứng làm việc kém


CÁC KIỂU SỰ CỐ
Sự cố giao dịch.
Giao dịch không thể hoàn tất do điều kiện lỗi bên trong
nào đó. Thoát các giao dịch (đơn phương hay do khóa
chết )
Các sự cố hệ thống(site)
• Sự cố bộ xử lý, bộ nhớ chính, nguồn cấp
• Sự cố thiết bị vùng nhớ thứ cấp mất
• Hỏng đầu /sự cố bộ điều khiển đĩa
Sự cố truyền thông
• Mất/không trao đổi được các thông điệp.
• Mạng bị phân chia


MÔ HÌNH SỰ CỐ

Cách tiếp cận:
• Bổ sung các kiểm tra mức thấp+ dư thừa để tăng mô
hình xác suất giữ tin cậy.VD: Nhân bản bộ nhớ đĩa

(bộ nhớ ổn định)+ parity bộ nhớ + kiểm tra CPU
• Cần tính nguyên tử: Hoặc vân hành mọi hoạt động
giao dịch hoặc không gì cả
• Một giải pháp: nhật ký undo (biến đổi trung gian)


Vấn đề cơ bản:giao dịch không kết thúc
VD Ràng buộc: A=B
T1: A <- A x 2
B <- B x 2
T1: Read(A,t); t<- t x 2
Write (A,t);
Read(B,t); t<- t x 2
Write (B,t);
Output(A);
 ==== Sự cố
Output(B);


Sử dụng nhật ký
A=B
T1: Read(A,t); t<- t x 2
Write (A,t);
Read(B,t); t<- t x 2
Write (B,t);
Output(A);
Output(B);


Sử dụng nhật ký

DB

DB

Log

Memory

Memory

Trạng thái 1

• Nhật ký được ghi đầu tiên vào bộ nhớ
• Không được ghi vào đĩa trên mỗi hoạt động
• Nhật ký luôn bám sát giá trị thay đổi đúng

:
:
<T1,B,8>
>

Trạng thái 2

Log


b. Đo lường

MTBF: Thời gian trung bình giữa các sự cố

MTTD: Thời gian trung bình để phát hiện
MTTR: Thời gian trung bình để sửa


Đo lường dung sai lỗi
• MTBF: Thời gian trung bình giữa các sự cố

•MTTR: Thời gian trung bình để sửa
•MTTR: Tính sẵn sàng:


ĐO LƯỜNG TÍNH SẴN SÀNG
Có 3 độ đo cho độ sẵn sàng cao:
• THỜI GIAN ĐỂ PHỤC HỒI.(MTTR): Đo lường Thời gian trung bình
để khôi phục/nạp 1 hệ thống sau mỗi sự cố.
• THỜI GIAN GIỮA CÁC Sự Cố (MTBF)
• THỜI GIAN LÀM VIỆC TRONG MỘT NĂM (%) : Đo lường phần trăm
thời gian làm việc trên thời gian có sẵn trong năm.
Bảng cho thấy thời gian không làm việc của hệ thống từ 5 phút đến 2 ngày .
T_up càng lớn càng tốt.
t_up/t_year=t_up/(t_up+t_down).
5

60

1440

2880

Minutes of Uptime


525595

525540

524160

522720

Minutes in a Year

525600

525600

525600

525600

99.9990%

99.9886%

99.7260%

99.4521%

Minutes of Downtime

Total Uptime in a Year

(%)


CHƯƠNG V. XỬ LÝ SỰ CỐ
5.1 Các khái niệm và đo lường độ tin cậy
5.2 Các giao thức tin cậy cục bộ
5.3 Các giao thức tin cậy phân tán


Kiến trúc quản trị phục hồi cục bộ
• Vùng nhớ Volatile: Không còn sau khi sập hệ thống( VD: bộ nhớ
chính, bộ nhớ cache )
• Vùng nhớ Nonvolatile: Còn sau khi sập hệ thống. (VD: disk, tape,
flash memory, non-volatile (dùng pin) RAM
• Vùng nhớ ổn định:( giống việc duy trì nhiều bản sao trên phương
tiện nonvolatile khác nhau).
– Thích hợp với các sự cố và mất mát bên trong, đáp ứng chỉ khi
sự cố phương tiện
– Thực hiện qua tổ hợp phần cứng (vùng nhớ non-volatile) và
phần mềm(ghi ổn định, đọc ổn định)


TRUY NHẬP DỮ LIỆU
Việc chuyển các khối giữa đĩa và bộ nhớ chính
input(A) chuyển khối A trên đĩa vào bộ nhớ chính.
output(B) Chuyển khối bộ đệm B vào đĩa và thay thế tương ứng .
Mỗi giao dịch Ti có vùng làm việc riêng, giữ các bản sao của mọi hạng mục dữ
liệu được truy nhập bởi Ti. Bản sao cục bộ của Ti hạng mục dữ liệu X là xi.
Giao dịch chuyển các hạng mục dữ liệu giữa các khối bộ đệm hệ thống và vùng
làm việc riêng :

read(X) gán giá trị của hạng mục X cho biến cục bộ xi.
write(X) gán giá trị của biến cục bộ xi cho hạng mục dữ liệu {X} trong khôi bộ
đệm.
Các giao dịch :
Thực hiện read(X) trong khi truy nhập X cho lần đầu tiên
Mọi truy nhập tiếp theo là đối với bản sao cục bộ.
Sau truy nhập cuối cùng, giao dịch vận hành write(X).
output(BX) không cần theo ngay sau write(X). Có thể thực hiện thao tác output
khi thấy phù hợp.


MINH HỌA TRUY NHẬP DỮ LIỆU


Các chiến lược cập nhật
• Cập nhật trong vị trí: Mỗi cập nhật tạo ra sự thay đổi một
hay nhiều giá trị dữ liệu trên trang trong bộ đệm csdl
• Cập nhật ngoài vị trí: Mỗi cập nhật tạo ra các giá trị mới các
hạng mục dữ liệu được lưu tách rời khỏi giá trị cũ


a. Thông tin phục hồi cập nhật trong vị trí:
Nhật ký csdl: Mọi hoạt động của giao dịch không chỉ thực hiện
mà còn được ghi vào một bản ghi nhật ký đối với một file nối
liên tiếp


Nhật ký
• Nhật ký chứa các thông tin được dùng bởi quá trình nạp lại
tính nhất quán của hệ thống. Thông tin bao gồm:

– Định danh giao dịch
– Kiểu thao tác(hoạt động)
– Các hạng mục được truy nhập bởi giao dịch
– Giá trị(trang thái) cũ của hạng mục (ảnh trước)
– Giá trị(trang thái) mới của hạng mục (ảnh sau)


Ghi nhật ký
• Khi phục hồi
– Mọi ảnh hưởng của Ti nên được phản ảnh trong csdl
(REDO nếu cần )
– Không một ảnh hưởng nào của Ti được phản ảnh trong csdl
(UNDO nếu cần)


Giao thức REDO
• REDO : làm lại hoạt động đã thực hiện
• Căn cứ vào thông tin nhật ký thực hiện lai hoạt động trước
đó hoặc không làm gì do sự cố
• Thao tác REDO phát sinh ảnh mới


×