Tải bản đầy đủ (.pdf) (88 trang)

CÁC CÔNG NGHỆ SỬ DỤNG TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN VÀ ORACLE pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (366.67 KB, 88 trang )



®¹i häc quèc gia hμ néi
Tr−êng §¹i Häc Khoa Häc Tù Nhiªn
Khoa C«ng nghÖ Th«ng tin

C¸c c«ng nghÖ sö dông trong
C¬ së d÷ liÖu ph©n t¸n vμ ORACLE






Các công nghệ sử dụng trong CSDL phân tán

T
rang 2
Mục lục
Mục lục 1
Mục lục 2
I. Giới thiệu chung. 5
II. Các đặc điểm chính của hệ phân tán. 5
1. Chia xẻ tài nguyên. 5
2. Tính mở. 8
3. Khả năng song song. 8
4. Khả năng mở rộng. 8
5. Khả năng chịu lỗi. 9
6. Tính trong suốt. 10
III. Các lí do sử dụng CSDL phân tán. 10
1. Xuất phát từ chính yêu cầu thực tế về tổ chức và kinh tế. 10


2. Sự liên kết các CSDL đang tồn tại. 10
3. Sự phát triển mở rộng. 11
4. Làm giảm tổng chi phí tìm kiếm. 11
5. Trả lời truy vấn nhanh. 11
6. Độ tin cậy và khả năng sử dụng đợc nâng cao. 11
7. Giá thành truyền thông thấp hơn. 12
IV. Hạn chế của CSDL phân tán. 12
phần II 13
Các công nghệ sử dụng trong 13
hệ Cơ sở dữ liệu phân tán 13
I. Kiến trúc cơ bản của CSDL phân tán. 13
1. Sơ đồ tổng thể. 13
2. Sơ đồ phân đoạn. 13
3. Sơ đồ định vị: 14
4. Sơ đồ ánh xạ địa phơng: 14
II. Thiết kế hệ thống CSDL phân tán 14
1. Khung làm việc chung cho thiết kế hệ CSDL phân tán. 14
2. Các phơng pháp thiết kế hệ CSDL phân tán. 15
3. Thiết kế CSDL phân đoạn. 17
4. Kết luận. 21
III. GIới thiệu về giao tác. 21
1. Định nghĩa. 21
2. Các điều kiện kết thúc của giao tác. 22
3. Các thuộc tính của giao tác. 22
3. Các loại giao tác. 23
4. Kiến trúc của giao tác. 24
IV. Điều khiển tơng tranh phân tán. 24
1. Khái niệm xung đột và lịch đầy đủ. 25
2. Các cơ chế điều khiển tơng tranh. 25
3. Quản lý khóa chết. 26

3. Kết luận. 28
Các công nghệ sử dụng trong CSDL phân tán

T
rang 3
V. Lỗi và chịu lỗi trong hệ phân tán. 28

1. Các khái niệm. 28
2. Các lỗi trong Hệ phân tán. 30
3. Các cách chịu lỗi trong Hệ phân tán. 31
Phần III cơ sở dữ liệu
phân tán trên oraclE 33
I. Các khái niệm cơ bản. 33
1. Snapshot. 33
2. Sao bản cơ sở. 33
3. Các nhóm sao bản ( Replication Groups). 33
4. Các vị trí sao bản (Replication Sites). 34
5. Danh mục sao bản. 34
6. Database link. 34
2. Tạo Read-Only Snapshot. 35
3. Sửa đổi các Snapshot. 37
4. Xoá Snapshot. 38
5. Index Snapshot. 38
6. Sử dụng Snapshot. 38
7. Tạo View và Synonyms dựa trên Snapshot. 38
III. Updatable Snapshot. 39
IV. Các vấn đề cơ bản về Snapshot log. 39
1. Định nghĩa. 39
2. Tạo các Snapshot log. 40
3. Sửa đổi các tham biến của Snapshot log. 41

4. Xoá các Snapshot log. 41
5. Quản lý Snapshot log. 41
V. Giới thiệu về các nhóm làm tơi Snapshot. 42
1. Tạo nhóm làm tơi Snapshot. 42
2. Sửa đổi nhóm làm tơi Snapshot. 42
VI. Vấn đề làm tơi các Snapshot. 43
1. Giới thiệu. 43
2. Các điều kiện để thực hiện làm tơi Snapshot. 43
3. Tự động làm tơi Snapshot. 44
4. Làm tơi Snapshot bằng tay. 46
VII. Các mô hình phân tán dữ liệu trong Oracle . 46
1. Phân tán dữ liệu hoàn toàn. 47
2. Phơng pháp phân tán Partition. 50
3. Phơng pháp phân tán sử dụng các Replicate. 53
4. Kết hợp các chiến lợc. 55
VIII. giải quyết xung đột trong Oracle. 55
1. Giới thiệu. 55
2. Xoá các xung đột. 56
3. Các nhóm cột. 57
4. Giới thiệu một số phơng pháp giải quyết xung đột. 58
5. Khai báo phơng pháp giải quyết xung đột. 59
Các công nghệ sử dụng trong CSDL phân tán

T
rang 4
Phần I
Cơ Sở Dữ Liệu Phân Tán trong bài toán WSc (water
supply company ) 67
i. Giới thiệu khái quát về hệ thống và các vấn đề liên quan đến hệ thống. . 67
1. Mô hình tổ chức và mô hình mạng của Công ty WSC. 67

2. Phạm vi của hệ thống. 69
II. Mô hình phân tán dữ liệu tại WSC. 69
1. Phân tán chức năng hoạt động giữa trung tâm và chi nhánh tại WSC. 69
2. Mô hình dữ liệu chung tại WSC. 70
3. Mô hình dữ liệu phân tán tại WSC. 70
4. Các chú ý khi tạo các bảng tại các chi nhánh trong cấu hình CSDL
phân tán. 71

III. Phân tán dữ liệu khách hàng trong WSC. 76
1. Giới thiệu các thực thể trong ứng dụng quản lí Khách Hàng. 76
2. Thực hiện phân tán CSDL. 77
Tài liệu tham khảo 88
Tài liệu tham khảo 88
Các công nghệ sử dụng trong CSDL phân tán

T
rang 5
phần I tổng quan về hệ cơ sở dữ liệu phân tán
I. Giới thiệu chung.
Định nghĩa: Hệ CSDL phân tán là một tập hợp dữ liệu mà về mặt logic tập
dữ liệu này thuộc về một hệ thống, nhng đợc trải trên các vị trí khác nhau
và chúng có thể kết nối với nhau thông qua một mạng thông tin dữ liệu.
Có hai điểm quan trọng đợc nêu ra trong định nghĩa là:
- Phân tán: Dữ liệu không c trú trên một vị trí, mà đợc phân bố rộng
khắp trên nhiều máy tính đặt tại nhiều vị trí khác nhau.
- Tơng quan logic: Dữ liệu có một số các thuộc tính ràng buộc chúng với
nhau, điều này giúp chúng ta có thể phân biệt một CSDL phân tán với một tập
hợp CSDL cục bộ, các tệp c trú tại các vị trí khác nhau, hay hệ thống CSDL
phân quyền trong một mạng máy tính.
Hệ thống mạng thông tin cho phép ngời dùng chia sẻ dữ liệu, vì vậy

ngời sử dụng hoặc ứng dụng ở vị trí A đều có thể truy cập hay cập nhật dữ
liệu tại vị trí B.
Các vị trí của một hệ thống phân tán có thể trải rộng trên một khu vực lớn
(toàn thế giới) hoặc một phạm vi hẹp (toà nhà). Cũng nh vậy máy tính ở các
vị trí phân tán có thể là bất cứ loại nào, từ micro-computer cho đến
supercomputer.
II. Các đặc điểm chính của hệ phân tán.
Hệ phân tán có các đặc điểm:
1. Chia xẻ tài nguyên.
Thuật ngữ tài nguyên dùng để chỉ tất cả mọi thứ có thể chia xẻ bởi Hệ
phân tán, bao gồm các thiết bị phần cứng: Đĩa, máy in tới các đối tợng nh
file, các cửa sổ, CSDL và các đối tợng dữ liệu khác.
Việc chia xẻ tài nguyên trên hệ phân tán - nơi mà các tài nguyên bị lệ
thuộc về mặt vật lý với một máy tính nào đó - đợc thực hiện thông qua truyền
thông. Để chia xẻ tài nguyên một cách hiệu quả mỗi tài nguyên cần phải đợc
quản lý bởi một chơng trình có giao diện truyền thông, các tài nguyên có thể
đợc truy nhập, cập nhật một cách tin cậy và nhất quán. Quản lý tài nguyên ở
đây là lập kế hoạch dự phòng, đặt tên cho các lớp tài nguyên, cho phép tài
Các công nghệ sử dụng trong CSDL phân tán

T
rang 6
nguyên đợc truy nhập từ nơi khác, ánh xạ tên tài nguyên vào địa chỉ truyền
thông
Mô hình mạng máy tính thờng đợc sử dụng là: Mô hình xử lý Client-
Server.
Mô hình xử lý Client-Server:
Là một mô hình trong đó có việc xử lý hợp tác đối với các yêu cầu của
Client nêu ra với máy Server. Máy Server tiến hành xử lý và gửi trả kết quả về
cho Client.

Việc xử lý hợp tác Client-Server thực tế là một dạng riêng của xử lý phân
tán với tài nguyên (và nhiệm vụ ảnh hởng tới tài nguyên) đợc trải qua hai
hay nhiều hệ thống tính toán rời rạc.
Mô hình xử lý Client-Server đã nổi lên nh một mức cao hơn của việc xử
lý dùng chung thiết bị đã có trong mang cục bộ (LAN). Trong môi trờng xử
lý dùng chung thiết bị, các máy tính cá nhân (PC) đợc gắn với thiết bị hệ
thống để cho phép các PC này dùng chung tài nguyên tệp trên đĩa cứng và
máy in là các thí dụ tiêu biểu. Theo thuật ngữ LAN, các thiết bị dùng chung
nh vậy đợc gọi là các Server (phục vụ). Tên phục vụ là thích hợp hơn cả vì
các thiết bị dùng chung này dùng để nhận các yêu cầu cần phục vụ từ các PC.
Trong xử lý dùng chung thiết bị trên LAN, các yêu cầu của PC này thờng bị
giới hạn về các dịch vụ liên quan tới tệp dùng chung hay tệp xử lý in. Nhợc
điểm hiển nhiên của cách tiếp cận nh vậy là ở chỗ mọi xử lý ứng dụng đều
đợc thực hiện trên các PC riêng lẻ, và chỉ một chức năng nào đó (in, vào ra
tệp) mới là phân tán. Do đó, toàn bộ tệp phải đợc gửi cho một PC đã ban ra
yêu cầu READ tệp đó. Nếu tệp đợc cập nhật thì toàn bộ tệp đó bị khoá bởi
PC đã tạo ra yêu cầu cập nhật tệp đó.
Chính vì các lý do trên mà mô hình xử lý Client-Server là việc mở rộng tự
nhiên của việc dùng chung thiết bị và vai trò của các trạm làm việc trở thành
khách của máy chủ. Phần có ý nghĩa nhất của mô hình này là xử lý ứng dụng
đợc phân chia (không nhất thiết phải chia đều) giữa Client và Server. Xử lý
thực tế đợc khởi đầu và kiểm soát một phần bởi nơi yêu cầu dịch vụ là Client
nhng không phải theo kiểu chủ-khách. Thay vì điều đó, cả Client và Server
đều hợp tác để thực hiện thành công ứng dụng. Chẳng hạn nếu PC chạy
chơng trình cần một bản ghi đặc biệt nào đó từ một tệp dùng chung thì nó sẽ
Các công nghệ sử dụng trong CSDL phân tán

T
rang 7
chuyển yêu cầu cho Server CSDL tiến hàng xử lý cục bộ rồi nhận lại đúng bản

ghi đã yêu cầu.
Nh vậy về mặt kiến trúc xử lý Client-Server cho thấy:
- Đờng liên lạc tin cậy, chắc chắn giữa Client và Server.
- Các trờng hợp tơng tác Client-Server do Client khởi xớng.
- Phân tán xử lý ứng dụng giữa Client và Server.
- Server kiểm soát các dịch vụ mà Client yêu cầu.
- Server làm trọng tài cho các yêu cầu tranh chấp.
Với Hệ CSDL phân tán, mô hình Client-Server có các u điểm:
- Các công ty lợi dụng đợc công nghệ tính toán của PC. PC ngày nay
cung cấp một năng lực tính toán đáng kể (mà trớc đây chỉ các máy tính lớn
mới có đợc) nhng lại với một giá thành nhỏ.
- Cho phép xử lý đợc thực hiện tại gần nguồn dữ liệu cần xử lý (các
CSDL trên Server). Do đó lu lợng và thời gian đáp ứng của mạng giảm đi
rất nhiều, hiệu năng và khả năng chuyển tải của mạng đợc tăng lên.
- Tạo điều kiện cho việc dùng giao diện đồ hoạ (GUI) có sẵn trên các trạm
làm việc hiện có.
- Cho phép và hỗ trợ hệ thống mở: Client và Server có thể chạy trên các
nền phần cứng và phần mềm khác nhau.
Tuy nhiên không phải là mô hình Client-Server đã hoàn chỉnh, nó vẫn còn
các nhợc điểm sau đây:
- Nếu có khá nhiều thành phần logic của ứng dụng đợc chuyển về Server
thì Server sẽ trở thành cổ chai y nh máy tính lớn (main frame) mô hình thiết
bị đầu cuối. Các tài nguyên hạn chế của Server sẽ ở trạng thái bị đòi hỏi làm
việc ở mức cao hơn do việc tăng số ngời tiêu thụ tài nguyên (End User).
- Các ứng dụng phân tán, đặc biệt là những ứng dụng đợc thiết kế cho xử
lý hợp tác thờng phức tạp hơn các ứng dụng không phân tán. Tuy nhiên có
thể giảm bớt độ phức tạp bằng cách thu nhỏ vấn đề lớn thành một tập hợp vấn
đề nhỏ hơn, có thể đợc tính độc lập nhau, tơng tự nh trong hệ thiết kế đơn
thể.
Các công nghệ sử dụng trong CSDL phân tán


T
rang 8
2. Tính mở.
Tính mở của một hệ thống máy tính là tính dễ dàng mở rộng phần cứng
(thêm các thiết bị ngoại vi, bộ nhớ, các giao diện truyền thông ) và phần
mềm (Các mô hình hệ điều hành, các giao thức truyên thông, các dịch vụ
dùng chung tài nguyên ) của nó.
Một Hệ phân tán có tính mở là hệ có thể đợc tạo nên từ nhiều loại phần
cứng và phần mềm của nhiều nhà cung cấp khác nhau với điều kiện là các
thành phần này phải theo một tiêu chuẩn chung.
Tính mở của Hệ phân tán đợc xem xét theo mức độ bổ sung vào các dịch
vụ dùng chung tài nguyên mà không phá hỏng hay nhân đôi các dịch vụ đang
tồn tại. Tính mở đợc hoàn thiện bằng cách xác định hay phân định rõ các
giao diện chính của một hệ và làm cho nó tơng thích với các nhà phát triển
phần mềm (hay các giao diện chính là phổ dụng).
Tính mở của Hệ phân tán dựa trên việc cung cấp cơ chế truyền thông giữa
các tiến trình và công khai các giao diện dùng để truy nhập các tài nguyên
chung.
3. Khả năng song song.
Hệ phân tán hoạt động trên một mạng truyền thông có nhiều máy tính,
mỗi máy tính có thể có một hay nhiều CPU. Trong cùng một thời điểm nếu có
N tiến trình cùng tồn tại, ta nói chúng đợc thực hiện đồng thời. Việc thực
hiện các tiến trình theo cơ chế phân chia thời gian (một CPU) hay song song
(nhiều CPU).
Khả năng làm việc song song trong Hệ phân tán đợc thực hiện do hai tình
huống sau:
- Nhiều ngời sử dụng đồng thời đa ra các lệnh hay tơng tác với các
chơng trình ứng dụng.
- Nhiều tiến trình Server chạy đồng thời, mỗi tiến trình đáp ứng yêu cầu từ

các tiến trình Client.
4. Khả năng mở rộng.
Hệ phân tán có khả năng hoạt động tốt và hiệu quả ở nhiền mức khác
nhau. Một Hệ phân tán nhỏ nhất có thể hoạt động chỉ cần hai trạm làm việc và
Các công nghệ sử dụng trong CSDL phân tán

T
rang 9
một File Server. Các hệ lớn hơn thì gồm có hàng nghìn máy, nhiều File Server,
Printer Server.
Khả năng mở rộng của một hệ phân tán đặc trng bởi tính không thay đổi
phần mềm hệ thống và phần mềm ứng dụng khi hệ đợc mở rộng. Điều này
chỉ đạt ở mức độ nào đó đối với các Hệ phân tán hiện tại. Yêu cầu cho việc mở
rộng không chỉ là sự mở rộng về phần cứng hay về mạng mà nó trải rộng trên
tất cả các khía cạnh khi thiết kế hệ phân tán. Một ví dụ đơn giản là tần suất sử
dụng một file lớn tơng đơng với việc tăng thêm số ngời sử dụng trên
mạng. Để tránh tình trạng tắc nghẽn xảy ra khi chỉ có một Server đáp ứng các
yêu cầu truy nhập file đó, ngời ta nhân bản file đó trên một vài Server và hệ
thống đợc thiết kế sao cho việc thêm Server dễ dàng. Một số giải pháp khác
là sử dụng Cache và các bản sao dữ liệu.
5. Khả năng chịu lỗi.
Việc thiết kế khả năng chịu lỗi của các hệ thống máy tính dựa trên hai giải
pháp sau:
- Dùng khả năng thay thế để đảm bảo sự hoạt động liên tục và hiệu quả.
- Dùng các chơng trình phục hồi dữ liệu, thông tin khi xảy ra sự cố.
Để xây dựng một hệ thống có thể khắc phục sự cố theo cách thứ nhất thì
ngời ta nối hai máy tính với nhau để thực hiện một chơng trình, một trong
hai máy chạy ở chế độ Standby (không tải hay chờ). Giải pháp này khá tốn
kém vì phải nhân đôi phân cứng của hệ thống. Một giải pháp để giảm phí tổn
là các Server riêng lẻ đợc cung cấp các ứng dụng quan trọng để có thể thay

thế nhau khi có sự cố xuất hiện. Khi không có sự cố các Server hoạt động bình
thờng (nghĩa là vẫn phục vụ các yêu cầu từ Client). Khi có sự cố trên một
Server nào đó, các ứng dụng Client tự chuyển hớng sang các Server còn lại.
Với cách thứ hai thì các phần mềm phục hồi đợc thiết kế sao cho trạng
thái dữ liệu hiện thời (trạng thái trớc khi xảy ra sự cố) có thể đợc khôi phục
khi lỗi đợc phát hiện.
Các hệ phân tán cung cấp khả năng sẵn sàng cao để đối phó với các sai
hỏng phần cứng. Khả năng sẵn sàng của hệ thống đợc đo bằng tỷ lệ thời gian
mà hệ thống sẵn sàng làm việc so với thời gian có sự cố. Khi một máy trên
mạng bị sai hỏng thì chỉ có công việc liên quan đến các thành phần sai hỏng
Các công nghệ sử dụng trong CSDL phân tán

T
rang 10
bị ảnh hởng. Ngời sử dụng có thể chuyển đến một trạm khác nếu máy họ
đang sử dụng bị hỏng, một tiến trình Server có thể đợc khởi động lại trên một
máy khác.
6. Tính trong suốt.
Tính trong suốt của hệ phân tán đợc hiểu nh là sự che khuất đi các thành
phần riêng biệt của hệ đối với ngời sử dụng và những ngời lập trình ứng
dụng. Ngời sử dụng có quyền truy cập đến dữ liệu nằm tại bất cứ vị trí nào.
Các thao tác để lấy hoặc cập nhật dữ liệu tại một điểm dữ liệu ở xa đợc tự
động thực hiện bởi hệ thống tại điểm đa ra yêu cầu. Ngời sử dụng không
cần biết đến sự phân tán của tất cả dữ liệu trên mạng dờng nh nằm ở máy
tính cục bộ của ngời sử dụng.
III. Các lí do sử dụng CSDL phân tán.
Tuy việc quản trị một hệ thống CSDL phân tán gặp nhiều khó khăn hơn so
với hệ CSDL tập trung nhng xu hớng xây dựng các hệ CSDL phân tán ngày
càng phát triển và có nhiều ứng dụng trong thực tế vì các nguyên nhân sau:
1. Xuất phát từ chính yêu cầu thực tế về tổ chức và kinh tế.

Trên thực tế nhiều tổ chức là không tập trung, dữ liệu ngày càng lớn và
phục vụ cho đa ngời dùng nằm phân tán vì vậy CSDL phân tán là con đờng
thích hợp với cấu trúc tự nhiên của các tổ chức đó. Đây là một trong các yếu
tố quan trọng thúc đẩy việc phát triển CSDL phân tán.
Một ví dụ minh hoạ cho vấn đề này là hệ thống bán vé máy bay thống nhất
trên toàn thế giới. Mỗi hãng hàng không có một hệ CSDL riêng, có sự quản lý
riêng và không thể có lý do nào để CSDL này tập trung ở một chỗ đợc. Tuy
vậy các hãng hàng không lại có quan hệ với nhau trong việc bán vé hành
khách cho những tuyến đờng thuộc phạm vi quản lý của nhiều hãng. Do vậy
hệ thống dữ liệu về chuyến bay của các hãng hàng không chính là một hệ
CSDL phân tán đợc quản lý thống nhất tại trung tâm điều khiển bay đặt tại
một địa điểm nào đó.
2. Sự liên kết các CSDL đang tồn tại.
CSDL phân tán là giải pháp tự nhiên khi có các CSDL đang tồn tại và sự
cần thiết thực hiện xây dựng một ứng dụng toàn cục. Trong trờng hợp này
Các công nghệ sử dụng trong CSDL phân tán

T
rang 11
CSDL phân tán đợc tạo từ dới lên (bottom-up) từ các CSDL đã tồn tại trớc
đó. Tiến trình này có thể đòi hỏi cấu trúc lại cục bộ ở một mức độ nhất định.
Dù sao, những sửa đổi này là nhỏ hơn rất nhiều so với việc tạo lập một CSDL
tập trung hoàn toàn mới.
3. Sự phát triển mở rộng.
Các tổ chức có thể mở rộng bằng cách thêm các đơn vị mới, vừa có tính tự
trị vừa có quan hệ tơng đối với các tổ chức khác. Khi đó CSDL phân tán hỗ
trợ một sự mở rộng uyển chuyển với một mức độ ảnh hởng tối thiểu tới các
đơn vị đang tồn tại.
Với CSDL tập trung, cũng có thể khởi tạo kích thớc lớn cho việc mở rộng
trong tơng lai. Điều đó rất khó tiên định và chịu một phí tổn lớn, mặt khác sự

mở rộng này có ảnh hởng lớn không chỉ trên các ứng dụng mới mà còn trên
các ứng dụng đang tồn tại.
4. Làm giảm tổng chi phí tìm kiếm.
Việc phân tán dữ liệu cho phép các nhóm làm việc cục bộ có thể kiểm soát
toàn bộ dữ liệu của họ. Tuy vậy tại cùng thời điểm, ngời sử dụng có thể truy
cập đến dữ liệu ở xa nếu cần thiết. Tại các vị trí cục bộ, thiết bị phần cứng có
thể đợc chọn sao cho phù hợp với công việc xử lý dữ liệu cục bộ tại điểm đó.
5. Trả lời truy vấn nhanh.
Dựa trên cách thức dữ liệu đợc phân tán, hầu hết các yêu cầu truy vấn dữ
liệu từ ngời dùng tại bất kỳ vị trí cục bộ nào đều đợc thoả mãn bởi dữ liệu
ngay tại thời điểm đó. Điều này làm tăng đáng kể tiến trình xử lý các yêu cầu
truy vấn dữ liệu của ngời dùng. Hệ thống CSDL phân tán còn cho phép các
bảng truy vấn phức tạp có thể chia thành nhiều bảng nhỏ để có thể thực hiện
tiến trình xử lý song song cùng lúc trên nhiều vị trí cục bộ khác nhau. Kỹ
thuật này cũng nâng cao tốc độ xử lý dữ liệu trên hệ thống.
6. Độ tin cậy và khả năng sử dụng đợc nâng cao.
Khi hệ thống CSDL tập trung bị hỏng, toàn bộ CSDL trở nên vô dụng với
tất cả ngời sử dụng. Còn đối với hệ thống CSDL phân tán, nếu có một thành
phần nào đó của hệ thống bị hỏng, hệ thống vẫn có thể duy trì hoạt động tuy
nhiên cũng không thể hiệu quả nh khi nó còn hoàn hảo. Dù sao, việc thu
Các công nghệ sử dụng trong CSDL phân tán

T
rang 12
đợc mục đích này không phải không rắc rối và đòi hỏi sử dụng các kỹ thuật
vẫn cha đợc hiểu biết hoàn chỉnh. Khả năng xử lý tự trị của các vị trí khác
nhau tự nó không đảm bảo một tính tin cậy toàn bộ cao của hệ thống, nhng
nó đảm bảo một thuộc tính graceful degration. Nói một cách khác, sự cố trong
CSDL phân tán có thể thờng xuyên hơn một CSDL tập trung vì có số lợng
thành phần lớn hơn, nhng hậu quả của sự cố đợc hạn chế chỉ tới các ứng

dụng sử dụng dữ liệu của vị trí có sự cố, đổ vỡ hoàn toàn của hệ thống là điều
hiếm xảy ra.
7. Giá thành truyền thông thấp hơn.
Với CSDL phân tán, dữ liệu có thể đặt gần nơi nó đợc sử dụng nhiều
nhất. Đặc điểm này đã làm giảm chi phí chuyền tải dữ liệu rất lớn so với hệ
CSDL tập trung.
IV. Hạn chế của CSDL phân tán.
Hệ thống CSDL phân tán bên cạnh những u điểm nh trên cũng có những
mặt hạn chế nh sau:
- Giá thành và sự phức tạp của phần mềm: Các phần mềm sử dụng trong
môi trờng CSDL phân tán rất phức tạp, đặc biệt là phần mềm sử dụng cho
việc quản trị môi trờng CSDL phân tán.
- Khó khăn trong tiến trình kết nối các vị trí dữ liệu cục bộ: Các vị trí cục
bộ phải trao đổi thông điệp với nhau và thực hiện thêm các tính toán phức tạp
để đảm bảo sự kết nối đúng đắn giữa các vị trí đó.
- Sự toàn vẹn dữ liệu: Một sản phẩm mang nhiều tính phức tạp sẽ làm gia
tăng khả năng xáo trộn trong việc bảo đảm tính toàn vẹn dữ liệu.
- Tốc độ truy cập sẽ trở nên rất chậm: Nếu dữ liệu không đợc phân tán
theo đúng yêu cầu sử dụng hoặc các bảng truy vấn đợc thiết lập không đúng
đắn thì việc tìm kiếm và xử lý dữ liệu sẽ rất chậm.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 13
phần II
Các công nghệ sử dụng trong
hệ Cơ sở dữ liệu phân tán
I. Kiến trúc cơ bản của CSDL phân tán.
Tuy không là kiến trúc tờng minh cho tất cả các CSDL phân tán, nhng
kiến trúc dới đây thể hiện cách thức tổ chức chung của một CSDL phân tán:


Sơ đồ tổng thể
Sơ đồ định vị
Sơ đồ ánh xạ địa phơng 2
Sơ đồ ánh xạ địa phơng 1
DBMS của vị trí 1
DBMS của vị trí 2
CSDL địa phơng
tại vị trí 1
Các vị trí khác
: :
::
CSDL địa phơng
tại vị trí 2
Hình 1.II: Kiến trúc Hệ CSDL phân tán

1. Sơ đồ tổng thể.
Định nghĩa tất cả dữ liệu sẽ đợc lu trữ trong CSDL phân tán. Trong mô
hình quan hệ, sơ đồ tổng thể bao gồm định nghĩa của tập các quan hệ tổng thể.
2. Sơ đồ phân đoạn.
Mỗi quan hệ tổng thể có thể chia thành một vài phần tơng đối độc lập với
nhau đợc gọi là fragments (đoạn). Có nhiều cách khác nhau để thực hiện việc
phân chia này: Phân đoạn ngang, phân đoạn dọc, phân đoạn hỗn hợp sẽ đợc
trình bày trong các phần sau.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 14
3. Sơ đồ định vị:
Fragments (các đoạn) là các phần logic của quan hệ tổng thể đợc định vị

vật lý tại một hoặc nhiều vị trí trên mạng. Sơ đồ định vị định nghĩa đoạn định
vị tại từng vị trí. Lu ý rằng kiểu ánh xạ đợc định nghĩa trong sơ đồ định vị
quyết định CSDL phân tán là d thừa hay không.
4. Sơ đồ ánh xạ địa phơng:
Thực hiện ánh xạ các ảnh vật lý và các đối tợng đợc lu trữ tại một trạm
lên các CSDL địa phơng.
II. Thiết kế hệ thống CSDL phân tán
Thiết kế một hệ thống phân tán là việc sắp đặt dữ liệu và chơng trình tới
các trạm làm việc của mạng máy tính. Trong trờng hợp thiết kế DBMS
(Distibute database managment system) có hai vấn đề chính là:
- Sự phân bố dữ liệu của DBMS.
- Sự phân bố các chơng trình ứng dụng chạy trên nó.
Phần sau đây trình bày khái quát cách thức chung để thiết kế một hệ thống
CSDL phân tán.
1. Khung làm việc chung cho thiết kế hệ CSDL phân tán.
Từ sơ đồ kiến trúc của Hệ CSDL phân tán, ngời ta đa ra sơ đồ thiết kế
chung cho Hệ CSDL phân tán nh sau:
Thiết kế lợc đồ quan niệm: Mô tả toàn bộ dữ liệu sẽ đợc dùng trong ứng
dụng.
Thiết kế CSDL vật lí: Là quá trình thực hiện ánh xạ lợc đồ quan niệm vào
các vùng chứa và xác định cách thức truy nhập thích hợp cho chúng.
Thiết kế phân đoạn: Thực hiện việc phân chia dữ liệu thành các phần, kèm
theo cách thức truy nhập thích hợp.
Thiết kế sự phân phối các phần: Các đoạn dữ liệu đợc đa vào các vị trí
lu trữ thích hợp với yêu cầu hoạt động thực tế của hệ thống.
Ví dụ: Ta không thể đa dữ liệu về Cán bộ cho phòng quản lý Sinh viên và
ngợc lại.
Các công nghệ sử dụng trong CSDL phân tán

T

rang 15

Thiết kế các lợc đồ quan niệm
Thiết kế CSDL vật lí
Thiết kế phân đoạn
Thiết kế sự phân phối các thành phần
Hình 2.II: Sơ đồ thiết kế chung cho CSDL phân tán

2. Các phơng pháp thiết kế hệ CSDL phân tán.
Theo khung làm việc chung cho thiết kế hệ CSDL phân tán, đến nay có hai
phơng pháp thiết kế điển hình là: TOP-DOWN và BOTTOM-UP.
A. Phơng pháp TOP-DOWN:
TOP-DOWN: Là phơng pháp thiết kế từ trên xuống và đợc chia ra làm
nhiều giai đoạn, mỗi giai đoạn đều có nhiệm vụ riêng, giai đoạn này nối tiếp
giai đoạn kia, đầu ra của giai đoạn trớc đợc làm đầu vào cho giai đoạn kế
tiếp sau nó.
Sơ đồ thiết kế CSDL phân tán theo mô hình TOP_DOWN (Hình 3.II):
Các định nghĩa: Định nghĩa môi trờng hệ thống, dữ liệu và các tiến trình
cho tất cả những khả năng về dữ liệu của ngời sử dụng.
Tài liệu về những điều kiện cần thiết nằm trong hai tham số: Thiết kế
View và Thiết kế mức quan niệm.
Thiết kế View: Hoạt động phân phối với sự định nghĩa những cái chung
cho ngời sử dụng.
Thiết kế mức quan niệm: Là một tiến trình kiểm tra và xác định rõ hai
nhóm quan hệ Phân tích thực thể và Phân tích chức năng:
a. Phân tích thực thể: Liên quan tới sự xác định các loại thực thể, các thuộc
tính và các mối quan hệ giữa chúng.
b. Phân tích chức năng: Xác định các chức năng cơ sở.
Các công nghệ sử dụng trong CSDL phân tán


T
rang 16
Lợc đồ tổng thể mức quan niệm, mẫu truy nhập thông tin và External
Schema Definition: Tập hợp kết quả của các bớc trên, sắp xếp các thực thể
trên các vị trí của hệ thống phân tán và chuyển tới bớc tiếp theo.

User Input
Các
định nghĩa
System Requirements
(Objectives)
Thiết kế mức
quan niệm
Thiết kế
view
Lợc đồ tổng thể
mức quan niệm
Truy nhập
thông tin
External Schema
Definitions
Thiết kế
phân tán
Lợc đồ logic
mức quan niệm
Thiết kế
vật lý
Lợc đồ
vật lý
Bộ

kiểm tra
Trao đổiTrao đổi
View Integration
User
input
Hình 3.II: Sơ đồ thiết kế CSDL phân tán theo mô hình TOP-DOWN

Thiết kế phân tán: Thiết kế phân tán bao gồm hai phần phân đoạn và định
vị CSDL.
Lợc đồ mức quan niệm: Tạo ra các lợc đồ CSDL mức quan niệm.
Thiết kế vật lý: Thực hiện ánh xạ các lợc đồ CSDL mức quan niệm ra các
đơn vị lu trữ vật lí có giá trị tại các vị trí tơng ứng.
Bộ kiểm tra: Kiểm tra các giai đoạn của quá trình thiết kế CSDL. Nếu một
giai đoạn bị sai sẽ tiến hành thiết kế lại.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 17
Phơng pháp TOP-DOWN là có hiệu quả khi một hệ thống CSDL đợc
thiết kế từ đầu. Tuy nhiên trong thực tế có một số hệ CSDL đã tồn tại thì
nhiệm vụ của ngời thiết kế là liên kết chúng lại thành một thể thống nhât
trong CSDL mới, khi đó ngời thiết kế thờng sử dụng phơng pháp
BOTTOM_UP.
B. Phơng pháp BOTTOM-UP.
BOTTOM-UP: Là phơng pháp ngợc lại với phơng pháp TOP_DOWN.
Trong thiết kế CSDL phân tán BOTTOM-UP sẽ bắt đầu thiết kế những lợc
đồ ở mức quan niệm sao cho chúng độc lập với nhau. Sau đó chúng đợc kết
hợp lại trong một sơ đồ tổng thể ( Global Conceptual schema ).
3. Thiết kế CSDL phân đoạn.
Thiết kế phân đoạn là một trong những đặc trng cơ bản trong thiết kế

CSDL phân tán. Mục đích của thiết kế phân đoạn là phân chia CSDL tổng thể
thành các phần không giao nhau, mỗi phần đó đợc gọi là một đoạn.
a. Các điều kiện cho thiết kế phân đoạn.
Phơng pháp thiết kế phân đoạn đúng đắn phải thoả mãn ba điều kiện ràng
buộc sau:
- Tính đầy đủ: Toàn bộ dữ liệu thuộc quan hệ tổng thể phải thuộc các đoạn
quan hệ và ngợc lại.
- Tính tháo rời đợc: Các đoạn phải tối thiểu hoá sự giao nhau.
- Xây dựng lại: CSDL của quan hệ tổng thể có thể xây dựng lại từ các
đoạn.
b. Các phơng pháp phân đoạn.
Có hai phơng pháp chính là: Phân đoạn ngang và phân đoạn dọc. Phân
đoạn hỗn hợp là phơng pháp kết hợp của hai phơng pháp trên.
+ Phân đoạn ngang:
Phân đoạn ngang cơ sở: Phân đoạn ngang cơ sở tập trung ở các hàng của
bảng. Quan hệ tổng thể sẽ đợc chia thành các quan hệ con có cùng tập thuộc
tính nhng số lợng các hàng là nhỏ hơn.
Chú ý là mỗi hàng của quan hệ thuộc một và chỉ một đoạn.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 18
Ví dụ: Cho quan hệ KHACH_HANG có cấu trúc nh sau:
KHACH_HANG:
MAKH TENKH DIACHI CHINHANH
J1 Jonh 21 Ly Nam De SaiGon
J2 Mary 16 Tran Phu ChoLon
J3 Bill 106 Ton Duc Thang SaiGon
J4 Clark 12 Ba Trieu ChoLon


Thực hiện phân đoạn ngang cơ sở thành hai quan hệ KHACH_HANG1 và
KHACH_HANG2:
KHACH_HANG1:
MAKH TENKH DIACHI CHINHANH
J1 Jonh 21 Ly Nam De SaiGon
J3 Bill 106 Ton Duc Thang SaiGon
KHACH_HANG2:
MAKH TENKH DIACHI CHINHANH
J2 Mary 16 Tran Phu ChoLon
J4 Clark 12 Ba Trieu ChoLon

Nh vậy thực chất của quá trình phân đoạn ngang là thực hiện câu lệnh
SELECT với các điều kiện cụ thể. Trong ví dụ trên có hai câu lệnh SELECT
đợc thực hiện là:
KHACH_HANG1:
Create table KHACH_HANG1 as
Select MAKH, TENKH, DIACHI, CHINHANH from KHACH_HANG
where CHINHANH = 'SAIGON";
KHACH_HANG2:
Create table KHACH_HANG2 as
Select MAKH, TENKH, DIACHI, CHINHANH from KHACH_HANG
where CHINHANH = 'CHOLON";

Các công nghệ sử dụng trong CSDL phân tán

T
rang 19
Phân đoạn ngang suy diễn: Bắt nguồn từ kết quả của quá trình phân
đoạn ngang cơ sở, phân đoạn ngang suy diễn đợc sử dụng để kết nối các
đoạn, tạo ra CSDL thích hợp cho các ứng dụng. Quá trình kết nối yêu cầu phải

có thuộc tính kết nối.
Ví dụ:
Cho quan hệ DIENTHOAI có cấu trúc nh sau:
DIENTHOAI:
MAKH DIENTHOAI
J1 8.243.654
J2 9.564.734
J3 8.777.253
J4 8.372.564

Thực hiện phân đoạn ngang suy diễn giữa các quan hệ: KHACH_HANG1,
KHACH_HANG2 và DIENTHOAI với trờng liên kết là MAKH kết quả cho
ta hai quan hệ sau:
KH-DT1:
MAKH TENKH DIACHI CHINHANH DIENTHOAI
J1 Jonh 21 Ly Nam De SaiGon 8.243.654
J3 Bill 106 Ton Duc Thang SaiGon 8.777.253
KH-DT2:
MAKH TENKH DIACHI CHINHANH DIENTHOAI
J2 Mary 16 Tran Phu ChoLon 9.564.734
J4 Clark 12 Ba Trieu ChoLon 8.372.564

Nh vậy thực chất của quá trình phân đoạn ngang suy diễn là thực hiện
phép nửa kết nối từ kết quả của quá trình phân đoạn ngang cơ sở cùng quan hệ
mà ta cần kết nối. Trong ví dụ trên quan hệ KH_DT1 và KH_DT2 là kết quả
của hai phép thực hiện sau:
KH-DT1:
Create table KH-DT1 as
Các công nghệ sử dụng trong CSDL phân tán


T
rang 20
select KHACH-HANG1.MAKH, TENKH, DIACHI, CHINHANH,
DIENTHOAI from KHACH_HANG1,DIENTHOAI
where KHACH_HANG1.MAKH = DIENTHOAI.MAKH;
KH-DT2:
Create table KH-DT2 as
select KHACH-HANG2.MAKH, TENKH, DIACHI, CHINHANH,
DIENTHOAI from KHACH_HANG2,DIENTHOAI
where KHACH_HANG2.MAKH = DIENTHOAI.MAKH;

+ Phân đoạn dọc: Phân đoạn tập chung ở các thuộc tính, trong các thuộc
tính của quan hệ chọn ra thuộc tính kết nối. Kết quả thu đợc là một tập các
quan hệ con, chúng có thể kết nối lại tạo thành quan hệ tổng thể.
Ví dụ: Thực hiện phân đoạn dọc với thuộc tính liên kết là MAKH từ quan
hệ KH-DT2, ta thu đợc hai quan hệ QH1 và QH2 nh sau:
QH1:
MAKH TENKH DIACHI
J2 Mary 16 Tran Phu
J4 Clark 12 Ba Trieu
QH2:
MAKH CHINHANH DIENTHOAI
J2 ChoLon 9.564.734
J4 ChoLon 8.372.564

Quá trình phân đoạn dọc thực chất là thực hiện phép chiếu (Project) các
thuộc tính của quan hệ tổng thể thành các quan hệ con. Trong ví dụ trên có hai
câu lệnh đợc thực hiện là:
QH1: Create table QH1
as select MAKH, TENKH, DIACHI from KH-DT2;

QH2: Create table QH2
as select MAKH, CHINHANH,DIENTHOAI from KH-DT2;
Các công nghệ sử dụng trong CSDL phân tán

T
rang 21
+ Phân đoạn hỗn hợp:
Phân đoạn hỗn hợp là sự kết hợp giữa phân đoạn ngang và phân đoạn dọc.
Có hai phơng pháp phân đoạn hỗn hợp là:
1. Thực hiện phân đoạn ngang trớc sau đó phân đoạn dọc.
2. Thực hiện phân đoạn dọc trớc sau đó phân đoạn ngang.
Quá trình đợc thực hiện tuần tự, kết quả thu đợc từ phép phân đoạn cuối
cùng
4. Kết luận.
Các vấn đề đợc trình bày trên đây chỉ là những khái niệm chung nhất để
thiết kế một Hệ CSDL phân tán, tuy nhiên việc thiết kế một Hệ CSDL phân
tán trên thực tế còn phải phụ thuộc rất nhiều vào các điều kiện khách quan
khác của nơi cần các ứng dụng phân tán nh: Thực trạng mô hình mạng, khả
năng đầu t cho dự án , đó là những điều kiện góp phần rất lớn nâng cao
hiệu quả của các ứng dụng phân tán. Vấn đề này sẽ đợc trình bày trong phần
về các mô hình phân tán CSDL .
III. GIới thiệu về giao tác.
1. Định nghĩa.
Giao tác là một dãy các hành động đợc thực hiện bởi một chơng trình
ứng dụng hay bởi một ngời sử dụng, mà hoặc phải đợc thực hiện hoàn toàn
hoặc là không đợc thực hiện một hành động nào.
Khái niệm giao tác đợc sử dụng trong lĩnh vực CSDL nh đơn vị cơ bản
của tính toán nhất quán và đáng tin cậy.
Trong quá trình thực hiện giao tác CSDL có thể tạm thời không nhất quán
nhng CSDL phải nhất quán khi giao tác kết thúc. Tính tin cậy dựa vào hai

khả năng sau:
- Khả năng phục hồi: Hệ thống phục hồi nhanh khi có nhiều kiểu lỗi xảy
ra. Khi các lỗi xảy ra, hệ thống có thể chịu đựng đợc và tiếp tục cung cấp các
dịch vụ.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 22
- Khôi phục: Hệ thống đạt đợc trạng thái nhất quán sẽ trở về trạng thái
nhất quán trớc đó hoặc tiếp tới trạng thái nhất quán mới sau khi xảy ra lỗi.
Nhất quán giao tác liên quan tới sự thực hiện các truy nhập trùng nhau.
Việc quản lý giao tác tiếp xúc với các vấn đề : Giữ cho CSDL trong trạng
thái nhất quán khi xảy ra các truy nhập trùng nhau và các lỗi.
2. Các điều kiện kết thúc của giao tác.
Giao tác kết thúc khi toàn bộ công việc của nó thành công, hay nói một
cách khác là giao tác chuyển giao (Commit), ngợc lại nếu một giao tác dừng
lại trong khi cha hoàn thành các công việc của nó chúng ta nói giao tác bị
loại bỏ (Abort).
Giao tác bị loại bỏ vì một số nguyên nhân sau:
- Một điều kiện không thoả mãn không cho giao tác hoàn thành các công
việc của nó.
- DBMS loại bỏ giao tác, ví dụ khoá chết hoặc các điều kiện khác.
Khi một giao tác bị loại bỏ, quá trình thực hiện của nó bị dừng lại và toàn
bộ công việc đã làm đợc loại bỏ để đa CSDL về trạng thái trớc khi thực
hiện giao tác, điều này cũng đợc hiểu nh Rollback.
Cũng có trờng hợp ngời sử dụng do một số thông tin đầu vào bị sai, một
số điều kiện không đợc thoả mãn và có thể do yêu cầu của hệ thống nh quá
tải, tắc nghẽn.
3. Các thuộc tính của giao tác.
Tính nguyên tố:

Tính nguyên tố của giao tác quy định hoặc là tất cả các hành động, hoặc là
không một hành động nào của giao tác đợc thực hiện.
Nếu một giao tác bị ngắt bởi một sự cố nào đó thì kết quả các lệnh thực
hiện giao tác đó bị loại bỏ.
Nhất quán:
Có bốn mức nhất quán theo trình tự từ cao xuống thấp nh sau:
Mức 3: Giao tác T nhìn mức nhất quán 3 nếu:
- T không ghi đè dữ liệu nháp của giao tác khác
Các công nghệ sử dụng trong CSDL phân tán

T
rang 23
- T không chuyển giao bất cứ một việc ghi nào đến khi nó hoàn thành
hoàn toàn việc ghi của nó.
- T không đọc dữ liệu nháp từ các giao tác khác.
- Các giao tác khác không nháp vào bất cứ dữ liệu nào đọc bởi T trớc khi
T hoàn thành.
Mức 2: Giao tác T nhìn mức nhất quán 2 nếu:
- T không ghi đè lên dữ liệu nháp của giao tác khác.
- T không chuyển giao bất kỳ việc ghi nào trớc EOT.
- T không đọc dữ liệu nháp từ giao tác khác.
Mức 1: Giao tác T nhìn mức nhất quán 1 nếu:
- T không ghi đè lên dữ liệu nháp của giao tác khác.
- T không chuyển giao bất kỳ việc ghi nào trớc EOT.
Mức 0: Giao tác T nhìn mức nhất quán 0 nếu:
- T không ghi đè lên dữ liệu nháp của giao tác khác.
Tính trình tự:
Nếu nhiều giao tác đợc thực hiện đồng thời thì kết quả của mỗi giao tác
đó đợc thực hiện một cách tuần tự. Các hành động đảm bảo tính trình tự của
các giao tác đợc gọi là điều khiển tơng tranh.

Tính biệt lập:
Một giao tác khi đang đợc thực hiện thì các giao tác khác không thể sử
dụng các kết quả trung gian của các giao tác này.
Tính bền vững:
Mỗi khi giao tác đợc chuyển giao thì hệ thống phải đảm bảo chắc chắn
là kết quả sẽ không bị ảnh hởng bởi các lỗi đến sau.
3. Các loại giao tác.
Giao tác đợc phân loại theo một số tiêu chuẩn sau:
Phân loại theo vùng ứng dụng:
Giao tác thông thờng: Cập nhật dữ liệu trên một vị trí.
Các công nghệ sử dụng trong CSDL phân tán

T
rang 24
Giao tác phân tán: Thao tác trên dữ liệu phân tán.
Phân loại theo khoảng thời gian làm việc:
Giao tác trực tuyến: Thời gian trả lời rất ngắn.
Giao tác gói: Thời gian trả lời dài.
Giao tác đàm thoại: Thực hiện bởi tác động qua lại với ngời sử dụng.
4. Kiến trúc của giao tác.
+ Bộ quản lý giao tác: Thực hiện các thao tác CSDL thay cho ứng dụng.
+ Bộ lập lịch (SC): Thực hiện một thuật toán điều khiển tơng tranh để
đồng bộ các truy nhập vào CSDL.
Tham dự việc quản lý giao tác là hệ quản lý phục hồi giao tác địa phơng
trên mỗi vị trí.
+ 5 lệnh của một giao tác:
Begin_Transaction, Read, Write, Commit và Abort.

Bộ quản lý
giao tác (TM)

Bộ lập lịch (SC)
Begin_transaction,
Read, Write,
Commit, Abort
Các kết quả
Các TM khác
Các SC khác
Các bộ xử l
ý
d

liệu khác
Các yêu cầu
lập lịch/huỷ lịch
Bộ giám sát thực
hiện phân tán
Tới các b

xử l
ý
dữ li

u
Hình 4.II: Mô hình chi tiết bộ giám sát thực hiện phân tán

IV. Điều khiển tơng tranh phân tán.
Điều khiển tơng tranh liên quan tới tính độc lập và nhất quán của giao tác
với mục tiêu chính là đảm bảo tính nhất quán của CSDL.
Các công nghệ sử dụng trong CSDL phân tán


T
rang 25
Các thuật toán điều khiển tơng tranh chia làm hai loại: Pessimistic và
Optimistic.
1. Khái niệm xung đột và lịch đầy đủ.
Quy ớc: O
ij
(x) là thao tác Oj của giao tác Ti trên mục dữ liệu x.
Oj={Read, Write}. O
kl
(x) cũng đợc quy ớc tơng tự.
Xung đột: O
ij
(x) và O
kl
(x) đợc gọi là xung đột nếu tối thiểu một trong hai
thao tác là viết (W),và không nhất thiết i phải khác k.
Lịch đầy đủ: Định nghĩa thứ tự thực hiện của các thao tác.
2. Các cơ chế điều khiển tơng tranh.
a. Cơ chế Optimistic:
áp dụng cơ chế này khi số giao tác xung đột không nhiều lắm.
Cơ chế Optimistic qua định: Trong khi một giao tác đang thực hiện, nếu
xuất hiện xung đột cơ chế này sẽ đợi cho giao tác kết thúc sau đó mới xử lý
các xung đột (Trễ việc đồng bộ các giao tác đến khi kết thúc chúng).
b. Cơ chế Pessimistic:
Cơ chế này đợc áp dụng khi môi trờng có nhiều giao tác xung đột.
Cơ chế Pessimistic thực hiện xử lý các xung đột ngay sau khi chúng đợc
phát hiện ( đồng bộ việc thực hiện các giao tác tơng tranh sớm trong chu kỳ
thực hiện chúng ).
c. Cơ chế dựa vào khoá:

Việc đồng bộ các giao tác đạt đợc bằng cách dùng khoá trên từng phần
của CSDL. Kích thớc của các phần CSDL đợc khoá này là một vấn đề quan
trọng cần phải đợc tính toán hợp lý. Tuy nhiên, chúng ta sẽ bỏ qua điều này
và coi phần đợc chọn là một đơn vị khoá.
Có các kiểu khoá nh sau:
+ Khoá tập trung: Trên mạng có một vị trí đợc thiết kế để lu giữ các
bảng khoá cho toàn bộ CSDL. Vị trí đó có nhiệm vụ nhiệm vụ phân phối
khoá cho các giao tác và chỉ các giao tác có khoá mới đợc truy nhập vào
CSDL.

×