Chương I: TỔNG QUAN HỆ TIN HỌC PHÂN TÁN 1.1 Khái niệm Hệ tin học phân tán hay gọi tắt là hệ phân tán là một hệ thống xử lý thông tin bao gồm nhiều bộ xử lý hoặc các bộ vi xử lý được đặt ở xa tại các vị trí khác nhau và được liên kết với nhau thông qua các phương tiện viễn thông dưới sự thống nhất của hệ điều hành. Server Servers Server Server Hın ̀ h 1: Hệ tin học phân tán Hệ tin học phân tán là một hệ thống không chia sẻ bộ nhớ và đồng hồ. Các tính toán học phân tán có thể được thực hiện trên nhiều bộ xử lý hay vi xử lý khác nhau. Do đó hệ thống tin học phân tán đòi hỏi hệ thống của mình phải trang bị bộ nhớ cục bộ.
Các bộ xử lý trao đổi thông tin thông qua các đường truyền khác nhau như cáp mạng chuyên dụng, bus trao đổi, đường điện thoại, cáp quang hoặc có thể là sóng. Không như các máy tính đơn lẻ, mạng máy tính là tập hợp các thiết bị đầu cuối được nối với nhau bởi hệ thống đường truyền, những đường truyền nối với các trạm rất xa nhau có thể là một mạng viễn thông. Các thiết bị đầu cuối của mạng máy tính rất đa dạng, bao gồm tập hợp các máy tính, các thiết bị chuyên dụng, các thiết bị truyền tin, các thiết bị nhận và hiển thị thông tin…Hệ thống mạng máy tính được điều khiển bằng hệ điều hành mạng. Hệ tin học này có thể là hệ tập trung hay là hệ phân tán.
Ưu điểm và hạn chế của hệ thống phân tán 1.1 Ưu điểm Chia sẻ tài nguyên: Chia sẻ tài nguyên trong hệ thống phân tán cung cấp một cơ chế để chia sẻ tập tin ở vị trí xa, xử lý thông tin trong một cơ sở dữ liệu phân tán, in ấn tại một vị trí xa, sử dụng những thiết bị ở xa để thực hiện các thao tác… Tăng tốc độ tính toán: Hệ thống phân tán cho phép phân chia việc tính toán trên nhiều vị trí khác nhau để tính toán song song. An toàn: Nếu một vị trí trong hệ thống phân tán bị hỏng, các vị trí khác vẫn tiếp tục làm việc mà không ảnh hưởng đến toàn bộ hệ thống. Thông tin liên lạc với nhau: Có nhiều lúc, chương trình cần chuyển đổi dữ liệu từ vị trí này sang vị trí khác. Khi các vị trí được nối kết với nhau trong một hệ thống mạng, việc trao đổi dữ liệu diễn ra rất dễ.2 Hạn chế Giá phát triển phần mềm cao: Do các khó khăn khi cài đặt một hệ thống phân tán, giá thành sẽ tăng lên.
Dễ mắc lỗi hơn: Vì các trạm trong hệ phân tán làm việc song song, khó có thể đảm bảo thuật toán được thực hiện đúng trên tất cả các trạm. Do vậy mà số lỗi sẽ tăng lên. Khối lượng các xử lý tăng: Hệ thống phân tán cần truyền nhiều thông báo, nhiều tính toán phụ. Do vậy khối lượng xử lý tăng lên so với hệ thống tập trung.3 Nguyên tắc xây dựng hệ phân tán Căn cứ vào thành phần của hệ tin học, ta nhận thấy hệ tin học phân tán có thể bao gồm bốn thực thể như hình bên dưới.
Hıǹ h 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. Cấu hình phần cứng của mạng có thể bao gồm các bộ xử lý có cấu tạo hoàn toàn khác nhau về khả năng, tốc độ và được thiết kế cho các chức năng không giống nhau. Chúng có thể là các bộ xử lý, các trạm làm việc, các máy tính trung và các máy tính điện tử vạn năng lớn. Bên cạnh hệ thống phần cứng, phần mềm, dữ liệu, hệ phân tán còn có hệ thống truyền thông.
Nhưng đ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ệ tin học phân tán được liệt kê như bảng dưới đây: Bảng 1: Những nguyên tắc xây dựng hệ tin học phân tán STT Tên gọi Thuyết minh 1 Chia sẻ tài Thực tế phát triển mạng máy tính đặt ra một vấn nguyên đề lớn là cần phải 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. 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 cậy 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.4 Hệ cơ sở dữ liệu phân tán Chúng ta có thể định nghĩa một cơ sở dữ liệu phân tán gồm nhiều cơ sở dữ liệu tích hợp lại với nhau thông qua mạng máy tính để trao đổi dữ liệu, thông tin… Cơ sở dữ liệu được tổ chức và lưu trữ ở những vị trí khác nhau trong mạng máy tính và chương trình ứng dụng truy cập vào dữ liệu ở những điểm khác nhau đó. Một hệ cơ sở dữ liệu phân tán (distributed database system, viết tắt là DDBS) không phải là một “tập các tập tin” lưu riêng lẻ tại mỗi nút của một mạng máy tính. Để tạo ra một hệ cơ sở dữ liệu phân tán, các tập tin không những có liên đới logic mà chúng còn phải có cấu trúc và được truy xuất qua một giao diện chung. Ưu điểm và nhược điểm của hệ quản trị cơ sở dữ liệu phân tán 1.
Ưu điểm Có nhiều nguyên nhân dẫn đến sử dụng cơ sở dữ liệu phân tán nhưng về cơ bản cơ sở dữ liệu phân tán có những ưu điểm sau: - Lợi điểm về tổ chức và tính kinh tế là tổ chức phân tán nhiều chi nhánh và dùng cơ sở dữ liệu phân tán phù hợp với các tổ chức kiểu này. - Tận dụng những cơ sở dữ liệu sẵn có là hình thành cơ sở dữ liệu phân tán từ các cơ sở dữ liệu tập trung có sẵn ở địa phương. - Thuận lợi cho nhu cầu phát triển là xu hướng dùng cơ sở dữ liệu phân tán sẽ cung cấp khả năng phát triển thuận lợi hơn và giảm được xung đột về chức năng giữa các đơn vị đã tồn tại và giảm được xung đột giữa các chương trình ứng dụng khi truy cập đến cơ sở dữ liệu. - Giảm chi phí truyền thông, trong cơ sở dữ liệu phân tán chương trình ứng dụng đặt ở địa phương có thể giảm bớt được chi phí truyền thông khi thực hiện bằng các khai thác dữ liệu tại chỗ.
- Tăng số công việc thực hiện giúp cơ sở dữ liệu phân tán có nhiều thuận lợi trong việc phân tán dữ liệu như tạo ra các chương trình ứng dụng phụ thuộc vào tiêu chuẩn mở rộng vị trí làm cho các nơi có thể hỗ trợ lẫn nhau. Do đó tránh được hiện tượng tắc nghẽn cổ chai trong mạng truyền thông hoặc trong các dịch vụ thông thường của toàn bộ hệ thống.2 Nhược điểm. Kinh nghiệm thiết kế và ứng dụng chưa nhiều, còn tồn tại nhiều vấn đề cần giải quyết. Các vấn đề của cơ sở dữ liệu phân tán thì phức tạp hơn nhiều so với cơ sở dữ liệu tập trung, đặc biệt là vấn đề khi cập nhật dữ liệu cũng như xử lý khi gặp lỗi.
Vấn đề truyền thông phải bảo đảm an toàn thông tin cũng như chọn cấu hình mạng cho phù hợp. Vấn đề an toàn dữ liệu nếu không có cơ chế bảo vệ hợp lý thì có khả năng những dữ liệu không mong muốn vẫn được truy xuất ra ngoài. Mô hình hệ cơ sở dữ liệu phân tán Một hệ cơ sở dữ liệu phân tán không phải là hệ thống trong đó dù có sự hiện diện của một mạng máy tính, cơ sở dữ liệu chỉ nằm tại một nút của mạng. Trong trường hợp này, vấn đề quản trị cơ sở dữ liệu không khác với việc quản trị cơ sở dữ liệu trong hệ tập trung.
Cơ sở dữ liệu này được quản lý tập trung tại một hệ thống máy tính (trạm 2 trong hình dưới) và tất cả mọi yêu cầu đều chuyển đến vị trí đó. Điều cần xem xét là độ chậm trễ khi truyền dữ liệu. Hiển nhiên là sự tồn tại của một mạng máy tính hoặc một tập các tập tin không đủ để tạo ra một hệ cơ sở dữ liệu phân tán. Điều chúng ta quan tâm là một môi trường trong đó dữ liệu được phân tán trên một số vị trí.
Server 3 Server 2 Internet Data Data Data Servers 1 Hıǹ h 3: Môi trường của hệ CSDL tập trung Data Data Server 3 Server 2 Data Internet Data Servers 1 Hı̀nh 4: Môi trường của hệ CSDL phân tán Trong hệ thống cơ sở dữ liệu phân tán, cơ sở dữ liệu lưu trữ ở các máy tính khác nhau. Các máy tính liên lạc với nhau qua nhiều phương tiện truyền thông, như bus tốc độ cao hay đường điện thoại. Chúng không chia sẻ bộ nhớ chính, cũng không dùng chung đồng hồ. Các bộ xử lý trong hệ thống phân tán có kích cỡ và chức năng khác nhau.
Chúng có thể gồm các bộ vi xử lý, trạm làm việc, máy tính mini, hay các máy tính lớn vạn năng. Những bộ xử lý được đặt tại các trạm, nút, máy tính. Trong hệ thống cơ sở dữ liệu phân tán gồm nhiều trạm, mỗi trạm có thể khai thác các giao thức truy nhập dữ liệu trên nhiều trạm khác. Sự khác nhau chính giữa hệ thống cơ sở dữ liệu phân tán và tập trung là: trong hệ thống tập trung, dữ liệu lưu trữ tại chỗ, còn phân tán thì không.
Đồng bộ hóa dữ liệu 1. Đồng bộ hóa cơ sở dữ liệu Đồng bộ (Synchronous) là khái niệm nói lên tính nguyên tắc, nó đòi hỏi các dữ liệu, tiến trình có liên quan phải được kết nối, liên hệ theo một trình tự thực hiện, một định dạng, cách thức cố định, không bao giờ thay đổi. Trong một chuỗi các hàm của một quy trình có n tác vụ, nếu nó được bảo là đồng bộ thì trình tự thực hiện các hàm đó sẽ không bao giờ thay đổi.