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

Sự gắn bó thông tin trong các cơ sở dữ liệu phân tán

42 594 1

Đ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 42
Dung lượng 1,13 MB

Nội dung

- Vô hình nhân bản: Phân bố dữ liệu theo lối nhân dữ liệu thành nhiều bản sao nằm rải rác trên mạng  Tăng hiệu năng, độ tin cậy, tính sẵn sàng -Vô hình phân mảnh fragmentation transpare

Trang 1

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA

 

“ SỰ GẮN BÓ THÔNG TIN TRONG HỆ QUẢN TRỊ

CƠ SỞ DỮ LIỆU PHÂN TÁN “

TIỂU LUẬN

MÔN HỌC: HỆ TIN HỌC PHÂN TÁN

HVTH : TRỊNH SỬ TRƯỜNG THI GVHD: PGS.TS LÊ VĂN SƠN

ĐỀ 2:

Trang 2

PHẦN I:

LÝ THUYẾT

1. Kh ái quát về CSDL phân tán

2 Triển vọng và các yếu tố phức tạp của

CSDL phân tán

3 Sự gắn bó thông tin trong CSDL phân

tán

Trang 3

I KHÁI QUÁT VỀ CSDL PHÂN TÁN

Giới thiệu

Xử lý dữ liệu phân tán

Hệ CSDL Phân tán là gì?

Trang 4

Công nghệ về các hệ cơ sở dữ liệu phân tán (distributed database system, DDBS) là sự hợp nhất của hai hướng tiếp cận đối với quá trình xử lý dữ liệu:

 Công nghệ cơ sở dữ liệu

1 Giới thiệu:

CHƯƠNG TRÌNH 1 CHƯƠNG TRÌNH 2

Mô tả dữ liệu Thao tác dữ liệu

TẬP TIN 2 TẬP TIN 3

DỮ LIỆU THỪA

Hình 1: Xử lý tập tin truyền thống

Trang 5

Do nhu cầu tích hợp CSDL của các công ty, xí nghiệp để khai thác tập trung.

 Công nghệ mạng máy tính: đi ngược lại với mọi nỗ lực tập trung hóa (phân tán)

Tổng hợp hai hướng tiếp cận trái ngược nhau cho ra một công nghệ mạnh mẽ, nhiều hứa hẹn Mục tiêu quan trọng

nhất của CSDL là tích hợp (integratior) chứ không phải tập trung hoá (centralization)

1 Giới thiệu (tt)

Trang 6

Định nghĩa:

CSDL phân tán: là một tập nhiều cơ sở dữ liệu có

liên đới logic và được phân bố trên một mạng máy tính

Hệ quản trị CSDL phân tán (distributed database

management system): là một hệ thống phần mềm

cho phép quản trị các CSDL phân tán và làm cho việc phân tán trở nên “vô hình” đối với người sử dụng

2 Hệ CSDL phân tán là gì?:

Trang 7

Trạm 1

Trạm 1

Trạm 3 Trạm 4

Trang 8

II TRIỂN VỌNG & CÁC YẾU TỐ PHỨC

TẠP CỦA CÁC HỆ CSDL PHÂN TÁN

1. Triển vọng của các hệ CSDL phân tán

2. Các yếu tố phức tạp

Trang 9

1 Tri ển vọng của các h ệ CSDL phân tán

1.1 Quản lý dữ liệu phân tán và nhân bản một cách

vô hình

-Vô hình đối với người sử dụng: Che khuất các chi tiết về cài đặt,

tạo thuận lợi tối đa cho người sử dụng DBMS vô hình hoàn toàn là mức độ hỗ trợ cao mà nó cung cấp cho việc phát triển các ứng dụng phức tạp

- Độc lập dữ liệu: về logic và vật lý

 Logic: Miễn nhiễm của các ứng dụng đối với những thay đổi

trong cấu trúc logic của CSDL

 Vật lý: Không quan tâm đến chi tiết tổ chức dữ liệu vật lý

- Vô hình kết mạng (network transparency): Người sử dụng được

tách ra khỏi chi tiết hoạt động của mạng

Trang 10

- Vô hình nhân bản: Phân bố dữ liệu theo lối nhân dữ liệu thành

nhiều bản sao nằm rải rác trên mạng  Tăng hiệu năng, độ tin cậy, tính sẵn sàng

-Vô hình phân mảnh (fragmentation transparency): Nhu cầu tách

mỗi quan hệ thành các mảnh dữ liệu nhỏ hơn và xử lý các mảnh này như 1 đối tượng CSDL độc lập

1.2 Độ tin cậy qua các giao dịch phân tán :

-Do có các thành phần được nhân bản  loại bỏ được các tình

huống sự cố tại các điểm riêng lẻ

-Dữ liệu tại các điểm sự cố sẽ được phục hồi sau khi khắc phục

1 Triển vọng của các hệ CSDL phân tán

Trang 11

1 Triển vọng của các hệ CSDL phân tán

1.3 Cải thiện hiệu năng:

Hiệu năng của DBMS phân tán được cải thiện dựa vào 2 điểm:

- Có khả năng phân mảnh CSDL khái niệm Ở đây có 2 ưu điểm nổi bật:

 Mỗi trạm chỉ xử lý 1 phần CSDL, tranh chấp về CPU và dịch vụ xuất nhập không nghiêm trọng như các CSDL tập trung

 Cục bộ hoá dữ liệu, làm giảm thiểu các chậm trễ do truy xuất ở xa

- Tính chất song hành của hệ phân tán, dùng để thực hiện các các tính toán song song

1.4 Tính dễ mở rộng: Mở rộng hệ thống về lưu trữ và xử lý

dễ dàng và kinh tế

Trang 12

2 Các yếu tố phức tạp

- Đảm bảo rằng việc cập nhật được phản ảnh trên tất

cả các bản sao của mục dữ liệu đó.

- Nếu một vài vị trí gặp sự cố do phần cứng, phần

mềm hoặc đường truyền trong lúc một thao tác cập

nhật đang tiến hành thì hệ thống phải đảm bảo rằng tác dụng cập nhật phải có trên những vị trí bị sự cố khi hệ thống khôi phục.

- Đồng bộ hoá các giao dịch trên nhiều vị trí sẽ khó

khăn so với hệ tập trung.

Trang 13

2 Các yếu tố phức tạp

Những khó khăn này chỉ ra một số vấn đề cần giải quyết:

- Tính phức tạp: Phải giải quyết không những vấn đề môi

trường tập trung mà còn hàng loạt các vấn đề khác về phân tán

- Chi phí: về thiết bị, con người.

- Phân tán quyền điều khiển: Sự phân tán gây ra vấn đề khó

khăn cho đồng bộ hoá và hiệp đồng Việc điều khiển phân tán

gây ra những gánh nặng nếu không có những chiến lược phù hợp

để giải quyết

- Tính an ninh (security): So với CSDL tập trung, bảo mật của

CSDL phân tán khó khăn hơn nhiều

Trang 14

III GẮN BÓ THÔNG TIN TRONG HỆ

Trang 15

1 Giới thiệu vấn đề:

 Việc truy cập thông tin trong hệ tin học phân tán

không thể tiến hành theo một trình tự ngẫu nhiên.

 Nguyên do cơ bản của vấn đề trên chính là vấn đề

bế tắc và gắn bó dữ liệu.

 Hai hiện tượng trên có thể diễn ra bất cứ lúc nào và

bất cứ ở đâu trong hệ và gây nên những hậu quả có

tính chất kỹ thuật không thể lường trước được.

 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ó

Trang 16

2 Sự gắn bó thông tin

GIẢ ĐỊNH THỰC TẾ

Số lượng các đối tượng thông tin

có thể truy cập được và số lượng

các tiến trình có nhu cầu thông tin:

cố định

 Các đối tượng và các tiến trình được tạo lập và huỷ bỏ có tính chất động trong suốt quá trình tồn tại của hệ.

Hệ phát triển rời rạc theo thời

gian Giữa các điểm quan sát có

thể nhận biết được trạng thái thực

của chúng

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

Hệ có độ ổn định cao  Xảy ra sự cố kỹ thuật bất kỳ lúc nào

2.1 Giả định và thực tế:

Trang 17

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

 Các đối tượng khác nhau của hệ 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

 Mong muốn 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

2 Sự gắn bó thông tin (tt)

Trang 18

Trạng thái của hệ được xác định ở hai mức quan sát :

• Người sử dụng: Tiến trình là thực hiện một dãy các giao

dịch Giao dịch đó là chương trình duy nhất được thực hiện

từ một trạng thái gắn bó dẫn hệ đến một trạng thái gắn bó

khác

• Hệ thống: 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 hai 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à hoặc hiệu ứng của dãy (A;B) hoặc là

2 Sự gắn bó thông tin (tt)

Trang 19

 Ở mức hệ thống, các tác động là phần tử nhỏ nhất không thể

chia cắt được nữa Trong quá trình thực hiện hệ phải đảm bảo

cho các tác động không bị ngắt quãng

 Cho một tập hợp giao dịch M={T 1 ,T 2 …,T n } lần lượt được thực

hiện bởi các tiến trình độc lập p 1 ,p 2 …,p n 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 của M theo kiểu nối

đuôi nhau và tuân thủ một trật tự nào đó Sự gắn bó của hệ được bảo toàn

 Nếu vì lý do hiệu quả, nhiều giao dịch được thực hiện song

song thì sự gắn bó không còn đảm bảo được nữa

2 Sự gắn bó thông tin (tt)

Trang 20

2.3 Trật tự hoá các tác động

Cho một tập hợp giao dịch M = {T 1 ,T 2 …,T n }.

 Toàn bộ việc thực hiện các giao dịch M bởi 1 tập hợp các tiến trình tương tranh là tương đương với việc thực hiện 1 dãy S các tác động thuộc các giao dịch này chẳng hạn: S= (a 1 , a 2 a n ).

 Tuân thủ trật tự nội tại từng giao dịch.

 Gồm tất cả các tác động tạo nên các giao dịch M.

 Mỗi tác động chỉ xuất hiện 1 và chỉ 1 lần

⇒ S gọi là trật tự hoá của tập hợp các giao dịch M

2 Sự gắn bó thông tin (tt)

Trang 21

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

Cho một tập hợp giao dịch M={T 1 ,T 2 …,T n }.

 Một trật tự hóa của tập hợp các tác động thành phần  thực hiện hoàn toàn các giao dịch

 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 trên cơ sở dữ liệu phân tán:

Trang 22

Cơ chế then cài.

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

 Toàn bộ giao dịch được đạt trong cặp hàm nguyên thuỷ:

mo_giaodich và dong_giaodich

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

 Một giao dịch thay đổi các giá trị của đối tượng phải loại trừ tất

cả các đối tượng khác muốn truy cập, ngược lại thì việc truy cập được tiến hành theo kiểu tương tranh

 Giao dịch hai pha: kiểm tra giao dịch theo 2 điều kiện

 Toàn bộ đối tượng bị cài then cho đến cuối giao dịch.

 Không có 1 then cài nào có thể diễn ra tiếp theo 1 then cài khác

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

Trang 23

1 Giao dịch T bắt buộc phải thực hiện một cách trọn vẹn

2 Nếu có sự cố xảy ra thì phải quay lại điểm xuất phát.

Xử lý các sự cố:

Từ việc xác định các đối tượng dữ liệu phân bổ trên nhiều trạm

khác nhau ở trên, để duy trì sự gắn bó trong môi trường phân tán phải thực hiện:

Và đòi hỏi giao dịch phải có các đặc tính toàn vẹn:

1 Nếu một tiến trình bị sự cố trước khi kết thúc T nhưng lại sau các thao tác thay đổi cần thiết của T, trạng thái của hệ là gắn bó.

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ó.

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

Trang 24

Quản lý gắn bó các giao dịch

Xét hệ có các đối tượng được phân tán trên nhiều trạm, nhưng không có bản sao

tiến hành theo kiểu song song.

vô hạn Nhưng thực tế khả năng bế tắc là không đáng kể vì mỗi giao dịch chỉ xử lý tập hợp nhỏ của các đối tượng.

⇒ Đưa ra các phương pháp để quản lý gắn bó các giao dịch:

Phương pháp dự phòng (đòi hỏi phải có kiến thức cần thiết

về các đối tượng xử lý)

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

Trang 25

4 Các thuật toán đảm bảo sự gắn bó thông tin trong

cơ sở dữ liệu phân tán.

Thuật toán duy trì sự gắn bó tránh bế tắc và thiếu thốn

Nguyên lý:

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

1. Thuật toán đảm bảo sự gắn bó yếu nhờ dấu

2. Thuật toán đảm bảo sự gắn bó yếu nhờ bộ tuần tự tuần

hoàn

3. Thuật toán đảm bảo sự gắn bó mạnh

Trang 26

PHẦN II:

BÀI TẬP

Trang 27

BÀI TẬP: Sơ đồ CSDL gồm 5 files

t 0 -USER 1

Trạm 3

Trạm 2 Trạm 1

Trạm 4 Trạm 5

Confirm

Mạng truyền số liệu

CSDL 4

CSDL

5

CSDL 1

CSDL 2

CSDL 3

Acknowledge

t 1 -USER 4

Trang 28

Như vậy, ở một thời điểm to nào đó có một thao tác nào xảy ra tại phía người dùng thứ nhất tại vị trí 1 để đọc, ghi dữ liệu tại một trạm bất kỳ nào đó thì trạm đó sẽ gửi một acknowledge đến một trạm kế tiếp nếu các giao dịch thành công thì trạm này sẽ gửi trả lời một confirm xác

hẹn giao dịch này để đảm bảo gắn bó thông tin trong cơ

sở dữ liệu phân tán, và các trạm còn lại cũng sẽ có các giao dịch tương tự như vậy trong mạng lưới Nếu có một

sự cố nào đó xảy ra thì tính nhất quán về mặt dữ liệu sẽ không còn và như vậy vấn đề gắn bó dữ liệu trong hệ sẽ không còn.

Mô tả

Trang 29

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

Chúng ta dùng hai loại khóa chốt đó là 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ị 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 có thể nhận được khóa trên mục dữ liệu đó cùng lúc

được thể hiện như hình dưới đây:

Trang 30

rl i (x) wl i (x)

Các khoá đọc tương thích với nhau, còn các khoá đọc-ghi hoặc ghi-ghi

thì không tương thích => hai giao dịch có thể đọc đồng thời một mục

Trong các hoạt động dùng khóa chốt, bộ xếp lịch chính là Bộ Quản lý

khóa Bộ quản lý giao dịch sẽ chuyển cho Bộ Quản lý khóa các thao tác

CSDL (đọ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) Sau đó bộ quản lý khóa sẽ

kiểm tra xem đơn vị khóa có chứa mục dữ liệu đó đã bị khóa hay chưa,

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

Trang 31

 Ngược lại, khóa sẽ đặt đúng với thể thức mong muốn và thao 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ự Sau đó bộ quản lý giao dịch sẽ thông tin về các kết quả thực hiện Việc kết thúc giao dịch sẽ giải phóng các khóa của nó và khởi hoạt một giao dịch khác đang đợi truy xuất dữ liệu này.

 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.

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

Trang 32

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

Số

khoá

Biểu đồ khóa 2PL

Trang 33

 Đ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 Vì thế điểm khóa xác định cuối pha tăng trưởng và khởi điểm pha thu hồi của một giao dịch 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 Điều này cho phép các giao dịch chưa nhận khóa tiếp tục tiến hành nhận khóa dẫn đến làm tăng hoạt động đồng thời 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 Bộ quản lý khóa cũng cần phải biết giao dịch không cần truy xuất dữ liệu nữa dẫn đến khóa có thể được giải phóng

Biểu đồ khóa 2PL

Trang 34

Đị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}

Opn: Operation Data: DataItem Tid: transactionId Dbmsg {một thông báo về bộ xử lý dữ liệu}

Opn: Operation

Trang 35

Scmsg {một thông báo từ bộ xếp lịch}

Opn: Operation Tid: transactionId Result: DataVal Transaction <- một bộ hai gồm

Tid: transactionId Body: thân giao dịch Message <- một chuỗi ký tự cần được truyền đi

OpSet: một tập các Dbop SiteSet: một tập các SiteId

Trang 37

begin

Trả res về cho ứng dụng của người sử dụng (giao dịch)

end Write:

begin

Thông tin cho ứng dụng về việc hoàn tất hành động

ghi trả res về cho ứng dụng

end Commit :

begin Huỷ vùng làm việc của T

Thông tin cho ứng dụng biết về việc hoàn tất giao dịch T

end case

until forever

end {2PL-TM}.

Giải thuật (tt):

Trang 38

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.

Bộ điều khiển cục bộ trên mỗi trạm Si áp đặt cho các tác động khác nhau trên trạm và diễn biến theo một trật tự hoá hợp thức

Để làm được việc đó cần phải ngăn chặn giao dịch Tj hay 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 Tất cả diễn ra trên một đối tượng được cài then bởi một giao dịch sử dụng theo kiểu chia sẻ trước khi đọc, loại trừ trước khi ghi Tất cả các mở then chỉ diễn ra sau khi xong một

Giải thuật (tt):

Ngày đăng: 23/03/2015, 18:44

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w