1. Trang chủ
  2. » Công Nghệ Thông Tin

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

64 396 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 544 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Viết bản ghi nhật ký vào vùng nhớ ổn địnhGiả thiết giao dịch T cập nhật trang P • Trường hợp tốt • Hệ thống viết P vào vùng nhớ ổn định • Hệ thống cập nhật vào nhật ký ổn định • SỰ CỐ xu

Trang 1

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

Trang 2

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

Trang 3

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

Trang 5

– 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

Trang 6

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.

Trang 7

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

Sai sót Lỗi Thất bại

- Sai sót gây ra Lỗi

- Lỗi dẫn đến Thất bại

Trang 8

CÁC NGUYÊN NHÂN LỖIMấ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

Trang 9

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 )

Trang 10

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)

Trang 11

Vấn đề cơ bản:giao dịch không kết thúc

Trang 13

Trạng thái 1 Trạng thái 2

• 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

Sử dụng nhật ký

: :

DB

Log Memory

Trang 14

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

Trang 15

Đ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:

Trang 16

Đ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)

Trang 17

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

Trang 18

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)

Trang 19

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 T i Bản sao cục bộ của T i hạng mục dữ liệu X là x i 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.

Trang 20

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

Trang 22

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

Trang 23

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)

Trang 25

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

Trang 26

Giao thức UNDO

• UNDO: Nạp lại đối tượng theo ảnh trước đó của nó

• Căn cứ vào thông tin nhật ký nạp lại giá trị cũ của đối tượng

Trang 27

Viết bản ghi nhật ký vào vùng nhớ ổn định

Giả thiết giao dịch T cập nhật trang P

• Trường hợp tốt

• Hệ thống viết P vào vùng nhớ ổn định

• Hệ thống cập nhật vào nhật ký ổn định

• SỰ CỐ xuất hiện(trước khi T chuyển giao )

Phục hồi dùng nhật ký UNDO nạp lại P giá trị cũ

• Trường hợp không tốt

• Hệ thống viết P vào vùng nhớ ổn định

• SỰ CỐ xuất hiện(trước khi nhật ký ổn định được cập nhật)

Không thể phục hồi được vì không có cơ sở của giá trị cũ

• Giải pháp : Giao thức nhật ký viết trước ghi (WAL)

Trang 28

Giao thức nhật ký viết trước ghi(WAL)

• Lưu ý:

– Nếu hệ thống lỗi trước khi giao dịch chuyển giao thì mọi thao tác phải UNDO.chỉ cần các ảnh trươc(phần undo của nhật ký)

– Ngay sau khi giao dịch đã chuyển giao, một vài hoạt động phải được làm lại(REDO) Cần các ảnh sau(phần redo của nhật ký)

Trang 29

Giao tiếp ghi nhật ký

Trang 30

b.Thông tin phục hồi cập nhật ngoài vị trí

• Shadow

– Khi cập nhật xuất hiện, không thay đổi trang cũ mà tạo

trang shadow với các giá trị mới và viết nó vào csdl ổn định

– Cập nhật đường truy nhập sao cho các truy nhập kế tiếp

đến trang shadow mới

– Trang cũ được duy trì để phục hồi.

Trang 32

Điểm kiểm tra

• Đơn giản nhiệm vụ xác định các hoạt động của giao dịch cần undo hay redo khi sự cố xuất hiện

• Điểm kiểm tra chứa một danh sách các giao dịch tích cực

• Các bước:

– Viết bản ghi begin_checkpoint vào nhật ký

– Thu thập dữ liệu điểm kiểm tra vào vùng nhớ ổn định – Viết bản ghi end_checkpoint vào nhật ký

Trang 33

Sự cố phương tiện-Kiến trúc đầy

đủ

Trang 35

Các giao thức tin cậy phân tán

• Các giao thức chuyển giao

– Làm thế nào để vận hành lệnh chuyển giao các giao dịch phân tán – Đảm bảo tính nguyên tử và tính bền vững

• Các giao thức kết thúc

– Nếu sự cố xuất hiện, làm thế nào để các site liên quan làm việc bình

thường

– Không phong tỏa: Sự xuất hiện sự cố không nên buộc các site phải

chờ cho tới khi sự cố được khắc phục để kết thúc giao dịch.

• Các giao thức phục hồi:

– Khi sự cố xuất hiện, các site sự cố xuất hiện sẽ giải quyết thế nào? – Tính độc lập: Site sự cố có thể xác đinh kết quả logic của giao dịch

không cần đến thông tin từ xa

• Phục hồi độc lập: Kết thúc không phong tỏa

Trang 36

Chuyển giao 2 pha (2 PC)

• Pha 1: Bộ phối hợp thu nhận sự sẵn sàng của các

thành viên cho việc viết kết quả vào csdl

• Pha 2: Mọi thành viên viết kết quả vào csdl

– Bộ phối hợp: Tiến trình ở site nơi giao dịch khởi tạo và

điều khiển vận hành.

– Thành viên: Tiến trình ở các site khác tham gia vào vận

hành giao dịch.

• Luật chuyển giao tổng thể:

– Bộ phối hợp thoát một giao dịch khi và chỉ khi ít nhất 1

thành viên đề xuất thoát giao dịch đó.

– Bộ phối hợp chuyển giao giao dịch khi và chỉ khi nếu mọi

thành viên đề xuất chuyển giao giao dịch đó.

Trang 37

Chuyển giao 2 pha tập trung

Trang 38

Các hoạt động giao thức chuyển giao 2 pha tập trung

Trang 39

Chuyển giao 2 pha tuyến tính

Trang 40

Chuyển giao 2 pha phân tán

Trang 41

Chuyển tiếp trạng thái trong 2 PC

Trang 42

Các sự cố site- Kết thúc 2 PC

• Vượt ngưỡng thời gian khi

KHỞI TẠO(INITIAL)

• Nút nào sẽ quan tâm

• Vượt ngưỡng thời gian khi

CHỜ(WAIT)

• Không thể chuyển giao đơn

phương

• Có thể thoát đơn phương

• Vượt ngưỡng thời gian trong

ABORT hay COMMIT

• Vẫn bị khóa và chờ xác nhận

Trang 43

Các sự cố site- Kết thúc 2 PC

• Vượt ngưỡng thời gian khi

KHỞI TẠO (INITIAL)

• Bộ phối hợp có thể có lỗi

trong trạng thái khởi tạo

• Thoát đơn phương

• Vượt ngưỡng thời gian khi SẴN

SÀNG (READY)

• Vẫn bị khóa

Trang 44

Các giao thức phục hồi 2 PC (Các

trường hợp bổ sung)

Phát sinh do tính không nguyên tử của nhật ký và thông điệp được gửi.

• Site của bộ phối hợp gặp sự cố sau khi viết nhật ký

“begin_commit” và trước khi gửi lệnh “prepare”

lệnh “send”

• Site thành viên gặp sự cố sau khi viết bản ghi “ready”

trong nhật ký trước khi “vote-commit” được gửi.

• Site thành viên gặp sự cố sau khi viết bản ghi “abort”

trong nhật ký trước khi “vote-abort” được gửi.

Trang 45

Các giao thức phục hồi 2 PC (Các

trường hợp bổ sung)

• Site bộ phối hợp gặp sự cố sau khi ghi nhật ký bản ghi

quyết định cuối cùng nhưng trước khi gửi quyết định của nó đến các thành viên.

Bộ phối hợp xử lý như khi sự cố trong trạng thái COMMIT hay ABORT

Các thành viên xử lý nó như vượt ngưỡng thời gian trong trạng

thái READY.

• Site thành viên sự cố sau khi viết bản ghi “abort”

hay “commit” trong nhật ký nhưng trước khi xác nhận được gửi

Các thành viên xử lý như khi sự cố trạng thái ABORT

hay COMMIT

Bộ phối hợp sẽ điều khiển thành viên bằng thời gian

ngưỡng trong trạng thái ABORT hay COMMIT

Trang 46

Những vấn đề với 2 PC

• Phong tỏa:

Ready chỉ ra các thành viên chờ bộ phối hợp.

Nếu bộ phối hợp sự cố, site bị khóa cho tới khi phục hồi

Phong tỏa giảm nhỏ tính sẵn sàng

• Không có khả năng phục hồi độc lập

• Ta biết

Các giao thức phục hồi độc lập chỉ tồn tại với sự cố site; giao thức phục hồi không độc lập tồn tại nhằm thích hợp các sự cố nhiều site

• Ta sẽ tìm kiếm giải pháp cho các giao thức này Giao thức 3 PC

Trang 47

Chuyển giao 3 giai đoạn(3PC)

• 3PC là không phong toả

• Một giao thức chuyển giao là không phong tỏa khi và chỉ khi

– Nó được đồng bộ trong một chuyển đổi trạng thái, và

– Biểu đồ trạng thái của nó bao gồm:

• Không có trạng thái kề cả trạng thái “chuyển giao” và

Trang 48

Các chuyển đổi trạng thái trong 3PC

Trang 49

Cấu trúc truyền thông

Trang 50

sự cố của site- Kết thúc 3 PC

• Thời gian ngưỡng trong

INITIAL : ai sẽ quan tâm ?

• Thời gian ngưỡng khi WAIT:

thoát đơn hướng

• Thời gian ngưỡng

PRE-COMMIT:

– Các thành viên có thể không trong

PRE-COMMIT, nhưng ít nhất trong trạng thái READY

– Chuyển toàn bộ các thành viên

đến trạng thái PRE-COMMIT

– Kết thúc bởi chuyển giao tổng thể

Trang 52

Sự cố của site- Kết thúc 3 PC

• Thời gian ngưỡng trong INITIAL

– Bộ phối hợp phải có lỗi trong

trạng thái INITIAL

– Thoát đơn phương

• Vượt thời gian ngưỡng khi READY

– Bầu cử để chuyển giao nhưng

không biết quyết định của bộ phối hợp.

– Chọn ra một bộ phối hợp mới và

kết thúc bằng cách dùng một giao thức đặc biệt.

• Vượt thời gian ngưỡng trong

PRECOMMIT

– Điều khiển như vượt thời gian

ngưỡng trong trạng thái READY

Trang 53

Giao thức kết thúc trong việc lựa chọn bộ phối hợp.

Bộ phối hợp mới có thể ở trong các trạng thái: WAIT, PRECOMMIT, COMMIT, ABORT

• Bộ phối hợp gửi trạng thái của nó đến tất cả các thành viên hỏi chúng

để nắm lấy trạng thái của nó

• Các thành viên “lưu lại” và trả lời với các thông điệp tương ứng , trừ

những gì có trong các trạng thái COMMIT và ABORT Những gì trong các trạng thái này đáp ứng với ACK nhưng vẫn giữ các trạng thái của chúng

• Bộ phối hợp hướng các thành viên đến chỗ kết thúc:

• Nếu bô phối hợp mới trong trạng thái WAIT, các thành viên có thể trong trạng

thái INITIAL, READY, ABORT hay PRECOMMIT Bộ phối hợp mới sẽ thoát tổng thể giao dịch

• Nếu bộ phối hợp mới trong trạng thái PRECOMMIT, các thành viên có thể

trong các trạng thái READY, PRECOMMIT hay COMMIT Bộ phối hợp mới sẽ chuyển giao tổng thể giao dịch.

• Nếu bộ phối hợp mới trong trạng thái ABORT hay COMMIT ở cuối pha đầu,

các thành viên sẽ chuyển đến trạng thái đó

Trang 54

Sự cố của site- Phục hồi 3 PC

phối hợp mới và kết thúc giao dịch.

– Bộ phối hợp mới có thể trong các

trạng thái ABORT hay WAIT giao dịch phải thoát.

– Hỏi xung quanh về số mệnh của giao

Trang 55

sự cố của site- Phục hồi 3 PC(…)

• sự cố trong ABORT hay COMMIT

– Không có gì đặc biệt nếu

mọi ACK đã được nhận; nếu khác đi, giao thức kết thúc được đưa vào

Trang 56

sự cố của site- Phục hồi 3 PC(…)

• sự cố trong ABORT hay COMMIT

– Không cần làm gì

Trang 57

• Không tồn tại giao thức không phong tỏa co giãn đến đa phân chia

Trang 58

Các giao thức phục hồi độc lập

với việc phân chia mạng

• Không có giải pháp chung khả dĩ

• Cho phép một nhóm kết thúc trong khi các nhóm khác bị

khóa

• Cải thiện hiệu năng

• Xác định nhóm được xử lý như thế nào?

• Nhóm chiếm đa số

• Một nhóm biết nó là đa số như thế nào?

• Tập trung

• Phần nào chứa site trung tâm nên kết thúc giao dịch

• Dựa trên bầu cử(biểu quyết)

• Khác biệt với csdl nhân bản và không nhân bản

Trang 59

Các giao thức biểu quyết cho csdl

• Trước khi một giao dịch chuyển giao , nó phải giành

• Trước khi một giao dịch thoát , nó phải giành được

Trang 60

Những chuyển đổi trạng thái trong các giao

thức biểu quyết

Trang 61

Các giao thức biểu quyết cho csdl

• Mỗi thao tác phải giành được 1 biểu quyết đọc(V r ) để đọc

và một biểu quyết ghi(V w ) để ghi hạng mục dữ liệu.

• Sau đó tuân theo các luật sau để xác định được biểu quyết

• Vr+Vw >V Một hạng mục dữ liệu không đọc và ghi bởi 2 giao dịch tương tranh

• Vw > V/2 Hai thao tác ghi từ 2 giao dịch không thể xuất hiện tương tranh trên cùng một hạng mục dữ liệu

Trang 62

Sử dụng cho phân chia mạng

• Một biến thể đơn giản của luật ROWA

• Khi giao thức điều khiển nhân bản muốn đoc hay ghi một

hạng mục dữ liệu, trước hết nó kiểm tra xem liệu đa số các site trên cùng phân mạng với site mà giao thức đang chạy hay không (bằng cách kiểm tra số phiếu) Nếu được, vận hành luật ROWA trong phân mạng đó.

• Dựa trên giả thiết rằng sự cố được “dọn sạch” theo nghĩa :

• sự cố thay đổi topo mạng đã được phát hiện bởi mọi site

một cách đồng thời

• Mỗi site có một khung nhìn của mạng bao gồm mọi site

mà nó có thể truyền thông với nhau

Trang 63

• Thay đổi các yêu cầu

• Chia xẻ cộng tác đối với chia xẻ cạnh tranh

• Các giao dịch tương tác

• Thời gian dài hơn

• Các thao tác phức tạp trên các dữ liệu phức tạp

• Nới lỏng các ngữ nghĩa

• Tiêu chuẩn không tuần tự hóa

Trang 64

KẾT LUẬN

• Quản trị phục hồi sự cố cho phép co giãn hệ thống từ các kiểu sự cố nào đó và đảm bảo tính nguyên tử và bền vững cua các giao dịch

• Bộ quản trị phục hồi cục bộ(LRM) sử dụng các chiến lược ngoài vị trí hay trong vị trí gắn với cập nhật Trong trường hợp dùng chiến lược thay thế trong vị trí, nhật ký bổ sung được sử dụng để phục hồi

• Giao thức tin cậy phân tán phức tạp hơn đặc biệt trong các giao thức chuyển giao, kết thúc, và phục hồi

• Giao thức 2PC đầu tiên thu thập sự sẵn sàng từ các thành viên cho giao dịch(pha 1), sau đó hỏi các thành viên để ghi giao dịch(pha 2) 2PC là một giao thức phong tỏa.

• 3PC thu thập sự sẵn sàng từ các thành viên cho giao dịch (pha 1), tiền chuyển giao(precommit)/thoát giao dịch(pha 2)

và hỏi các thành viên để chuyển giao/thoát giao dịch(pha 3) 3PC là giao thức không phong tỏa

Ngày đăng: 15/01/2016, 22:28

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w