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

Tổng quan về hệ CSDL phân tán

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 (116.61 KB, 8 trang )

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

Trang 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

Trang 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

Trang 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

Trang 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

Trang 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

×