Chương 1: Tổng quan về hệ phân tán Giới thiệu tổng quan về hệ phân tán, hệ cơ sở dữ liệu phân tán, mục tiêu, nguyên tắc xây dựng hệ phân tán. Đặc điểm đăng ký, yêu cầu từ xa và mục đích quản lý hệ thống nhiều bản sao. Chương 2: Bài toán đăng ký từ xa qua mạng với hệ thống đa server Phát biểu bài toán, mô hình ứng dụng hệ thống, kỹ thuật gắn bó dữ liệu và kỹ thuật giải quyết bài toán. Chương 3: Chương trình demo Hướng dẫn cách cài đặt, xây dựng chương trình client, server và hình ảnh mô phỏng kết quả chương trình.
Trang 3 NỘI DUNG Chuong 1: TONG QUAN VE HE PHAN TAN 1. Hé phan tan - Hệ phân tán là hệ xử lý thông tin gồm nhiều bộ xử lý/vi xử lý, nằm ở các vị trí khác nhau. Hệ điều hành và kiểu tổ chức máy tính khác nhau và được nối với nhau qua đường truyền. Hoạt động thống nhất theo mục tiêu chung.
- Hệ phân tán gồm một nhớm các máy tính được kết nối với nhau thông qua mạng máy tính, cùng với một tập phần mềm hệ thống được thiết kế nhằm điều khiển liên kết các tài nguyên, các chức năng và dữ liệu trên mạng. DATABASE | DATABASE Client Client C DATABASE Server \ | DATABASE ¬=—— D Server * : | DATABASE DATABASE DATABASE B Server Server Server Hinh 1. 1: Kién tric hé phan tan - Trong dé: + Mạng máy tính là các loại (A, B, D), các server kết nối mạng trực tiếp (D). + Cac may Client để truy cập qua mạng con (A, B).
+ Các client truy cập trực tiếp (C). + Hệ thống viễn thông với các loại đường truyền khác nhau với kiến trúc phân tang. Cho phép cập nhật thường xuyên, trả lời được các yêu cầu từ xa, cho phép đăng ký từ xa, thực hiện hai phép cơ bản dọc và ghi một các an toàn. Đảm bảo kết nối thường xuyên qua hệ viễn thông với độ tin cậy cao.
- Một số lớp hệ phân tán: Trang 4 Ứng dụng thương mại phân tán: Hệ thống đặt chế máy bay, đặt hàng qua mạng, ngân hàng điện tủ; Bảo mật cao. Giá trị thông tím lớn, trả lời thời gian thực, truy cập từ xa, khả năng mở rộng, sẵn sàng. Giao diện giữa NSD, chương trình ứng dụng và hệ thống: Có tính models, khả năng mở rộng, nhận dạng người sử dụng. Ứng dụng mạng diện rộng: Thư điện tử, web, hạn chế về băng thông, số lượng về truy cập lớn; Hệ thống định danh, phục vụ số truy cập thay đổi.
Ứng dụng thông tin đa phương tiện và hội nghị: Đào tạo từ xa, hội thảo trực tuyến, thực tại ảo; Truyền thông tin thời gian thực: tiếng nói, hình ảnh, văn bản; Đòi hỏi hệ thống truyền tin tốc độ cao, độ trễ nhỏ, băng thông lớn. Hệ thông truyền thông Hình 1. 2: Các thực thể của hệ tin học phân tán Phần mềm phân tán cung cấp công cụ thích hợp cho phép các máy tính phối hợp các hoạt động với nhau, cùng chia sẻ tài nguyên phần cứng. Ngoài hệ thống phần cứng, phần mềm, dữ liệu thì hệ phân tán còn có hệ thống truyền thông.
Song điều cơ bản đề phân biệt hệ tin học phân tán với mạng máy tính và hệ điều hành mạng chính là nguyên tắc xây dựng hệ. Nguyên tắc xây dựng hệ phân tán Bảng 1. 1: Nguyên tắc xây dựng hệ phân tán STT | Tên gọi Thuy ét minh 1 Chia sé tai | Thực tế phát triển mạng máy tính đặt ra một vấn đề lớn là nguyên cần dùng chung tài nguyên. Một tiến trình trên một trạm nào đó có thể cung cấp tài nguyên dùng chung ở một trạm khác.
Trang 5 2 Liên lạc Khi các hệ thông đã được mắc nôi với nhau, các thực thê trong hệ có thể trao đổi thông tin với nhau. 3 Tin cay Một trạm trong hệ bị sự cô không làm cho toàn hệ ảnh hưởng, mà ngược lại, công việc đó được phân cho các trạm khác đảm nhận. Ngoài ra, trạm bị sự cố có thể tự động phục hỏi lại trạng thái ban đầu trước khi có sự cố hay trạng thái ban đầu của nó. 4 Tăng tốc Đây là khái niệm mới về phân tán tải.
Một tính toán lớn nào đó, nêu chỉ sử dụng một trạm thì thời gian cho kết quả lâu. Tính toán này được chia nhỏ và thực hiện song song trên các trạm. Điều này cũng cần thiết đối với các trạm quá tải. Mục tiêu của hệ phân tán 1.
Kết nỗi người sử dụng với tài nguyên Giải quyết bài toán chia sẻ tài nguyên trong hệ thống (resource sharing). Việc chia xẻ tài nguyên trên hệ phân tán - trong đó 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ả thì 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ể truy nhập, cập nhật được một cách tin cậy và nhất quán. Quản lý tài nguyên ở đây bao gồm lập kế hoạch và dự phòng, đặt tên các lớp tài nguyên, cho phép tài nguyên được truy cậ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: 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. Wait for result Giới ——————-- Request Provide service Time ——*> Hình 1.
3: Mô hình tương tác chung giữa một client với một server 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 m 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ị ding chung nay 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ý im. 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 đó (n, 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ẽ 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: Trang 7 - Đườ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 va 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) nhưng 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 đó lưu 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ạ (GU) 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ụ tai 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, trong tự như trong hệ thiết kế đơn thể.
Tính trong suốt Ấn giấu sự rời rạc và những nhược điểm nếu có của hệ phân tán đối với người sử dụng (end-user) và những nhà lập trình ứng dụng (application programmer). Theo tiêu chuẩn ISO cho hệ phân tan ISO / IS / 10746 tén là "Open distributed processing reference model" 1995 da cu thé héa tám dạng trong suốt: Trang 8 Trong suốt truy cập (Access transparency): che giấu sự khác biệt về cách biểu diễn và cách truy cập tài nguyên. Trong suốt về vị trí (Location transparency): che giấu vị trí của tài nguyên. Hai dạng trong suốt vừa trình bày được gọi chung là trong suốt mạng (network transparency).
Trong suốt di trú (Migration transparency): che giấu khả năng chuyén vị trí của tài nguy ên.