1. Trang chủ
  2. » Luận Văn - Báo Cáo

Slide VAI TRÒ của TRẬT tự hóa và vấn đề gắn bó dữ LIỆU

33 356 1
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Vai Trò của Trật Tự Hóa và Vấn Đề Gắn Bó Dữ Liệu
Tác giả Nguyễn Văn Định
Người hướng dẫn PGS.TS Lê Văn Sơ
Trường học Đại Học Đà Nẵng
Chuyên ngành Hệ Phân Tán
Thể loại Báo Cáo Tiểu Luận
Năm xuất bản 2009
Thành phố Đà Nẵng
Định dạng
Số trang 33
Dung lượng 356,5 KB

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

Nội dung

Trật tự hóa các tác động  Các tiến trình độc lập tạo ra các giao dịch M  Việc thực hiện tuần tự có nghĩa là thực hiện tất cả các giao dịch M theo kiểu nối đuôi nhau và tuân thủ một trậ

Trang 1

VAI TRÒ CỦA TRẬT TỰ HÓA

Trang 3

Vai trò của trật tự dữ liệu

 C1: Nếu A và B là hai sự kiện của cùng một trạm và nếu

A được thực hiện trước B thì theo trật tự của trạm ta có: AB

 C2: Nếu A là phát thông điệp bởi một trạm nào đó và nếu

B là thu của thông điệp này thì ta có: AB

Trang 4

Vai trò của trật tự dữ liệu

biểu diễn trật tự như sau:

Trật tự từng phần của các

sự kiệnA1A2A3A4A5B1B2B3B4

Trao đổi thông điệpA1B2 và B3A4Chuyển qua

A1A2B2B3B4B1B2B3A4A5A1A2B2B3A4A5

B3

B4

B5

t

Trang 5

Vai trò của trật tự dữ liệu

2 Trật tự hóa các tác động

 Các tiến trình độc lập tạo ra các giao dịch M

 Việc thực hiện tuần tự có nghĩa là thực hiện tất cả các giao dịch M theo kiểu nối đuôi nhau và tuân thủ một trật tự nào đó

thực hiện riêng biệt từng giao dịch

 Trật tự hóa của tập hợp các giao dịch M là một dãy tất cả các tác động cấu tạo nên giao dịch M; mỗi

một tác động chỉ xuất hiện một và chỉ một lần

 Như vậy, trật tự hóa tuần tự là các trật tự hóa

tương ứng với việc thực hiện tuần tự các tác động

của tập hợp các giao dịch Đây là điều kiện đủ của

sự gắn bó

Trang 6

Vai trò của trật tự dữ liệu

Ví dụ 2: Quản lý các tài khoản tại một ngân hàng

Mỗi một người mở tài khoản tại ngân hàng sẽ được lưu trữ trong một bản ghi của CSDL Trong tài khoản của người sử dụng không bao giờ có giá trị bằng 0 hay giá trị âm.

 Phép toán chuyển khoản thể hiện bằng cách trừ đi một giá trị P nào đó (P=500) ở một tài khoản và cộng chính giá trị đó vào tài khoản khác

 Kí hiệu:

 A là số dư tài khoản bị trừ đi (A=1000)

 B là số dư tài khoản được cộng vào (B=2000).

 U: giao dịch mới

 T: các giao dịch chuyển khoản

 t: tỉ lệ lợi nhuận tiền gửi (t=0.01)

 Ba trật tự hóa có thể là S1, S2, và S3

Trang 7

Vai trò của trật tự dữ liệu

Giao dịch loại T A:=(1+t)xAA:=A-P

B:=(1+t)*BB:=B+PGiao dịch loại U

Giao dịch loại T A:=(1+t)xAA:=A-P

B:=(1+t)*B

B:=B+PGiao dịch loại U

Giao dịch loại T

A:=A-P

A:=(1+t)xAB:=(1+t)*B

B:=B+PGiao dịch loại U

Trang 8

Vai trò của trật tự dữ liệu

 Trật tự hóa S2 có tác dụng tương đương với trật tự hóa tuần tự S3, trong khi đó trật tự hóa S1 lại khác

 Trong trật tự hóa S2 và S3, các tác động cập nhật lần lượt của tài khoản A và B đều được thực hiện

theo cùng một tuần tự, còn trong trật tự hóa S1 thì trật tự tác động cập nhật tài khoản B bị đảo ngược

 Tóm lại: Vai trò của trật tự dữ liệu

Trang 9

SỰ GẮN BÓ THÔNG TIN

1 Điều kiện giả định và thực tế

 Ta có một tập thông tin nào đó có thể được truy cập bởi một tập các tiến trình Số lượng các thông tin có thể truy cập được

và các tiến trình có nhu cầu thông tin là con số cố định

 Hệ này phát triển rời rạc theo thời gian giữa các điểm quan sát,

ta có thể nhận biết được trạng thái thực của chúng, có nghĩa là các đối tượng và ngữ cảnh thực hiện các tiến trình, hệ kiểu

như vậy hoạt động với độ ổn định tuyệt vời

Các điều kiện giả định này so với hệ thực tế khác nhau như sau:

 Các đối tượng và tiến trình có thể được tạo lập và hủy bỏ

 Các đối tượng và tiến trình có thể được phân tán trên các trạm khác nhau thông qua hệ thống viễn thông Do vậy ta không xác định được trạng thái của hệ

 Hệ thống viễn thông và các tiến trình là các đối tượng có thể xảy

ra sự cố kỹ thuật

Trang 10

SỰ GẮN BÓ THÔNG TIN

2 Tác động và giao dịch

 Các đối tượng khác nhau của hệ không phải là các đối tượng độc lập nhau, chúng quan hệ với nhau bởi tập hợp các quan hệ gọi là các ràng buộc toàn vẹn

 Trạng thái của hệ thoả mãn một tập các ràng buộc toàn vẹn gọi là trạng thái gắn bó

 Tuy nhiên, khi có sự cố xảy ra thì để có thể khôi phục lại

dữ liệu và trạng thái gắn bó thông tin của toàn hệ thống

 Cần phải xác định được loại, bản chất và vị trí diễn ra sự

cố mà từ đó nhận biết một cách tự động và chuyển đến phương án giải quyết nào cho phù hợp

 Việc thực hiện các tiến trình phải duy trì cho được hệ trong trạng thái gắn bó Để chính xác hoá đặc tính này, cần phải lưu ý là trạng thái của hệ chỉ được xác định ở mức quan sát cho trước

Trang 11

Mỗi giao dịch được cấu tạo từ một dãy các tác động được thể hiện như sau: Nếu 2 tác động A và B thuộc hai giao dịch khác nhau được thực hiện bởi hai tiến trình thì hiệu ứng tổng quát của chúng sẽ là hiệu ứng của dãy (A;B) hoặc là (B;A)

2 Tác động và giao dịch

Trang 12

 Việc thu được một trật tự hóa gắn bó chỉ có thể thành công khi

áp dụng các ràng buộc trên trật tự thực hiện các tác động.

 Nguyên lý của phương pháp là ở chỗ làm chậm một tác động nào đó cho đến thời điểm mà sự thực hiện của nó không còn

có nguy cơ phá hủy sự gắn bó của trật tự hóa.

 Để đảm bảo các giao dịch trên tôn trọng sự gắn bó thông tin thì người ta đưa ra các phương pháp, cơ chế để đảm bảo khi giao dịch vẫn có sự gắn bó thông tin toàn vẹn dữ liệu trên cơ sở dữ liệu phân tán là cơ chế then cài:

 Then cài loại trừ tương hỗ.

 Then cài lựa chọn đối tượng.

 Giao dịch hai pha.

Trang 13

3 Triển khai giao dịch tôn trọng sự gắn bó

1 Cơ chế cho phép sắp xếp một cách tổng quát các tác động của cùng một giao dịch, ngay cả khi các tác động

này diễn ra trên các trạm khác nhau

2 Cơ chế điểu khiển các tranh chấp truy cập cục bộ vào các đối tượng đảm bảo tôn trọng tính toàn vẹn của các

đối tượng truy cập cục bộ này

3 Cơ chế có khả năng xử lý các bế tắc và thiếu thốn vô hạn, hậu quả của việc hủy bỏ các giao dịch.

SỰ GẮN BÓ THÔNG TIN

Trang 14

3 Triển khai giao dịch tôn trọng sự gắn bó

Trang 15

3 Triển khai giao dịch tôn trọng sự gắn bó

 Muốn thực hiện những điều vừa nêu ở trên, người ta đòi hỏi giao dịch phải có các đặc tính toàn vẹn như sau:

2 Nếu một tiến trình bị sự cố trước khi diễn ra các thay đổi của T, trạng thái của hệ là gắn bó.

3 Nếu một tiến trình bị sự cố giữa các thay đổi của T, trạng thái của hệ là không gắn bó.

Trang 17

 Thuật toán quản lý nhiều bản sao

tự tuần hoàn

Trang 18

PHẦN BÀI TẬP

xử lý được trang bị một bộ nhớ cục bộ hoạt động theo

nguyên tắc của bộ nhớ cache

 Các biến toàn cục, được truy cập bởi nhiều tiến trình

 Các biến cục bộ chỉ được phép truy cập bởi một tiến trình có nhu cầu.

 Các hằng chia sẻ được.

một kí hiệu cho phép nhận dạng kiểu của đối tượng chứa trong đó Một đối tượng không thể thay đổi kiểu

vào các loại đối tượng khác nhau đó với điều kiện duy trì sự gắn bó bằng cách sử dụng ghi tức thời

Trang 19

1 Giải thuật Duy trì sự gắn bó thông tin:

 Giải thuật duy trì sự gắn bó thông tin đối với hệ trên theo phương pháp tránh bế tắc và thiếu thốn dựa trên nguyên lý sau.

Bước 1: Then cài ngầm định.

động khác nhau trên trạm và diễn biến theo một trật tự hoá hợp thức

nói cách khác là tiến trình Pji mà tiến trình này đang thực hiện trên Si

giao dịch sử dụng theo kiểu chia sẻ trước khi đọc, theo kiểu loại trừ trước khi ghi Tất cả các mở then chỉ diễn ra sau khi xong một giao dịch

Trang 20

1 Giải thuật Duy trì sự gắn bó thông tin:

 Hành vi xung đột truy cập vào đối tượng khi có hai giao dịch cố gắng thực hiện các tác động không tương thích vào một đối tượng này

 Một xung đột được xác định khi có ý định truy cập bởi một giao dịch T2 vào một đối tượng đã khoá ngầm định bởi giao dịch T1 theo kiểu không tương thích

 Không nên để T2 chờ cho đến khi T1 kết thúc mà phải huỷ bỏ một trong hai giao dịch này.

Trang 21

1 Giải thuật Duy trì sự gắn bó thông tin:

Bước 3: Khẳng định.

ưu tiên có thể bị huỷ bỏ, nên cần phải áp dụng có hệ thống một kỹ thuật khẳng định

nó đã được cài then thì được mở then, và tất cả các giá trị phải được thay đổi khôi phục trở lại như cũ

hiện trên các bản sao đối tượng Nếu giao dịch bị huỷ thì một thông điệp được gửi đi cho tất cả các trạm chứa các đối tượng thay đổi và các bản sao bị huỷ bỏ

một thông điệp khẳn định được gửi cho tất cả các trạm và lúc này các bản sao đối tượng được phép thay thế các bản gốc

Trang 22

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

 Một bế tắc được loại bằng cách hủy bỏ hoàn toàn một trong các giao dịch gây nên xung đột.

 Nhưng nếu ta chọn theo kiểu ngẫu nhiên để hủy bỏ thì ta lại

gặp phải một trường hợp rắc rối về kỹ thuật khác là một hay

một số giao dịch nào đó sẽ rơi vào trạng thái chờ vô hạn

 Sử dụng chiến lược chọn lựa giao dịch : phương pháp wait-die system

 Giả sử rằng T1 và T 2 là hai giao dịch đang ở trạng thái xung đột để truy cập vào một đối tượng chung e

 T1 đã thực hiện động tác đầu tiên trên e

 Ta gọi các N(T1) và N(T2) là các dấu kết hợp lần lượt với từng giao dịch khi khởi sự.

 Khi diễn ra xung đột, việc lựa chọn được thực hiện bằng bộ điều khiển của trạm e được tiến hành như sau:

Nếu N(T2)<N(T1) thì <T2 bị chặn>

Nếu không <T2 bị hủy rồi được khởi sự lại>

Chấm dứt nếu

Trang 23

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

 Dùng hai loại khóa chốt : Khóa đọc (read

lock) và Khóa ghi (write lock)

 Một giao dịch Ti đang muốn đọc một mục dữ liệu được chứa trong đơn vị khóa x sẽ nhận được một khóa đọc trên x [ký hiệu là rli(x)]

 Và tương tự với thao tác ghi là wli(x)

 Nếu chúng truy cập đến cùng một mục dữ

liệu thì có thể nhận được khóa trên mục dữ liệu đó cùng lúc

Trang 24

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

 Ma trận tương thích của các thể thức khoá được thể hiện như hình sau

 Vì vậy hai giao dịch có thể đọc đồng thời một mục

Trang 25

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

quản lý khóa

thao tác Cơ sở dữ liệu (đọc hoặc ghi) và các thông tin kèm theo (như dữ liệu cần truy xuất, định danh của giao dịch

đưa ra yêu cầu)

chứa mục dữ liệu đó đã bị khóa hay chưa

thức của giao dịch đang yêu cầu, thao tác sẽ bị hoãn lại

tác này sẽ được chuyển bộ xử lý dữ liệu để truy xuất cơ sở dữ liệu thực sự.

hiện

khởi hoạt một giao dịch khác đang đợi truy xuất dữ liệu này

Trang 26

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

 Quy tắc khóa hai pha chỉ đơn giản khẳng định rằng không có giao dịch nào yêu cầu khóa sau khi nó đã giải phóng một trong các khóa của nó

 Nó không giải phóng khóa cho đến khi nó bảo đảm rằng không yêu cầu thêm khóa nữa

 Thuật toán 2PL thực hiện các giao dịch hai pha mỗi giao dịch có một pha tăng trưởng trong pha này nó nhận khóa và truy xuất các mục dữ liệu và có một pha thu hồi là giai đoạn giải phóng các khóa.

Trang 27

Bắt đầu Điểm khóa Kết thúc Thời gian giao dịch

Nhận khóa Giải phóng khóa

Số

khoá

Biểu đồ khóa 2PL

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

Trang 28

2 Hủy bỏ bế tắc và thiếu thốn vô hạn:

Thuật toán điều khiển đồng thời bằng khóa chốt

 Điểm khóa là thời điểm giao dịch đã nhận

được tất cả các khóa nhưng chưa băt đầu

giải phóng bất kỳ khóa nào

 Hình trên chỉ ra việc hoàn tất khóa sau khi

hoàn tất việc truy xuất

 Nhưng việc cài đặt gặp khó khăn vì bộ quản

lý khóa phải biết rằng giao dịch đã nhận đủ tất cả mọi khóa và sẽ không còn cần một

khóa mục nào nữa

Trang 29

Định nghĩa dùng trong giải thuật:

Declare-type

Operation: Một trong những thao tác Begin_Transaction, Read, Write, Abort, hoặc

Commit

DataItem một khoản mục dữ liệu trong CSDL phân tán

TransactionId: Một giá trị duy nhất được gán cho mỗi giao dịch

DataVal: mọt giá trị có kiểu dữ liệu cơ bản(integer, real, )

SiteId: định danh duy nhất cho vị trí

Dbop {một phép toán trên CSDL của ứng dụng}

Body: thân giao dịch

Message <- một chuỗi ký tự cần được truyền đi

Trang 30

hoàn tất hành động ghi trả res

End

Abort:

Begin Thông tin cho ứng dụng biết về

việc hoàn tất huỷ bỏ giao dịchT

End End case End

End case Until forever End {2PL-TM}

Trang 31

KẾT LUẬN

 Các giao dịch thực hiện truy cập đồng thời lên cơ

sở dữ liệu trên môi trường phân tán sẽ có rất nhiều vấn đề nảy sinh và không đảm bảo gắn bó thông tin lúc truy cập

 Ngăn chặn các vấn đề này người ta đưa ra hàng loạt phương pháp, cơ chế nhằm đảm bảo gắn bó thông tin trong môi trường CSDL phân tán.

 Vì có rất nhiều thuật toán liên quan đến vấn đề đảm bảo gắn bó thông tin trong cơ sở dữ liệu phân tán

và thời gian thực hiện tiểu luận này là rất ít nên không trình bày tất cả các phương pháp, thuật toán liên quan đến quá trình đảm bảo gắn bó dữ liệu khi truy cập xử lý các giao dịch mà chỉ liệt kê danh sách các thuật toán này.

Trang 32

TÀI LIỆU THAM KHẢO

 Hệ tin học phân tán của PGS.TS Lê Văn Sơn NXB Đại học quốc gia TP Hồ

Chí Minh.

 Nguyên lý các hệ cơ sở dữ liệu phân tán của Patrick Valduriez , Trần Đức

Quang Biên Dịch Tập 1 + Tập 2 , NXB Thống Kê.

 Học liệu mở của Việt Nam về hệ phân tán trong tin học:

http://hoclieumo.com/course/info.php?id=68

 Tổng kết các công cụ xây dựng HPT:

http://itp.hut.edu.vn/bkel/course/info.php?id=84

 Distributed systems engineering: http://www.iop.org/EJ/journal/DSE

 Introduction for distributed systems:

Trang 33

XIN CHÂN THÀNH CẢM ƠN

Ngày đăng: 29/12/2013, 14:49

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