CHƯƠNG 1: TỔNG QUAN VỀ HỆ CSDL PHÂN TÁN 1. ĐỊNH NGHĨA: Cơ sở dữ liệu phân tán (CSDL phân tán) có thể được định nghĩa như sau: CSDL phân tán là một tập các CSDL có quan hệ với nhau về mặt 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 là hệ thống phần mềm cho phép quản trị CSDL phân tán và làm cho sự phân tán đó là trông suốt đối với người sử dụng [1]. Định nghĩa này nhấn mạnh hai khía cạnh quan trọng của CSDL phân tán: 1- Tính phân tán, thực tế dữ liệu không cư trú ở cùng một trạm, vì vậy chúng ta có thể phân biệt mỗi CSDL phân tán với CSDL tập trung.
2- Sự tương quan lôgic, các dữ liệu có một số tính chất ràng buộc lẫn nhau và như vậy có thể phân biệt CSDL phân tán với tập các CSDL địa phương hoặc với các tệp cư trú ở các trạm khác nhau trên mạng. CÁC ĐẶC ĐIỂM CSDL PHÂN TÁN SO VỚI CSDL TẬP TRUNG: Để dễ xem xét đặc điểm của hệ CSDL phân tán ta xét chúng thông qua các đặc điểm của hệ CSDL tập trung: • Điều khiển tập trung: Viện Sau Đại Học, Khoa CNTT, Trường Đại Học Bách Khoa Hà nội GV Hướng Dẫn Khoa Học: GS.TS Nguyễn Thúc Hải Học viên: Koeu Sokmeak -2- Kỹ thuật Phân tán dữ liệu Điều khiển tập trung các nguồn tài nguyên thông tin của một hãng hoặc một tổ chức được xem như động cơ thúc đẩy mạnh mẽ nhất của việc đưa vào sử dụng CSDL. Chúng phát triển như sự tiến hoá của các hệ thông tin, trong đó mỗi ứng dụng có các tệp riêng của nó. Chức năng cơ sở của người quản trị cơ sở dữ liệu là đạt được sự an toàn dữ liệu.
Trong CSDL phân tán ý tưởng điều khiển tập trung phần nào đó ít được nhấn mạnh so với CSDL tập trung, điều này phụ thuộc vào kiến trúc của hệ thống. Nói chung, trong địa phương xác định một cấu trúc điều khiển phân cấp trên cơ sở người quản trị cơ sở dữ liệu tổng thể có trách nhiệm trung tâm của toàn bộ CSDL, những người quản trị cơ sở dữ liệu địa phương có trách nhiệm với các CSDL địa phương của họ.Tuy nhiên, nhấn mạnh rằng người quản trị cơ sở dữ liệu địa phương có thể có một sự tự trị cao hơn tới mức là phối hợp giữa các trạm được thực hiện bởi chính người quản trị địa phương mà không cần tới người quản trị CSDL tổng thể. Đặc điểm này được gọi là sự tự trị của các trạm. Các CSDL phân tán có thể không giống nhau về mức độ tự trị: từ tự trị hoàn toàn không có người quản trị cơ sở dữ liệu tập trung nào, đến hầu như hoàn toàn điều khiển tập trung.
• Tính độc lập dữ liệu Độc lập dữ liệu có nghĩa là một tổ chức dữ liệu thực sự là trông suốt với người lập trình ứng dụng. Các chương trình được viết có cách nhìn quan niệm về dữ liệu gọi là sơ đồ quan niệm.Thuận lợi chính của sự độc lập dữ liệu là các chương trình không ảnh hưởng khi có thay đổi trong tổ chức vật lý của dữ liệu. Trong CSDL phân tán sự độc lập dữ liệu có tầm quan trọng như trong CSDL truyền thống và bổ xung một hướng mới vào khái niệm độc lập dữ liệu là sự trông suốt trong phân tán. Tính trong suốt (transparency) của một hệ CSDL phân tán biểu thị sự tách biệt những ngữ nghĩa ở mức cao với những vấn đề thực hiện ở mức thấp.
Nói một cách khác, một hệ thống trong suốt dấu đi nhưng chi tiết thể hiện với người dùng. Viện Sau Đại Học, Khoa CNTT, Trường Đại Học Bách Khoa Hà nội GV Hướng Dẫn Khoa Học: GS.TS Nguyễn Thúc Hải Học viên: Koeu Sokmeak -3- Kỹ thuật Phân tán dữ liệu Thế lợi của một CSDL trong suốt hoàn toàn là mức hỗ trợ cao để phát triển những ứng dụng phức tạp. Hiển nhiên là chúng ta muốn tạo ra những CSDL trong suốt hoàn toàn. Sự trong suốt phân tán được hiểu: Các chương trình được viết như với CSDL không phân tán.
Như vậy sự đúng đắn của các chương trình không thay đổi khi dữ liệu từ trạm này sang trạm khác, mặc dù tốc độ thực hiện có thể bị ảnh hưởng. Độc lập dữ liệu được đáp ứng trong các CSDL tập trung quá kiến trúc nhiều mức có các mô tả dữ liệu khác nhau và các bản sao của chúng. Xuất hiện các khái niệm: sơ đồ quan niệm, sơ đồ lưu trữ, sơ đồ ngoài. • Giảm sự dư thừa Trong CSDL tập trung việc giảm dư thừa đã được giải quyết vì hai lý do: Thứ nhất các mâu thuẫn giữa các bản sao của cùng một dữ liệu được ngăn ngừa tự động bằng cách chỉ có một bản sao.Thứ hai, giảm không gian lưu trữ.
Giảm dư thừa đạt được bằng cách dùng chung dữ liệu, tức là cho phép một vài ứng dụng cùng truy nhập đến một số tệp và bản ghi. Mặc dù vậy, trong CSDL phân tán có một số lý do để quan tâm đến sự giảm dư thừa dữ liệu.Thứ nhất, tính địa phương của các ứng dụng có thể tăng lên nếu dữ liệu được sao lại ở tất các trạm mà ở đó các ứng dụng cần đến. Thứ hai, tính sẵn dùng của hệ thống có thể tăng lên vì sai ở một trạm không làm dừng việc thực hiện các ứng dụng tại các trạm nếu dữ liệu được sao lại Nhìn chung, những lý do hạ chế sự dư thừa vẫn có giá trị trong CSDL phân tán, do đó việc đánh giá mức dư thừa đòi hỏi sự cân nhắc phức tạp. Có thể nói rằng: sự thuận lợi của bản dữ liệu tăng theo tỷ số các truy nhập tìm kiếm trên các tuy nhập cập nhật được thực hiện bởi các ứng dụng tới nó.
Sở dĩ có vấn đề trên là vì ta có nhiều bản sao của một cá thể dữ liệu thì việc tìm kiếm có thể thực hiện trên một bản sao bất kỳ trong khi việc cập nhật dữ liệu phải được thực hiện một cách nhất quán trên tất cả các bản sao. Viện Sau Đại Học, Khoa CNTT, Trường Đại Học Bách Khoa Hà nội GV Hướng Dẫn Khoa Học: GS.TS Nguyễn Thúc Hải Học viên: Koeu Sokmeak -4- Kỹ thuật Phân tán dữ liệu • Cấu trúc vật lý phức tạp và sự truy nhập hiệu quả: Các cấu trúc truy nhập phức tạp, như các chỉ dẫn thứ cấp, các dây truyền giữa các tập là vấn đề quan trọng của CSDL truyền thống và thường do hệ quản trị CSDL đảm nhận. Việc cung cấp các cấu trúc truy nhập phức tạp này làm tăng hiệu quả truy nhập dữ liệu. Trong CSDL phân tán các cấu trúc truy nhập phức tạp này không phải là công cụ thích hợp cho sự truy nhập hiệu quả.
Việc truy nhập hiệu quả các CSDL phân tán không thể được cung cấp bằng các cấu trúc vật lý bởi vì việc xây dựng và duy trì các cấu trúc như vậy đối với hệ phân tán là khó khăn và các ứng dụng thực hiện ở mức bản ghi trong CSDL phân tán là không phù hợp. Để truy nhập CSDL, có hai thủ tục cài đặt cho hệ phân tán: Thủ tục cho phép truy nhập bản ghi từ xa, mỗi truy nhập tới một bản ghi thì không chỉ bản ghi đó được truyền đi mà cả nhiều thông báo khác cũng phải được trao đổi. Một thủ tục hiệu qủa hơn cho phép nhóm càng nhiều càng tốt tất cả các truy nhập được thực hiện tại cùng một trạm. Thủ tục này gồm hai kiểu thao tác: thực hiện các chương trình cục bộ tại từng trạm và truyền các tệp giữa các trạm.
Thủ tục như vậy gọi là phương án truy nhập phân tán (Distributed Access Plan). Phương án truy nhập phân tán có thể được viết bởi người lập trình hay được sản sinh tự động bởi một bộ tối ưu hoá. • Tính toàn vẹn, phục hồi và điều khiển tương tranh Trong các CSDL, các vấn đề về tính toàn vẹn, phục hồi và điều khiển tương tranh quan hệ rất chặt chẽ với nhau. Giải pháp của các vấn đề này bao hàm việc cung cấp các giao tác.
Một giao tác là một đơn vị nguyên tố, nghĩa là một dãy các giao tác, hoặc được thực hiện hoàn toàn, hoặc không được thực hiện. Rõ ràng các Viện Sau Đại Học, Khoa CNTT, Trường Đại Học Bách Khoa Hà nội GV Hướng Dẫn Khoa Học: GS.TS Nguyễn Thúc Hải Học viên: Koeu Sokmeak -5- Kỹ thuật Phân tán dữ liệu giao tác nguyên tố là các phương tiện để đạt được tính toàn vẹn CSDL bởi vì chúng đảm bảo hoặc tất cả các thao tác biến đổi CSDL từ một trạng thái toàn vẹn này sang một trạng thái toàn vẹn khác, hoặc trạng thái ban đầu được giữ nguyên như cũ. Hai tác động ảnh hưởng tới tính nguyên tố của giao tác đó là hỏng hóc và tương tranh. Hỏng hóc có thể làm hệ thống dừng giữa lúc thực hiện giao tác, do đó vi phạm sự đòi hỏi của tính nguyên tố.
Sự tương tranh của nhiều thao tác có thể cho phép một giao tác quan sát một trạng thái chuyển tiếp không toàn vẹn tạo ra bởi một giao tác khác trong quá trình thực hiện nó. Sự phục hồi có liên quan tới vấn đề đảm bảo tính nguyên tố của giao tác khi có hỏng hóc. Trong CSDL phân tán đây là một khía cạnh quan trọng bởi vì một số trạm tham gia thực hiện giao tác có thể bị hỏng Điều khiển tương tranh liên quan đến sự đảm bảo tính nguyên tố của giao tác khi có sự tương tranh của các giao tác. Vấn đề này có thể xem như một vấn đề đồng bộ hoá điển hình.
Đối với CSDL phân tán vấn đề này khó hơn so với CSDL tập trung. • Tính riêng tư và an toàn Trong CSDL tập trung do điều khiển tập trung nên có thể chắc chắn rằng mọi truy nhập dữ liệu đều được thực hiện. Điều này CSDL tập trung tự đạt được không cần đến các thủ tục điều khiển đặc biệt nào. Trong CSDL phân tán, những người quản trị địa phương cũng phải xử lý bài toán như những người quản trị dữ liệu trong CSDL tập trung.
Mặc dù vậy, có hai đặc điểm đặc thù cho CSDL phân tán. Thứ nhất trong CSDL phân tán với mức tự trị cao nhất, những người quản trị địa phương cảm thấy bảo vệ hơn, bởi vì nó có thể áp đặt các biện pháp bảo vệ của mình thay vì phụ thuộc vào người quản trị dữ liệu CSDL tập trung Thứ hai, vấn đề bảo mật là vấn đề cố hữu với hệ phân tán, bởi vì vấn đề bảo mật và an toàn cho mạng truyền thông là rất khó thực hiện.