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

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 3 - Nguyễn Trường Sơn

97 18 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 97
Dung lượng 5,35 MB

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

Nội dung

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 3 Điều khiển truy xuất đồng thời cung cấp cho người học những kiến thức như: Phân loại các vấn đề của truy xuất đồng thời; Các kỹ thuật điều khiển đồng thời; Vấn đề khoá chết; Các vấn đề khác.

Trang 1

LOGO

Trang 2

Nội dung trình bày

Trang 3

Nội dung trình bày

Trang 7

Vấn đề đọc dữ liệu rác

§  Xét 2 giao tác T1 và T2 được xử lý đồng thời

–  

Trang 9

Các kỹ thuật điều khiển đồng thời

§ 

Kỹ thuật khoá

Kỹ thuật nhãn thời gian

Kỹ thuật xác nhận hợp lệ

Trang 10

Nội dung trình bày

Trang 11

Kỹ thuật khoá đơn giản

§  Kỹ thuật khoá đơn giản còn gọi khoá nhị phân (Binary locks)

§  Bộ lập lịch với cơ chế khóa đơn giản (locking scheduler)

Trang 12

Kỹ thuật khóa đơn giản

Trang 13

Kỹ thuật khóa đơn giản (tt)

Trang 14

Kỹ thuật khóa đơn giản (tt)

§ 

–  

–  

S

Trang 15

Kỹ thuật khóa đơn giản (tt)

§ 

Cho biết lịch nào hợp lệ? Giao tác nào là đúng đắn ?

Trang 16

Kỹ thuật khóa đơn giản (tt)

§ 

Cho biết lịch nào hợp lệ? Giao tác nào là đúng đắn ?

Trang 17

Kỹ thuật khóa đơn giản (tt)

Trang 18

Kỹ thuật khóa đơn giản (tt)

18

S

Trang 19

Kỹ thuật khóa đơn giản (tt)

Trang 20

Kỹ thuật khóa đơn giản (tt)

Trang 21

Nghi thức khoá 2 giai đoạn

Trang 22

Tại sao lại cần nghi thức khoá 2 giai đoạn ?

§ 

Trang 23

Kỹ thuật khóa đơn giản (tt)

Write(A) Unlock(A)

Giao tác nào thoả nghi thức

2 giai đoạn ?

Lock(B) Read(B) B=B-­‐50 Write(B) Unlock(B) Lock(A) Read(A) A:=A+50 Write(A) Unlock(A)

Lock(A) Read(A) Unlock(A) Lock(B) Read(B) Unlock(B)

Trang 24

Kỹ thuật khóa đơn giản (tt)

Unlock(B)

Lock(A)

Read(A) A:=A+50 Write(A)

Trang 25

Kỹ thuật khóa đơn giản (tt)

25

T2

T1

Read(A,s) s:=s*2

S

T2

T1 S

Write(B,t); Unlock(B) Read(B,t); t:=t+100

t:=t+100; Write(A,t) Lock(A); Read(A,t) Lock(B); Unlock(A)

Lock(B) ; Ulock(A)

Read(B,t); t:=t*2 Write(B,t); Unlock(B)

s:=s*2; Write(A,s) Lock(A); Read(A,s)

Lock(B) Không phát khóa

được, phải chờ đến lúc này

Trang 26

Kỹ thuật khóa đơn giản (tt)

Trang 27

Kỹ thuật khoá đơn giản (tt)

Trang 28

Nội dung trình bày

Trang 29

Kỹ thuật khóa đọc ghi

Trang 30

Kỹ thuật khóa đọc ghi (tt)

Trang 31

Kỹ thuật khóa đọc ghi (tt)

Trang 32

Kỹ thuật khóa đọc ghi (tt)

Trang 33

Kỹ thuật khóa đọc ghi (tt)

Trang 34

Kỹ thuật khóa đọc ghi (tt)

Trang 35

35

Ví dụ

Trang 36

36

Ví dụ

Trang 37

37

Ví dụ

Trang 38

38

Ví dụ

Trang 39

Kỹ thuật khóa đọc ghi (tt)

§ 

39

T T

S

Trang 40

Kỹ thuật khóa đọc ghi (tt)

Trang 41

Kỹ thuật khóa đọc ghi (tt)

§ 

T T

S

Trang 42

Nội dung trình bày

Trang 44

44

Kỹ thuật khóa đa hạt (tt)

§  Phải quản lý khóa ở nhiều mức độ

Trang 45

Bộ (Tuple)

Bộ (Tuple) Bộ (Tuple) Bộ (Tuple) Bộ (Tuple)

Bộ (Tuple)

Bộ (Tuple) Bộ (Tuple)

Trang 46

­   Warning (intention to) shared lock: IS

­   Warning (intention to) exclusive lock: IX

Trang 47

47

Kỹ thuật khóa đa hạt (tt)

§  Ma trận tương thích trên cùng một node

Trang 48

48

Kỹ thuật khóa đa hạt (tt)

§  Ma trận tương thích giữa node cha và node con

Trang 49

à

Trang 55

Kỹ thuật khóa đa hạt (tt)

Trang 56

Nội dung trình bày

Trang 58

Giới thiệu

§ 

–  

Trang 59

59

Nhãn thời gian toàn phần

§  Mỗi giao tác T khi phát sinh sẽ được gán 1 nhãn TS(T) ghi

nhận lại thời điểm phát sinh của T

§  Mỗi đơn vị dữ liệu X cũng có 1 nhãn thời TS(X), nhãn này ghi

lại TS(T) của giao tác T đã thao tác read/write thành công sau cùng lên X

§  Khi đến lượt giao tác T thao tác trên dữ liệu X, so sánh TS(T)

­  Nếu TS(T) ≥ TS(X) thì cho T ghi X và gán TS(X) = TS(T)

­   Ngược lại T bị hủy (abort)

Trang 60

Nhãn thời gian toàn phần

Trang 61

Read(B) A=A*2

Write(A)

B=B+20 Write(B)

Read(B)

Trang 62

Nhãn thời gian toàn phần

Trang 63

Nội dung trình bày

Trang 64

Nhãn thời gian riêng phần

Trang 65

Nhãn thời gian riêng phần

Trang 66

Nhãn thời gian riêng phần

(

l 

Trang 67

Nhãn thời gian riêng phần

l  

Trang 68

Nhãn thời gian riêng phần

§ 

l  

l  

à  

Trang 69

Nhãn thời gian riêng phần

Trang 70

Nhãn thời gian riêng phần

§ 

l  

l  

à

Trang 71

Nhãn thời gian riêng phần

Trang 72

Nhãn thời gian riêng phần

Trang 73

Nhãn thời gian riêng phần (tt)

Trang 74

Write(B) Read(C) TS(T 1 )=100 WT(A)=0 WT(B)=0 RT(C)=0 WT(C)=0

Trang 75

Read(C)

Trang 77

T TS=175

T TS=255

Read(A)

Trang 78

Nội dung trình bày

Trang 79

Nhãn thời gian nhiều phiên bản

Trang 80

Nhãn thời gian nhiều phiên bản (tt)

Trang 81

Nhãn thời gian nhiều phiên bản (tt)

Trang 82

Ví dụ

82

RT=150 WT=0

RT=0 WT=200

T 1

Read(A)

T 2 TS=200

A 0 RT=0

Read(A) Write(A) Write(A)

Read(A)

T 3 TS=175

T 4 TS=255

Read(A)

RT=0 WT=150 RT=200 WT=150

RT=200 WT=150

A 1 A 2

RT=255 WT=200

Trang 83

Write(A) Write(B) Read(B)

Write(A)

A 0 RT=0 WT=0 RT=100 WT=0

A 1

RT=0 WT=200

B 0 RT=0 WT=0

B 1

RT=0 WT=200 RT=100

WT=0

A 1

RT=0 WT=100

A 2

RT=0 WT=200

Trang 84

Nhãn thời gian nhiều phiên bản (tt)

Trang 85

Tài liệu tham khảo

§ 

–  

Trang 86

LOGO

Trang 88

Timestamp vs Locking

§ 

§ 

Trang 90

Strict Timestamp Based Concurrency Control

§ 

–  

§ 

Trang 95

Timestamp-based approach

§ 

–  

Ngày đăng: 08/06/2021, 19:39

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