1. Trang chủ
  2. » Giáo án - Bài giảng

Thuyết trình môn lý thuyết các hệ phân tán giao dịch và kiểm soát đồng thời

28 404 0

Đ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 28
Dung lượng 659,57 KB

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

Nội dung

Giao Dịch- Mục đích của giao dịch là đảm bảo các đối tượng luôn ở trạng thái nhất quán khi chúng được truy cập bởi nhiều giao dịch hoặc trong trường hợp có lỗi xảy ra.. • Bất kỳ giao d

Trang 1

Giao dịch và Kiểm soát đồng thời

KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN

Nhóm 10:

Lê Thị Huế Nguyễn Tiến Thụy

Lớp: Hệ thống thông tin

Khóa: K27B

Trang 3

1 Giao Dịch

- Mục đích của giao dịch là đảm bảo các đối tượng luôn ở

trạng thái nhất quán khi chúng được truy cập bởi nhiều giao

dịch hoặc trong trường hợp có lỗi xảy ra.

- Khái niệm về hoạt động nguyên tử

- Trong một số trường hợp, các client đòi hỏi một chuỗi các yêu cầu riêng biệt, yêu cầu đặt ra là:

• Không bị can thiệp bởi các hành động đồng thời từ các client khác.

• Hoặc tất cả các hoạt động phải thực hiện thành công, hoặc không có một hành động nào thành công nếu máy chủ bị lỗi

Trang 5

ACID – Các tính chất của giao dịch:

Trang 6

6

Lịch sử của 1 giao dịch

1 Giao Dịch (4)

Trang 7

Đặc điểm của giao dịch

• Nếu một máy chủ bị lỗi bất thường thì hành động cuối cùng cần được thay thế

• Bất kỳ giao dịch nào chưa được xác thực sẽ bị hủy bỏ

• Giao dịch nào được xác thực trong thời điểm gần nhất sẽ được

sử dụng để khôi phục

• Để đối phó với một client bị lỗi trong quá trình giao dịch, máy chủ sẽ cung cấp cho mỗi giao dịch, một khoảng thời gian nhất định và loại bỏ giao dịch nếu không hoàn thành trước thời gian đó.

• …

1 Giao Dịch (5)

Trang 8

top-• Một giao dịch con có thể bị hủy bỏ một cách độc lập với giao dịch con khác

Trang 9

2 Giao dịch lồng nhau (2)

Ưu điểm của giao dịch lồng nhau:

• Các giao dịch con tại 1 mức có thể chạy đồng thời với các giao dịch con khác tại cùng mức trong cây phân cấp

• Các giao dịch con có thể xác thực hoặc hủy bỏ độc lập nhau

Các quy tắc trong xác thực giao dịch lồng nhau:

• Một giao dịch có thể xác thực hoặc hủy bỏ chỉ sau khi giao dịch con của nó đã hoàn thành

• Khi một giao dịch con hoàn thành, thì nó hoặc xác thực tạm thời hoặc Hủy bỏ tạm thời

• … T, T1, T11, T12, T2, T21, T22

Trang 10

05/10/202 4

10

Vấn đề mất dữ liệu cập nhật

3 Kiểm soát truy cập đồng thời

Ví dụ:

Tài khoản A, B, C có số dư tương ứng là $100, $200, $300

- Khi 2 giao dịch thực hiện lần lượt:

Giao dịch T (A => B) Giao dịch U (C => B) Xem số dư ở tài khoản B $200

Tăng số dư của B thêm 10% lấy từ A $200*10%= $220 Trừ Tài khoản A số tiền

đã chuyển vào B $80 Xem số dư ở tài khoản B $220

Tăng số dư của B thêm 10%

lấy từ C $220*10%= $242 Trừ Tài khoản C số tiền đã

chuyển vào B $278

Trang 11

3 Kiểm soát truy cập đồng thời (2)

- Khi 2 giao dịch thực hiện đồng thời

Trang 12

05/10/202 4

12

3 Kiểm soát truy cập đồng thời (3)

Truy vấn không phù hợp

Trang 13

3 Kiểm soát truy cập đồng thời (4)

Serial equivalence

Trang 14

• Một cơ chế đơn giản là việc sử dụng Khóa

• Máy chủ sẽ khóa bất kỳ đối tượng được sử dụng trong hoạt động giao dịch của client

• Nếu một client khác yêu cầu quyền truy cập vào một đối tượng đã bị khóa thì yêu cầu sẽ bị treo và nó phải chờ đến khi đối tượng được mở khóa

Trang 15

4 Khóa (2)

Ví dụ về Xung đột hoạt động

Trang 16

giao dịch khác, giao dịch sẽ phải chờ đợi cho đến khi nó được mở khóa

2) Khi một giao dịch thành công hoặc hủy bỏ, tất cả

các khóa của đối tượng sẽ được mở.

4 Khóa (3)

05/10/2024

Trang 17

Quy tắc sử dụng khóa cho các giao dịch lồng nhau:

Sử dụng khóa để các giao dịch con được truy cập một cách tuần tự:

- Mỗi tập hợp các giao dịch lồng nhau phải ngăn

chặn tác động của tập hợp các giao dịch lồng nhau khác.

- Mỗi giao dịch trong một tập hợp các giao dịch

lồng nhau phải ngăn chặn tác động của các giao dịch khác trong tập hợp này.

4 Khóa (4)

Trang 18

Deadlocks:

4 Khóa (5)

05/10/2024

Trang 19

Phòng chống Deadlocks:

4 Khóa (6)

1.Phát hiện Deadlocks:

Trang 20

Phòng chống Deadlocks:

4 Khóa (7)

05/10/202 4

2.Timeouts:

Trang 21

- Việc duy trì khóa phát sinh chi phí ngay cả khi giao dịch

chỉ đọc không hề ảnh hưởng đến sự thay đổi của dữ liệu

- Việc sử dụng khóa có thể dẫn đến DeadLock Phòng

chống DeadLock làm giảm khả năng hoạt động đồng thời, và do đó tình huống DeadLock phải được giải quyết bằng cách sử dụng timeout hoặc bằng cách phát hiện DeadLock

- Khóa không thể được phát hành cho đến khi kết thúc

giao dịch Điều này có thể làm giảm khả năng hoạt động đồng thời

5 Kiểm soát đồng thời tin cậy

Trang 22

- Mỗi giao dịch được gán một nhãn thời gian duy nhất khi

nó bắt đầu

- Các nhãn này xác định vị trí của nó trong trình tự thời

gian của các giao dịch

- Thứ tự các yêu cầu từ giao dịch có thể hoàn toàn theo

nhãn thời gian của chúng

6 Nhãn thời gian

05/10/2024

Trang 23

- Quy tắc cấp nhãn thời gian cơ bản được dựa trên các

hoạt động xung đột:

• Yêu cầu của một giao dịch để đọc một đối tượng chỉ hợp lệ nếu đối tượng đó đã được ghi bởi một giao dịch trước đó

• Yêu cầu của một giao dịch, để Ghi một đối tượng chỉ hợp lệ nếu lần đọc đối tượng đó là lần đọc cuối cùng

và đã được ghi bởi các giao dịch trước đó

6 Nhãn thời gian (2)

Trang 24

- Nếu mỗi giao dịch có phiên bản dự kiến riêng của từng

đối tượng mà nó truy cập, khi đó nhiều giao dịch đồng thời có thể truy cập cùng một đối tượng

dịch truy cập một tập các phiên bản của các đối tượng

Nó cũng phải đảm bảo rằng các phiên bản dự kiến của từng đối tượng được xác thực theo thứ tự được xác định bởi nhãn thời gian của các giao dịch thực hiện chúng

6 Nhãn thời gian (3)

05/10/2024

Trang 25

- Các giao dịch đang chờ đợi, sẽ chờ các giao dịch trước

đó hoàn tất việc ghi của chúng nếu cần thiết Các hoạt động ghi có thể được thực hiện sau khi các hoạt động đóng lại Hoạt động đọc cần phải chờ đợi cho các giao dịch trước đó kết thúc Điều này sẽ không dẫn đến Deadlock, vì giao dịch chỉ chờ đợi những giao dịch trước đó (không thể có chu trình trong đồ thị wait-for)

- Mỗi đối tượng có một nhãn thời gian ghi và thiết lập

một phiên bản thử nghiệm, trong đó có một nhãn thời gian ghi liên kết với nó; mỗi đối tượng cũng có một tập hợp các nhãn thời gian đọc

6 Nhãn thời gian (4)

Trang 26

6 Nhãn thời gian (5)

05/10/2024

Quy tắc GHI

Trang 27

6 Nhãn thời gian (6)

Quy tắc ĐỌC

Trang 28

Thanks you!

Ngày đăng: 03/10/2017, 13:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w