CHƯƠNG 1. TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN 1.1 Cơ sở dữ liệu phân tán Cơ sở dữ liệu phân tán (DDB) là một tập các cơ sở dữ liệu có quan hệ với nhau về mặt lôgic và được phân bố tại các trạm (site) trên một mạng máy tính [2, 3]. Các cơ sở dữ liệu trong trong cơ sở dữ liệu phân tán không chỉ được phân tán trong mạng cục bộ bên trong một công ty mà còn trên nhiều công ty thông qua mạng diện rộng [16]. Việc thực hiện phân tán có thể là đồng nhất hoặc không đồng nhất cơ sở dữ liệu.1 Tổng quan về cơ sở dữ liệu phân tán - Tính chất phân tán: Toàn bộ dữ liệu của cơ sở dữ liệu (CSDL) phân tán không được lưu trữ tại một vị trí mà lưu trữ tại nhiều trạm thuộc mạng máy tính, điều này giúp chúng ta phân biệt CSDL phân tán với CSDL tập trung đơn lẻ.
- Tương quan lôgic: Toàn bộ dữ liệu của CSDL phân tán có một số 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 các CSDL cục bộ [7 ].2 Kiến trúc của cơ sở dữ liệu phân tán Mô hình kiến trúc cơ sở dữ liệu phân tán gồm lược đồ toàn cục, lược đồ phân mảnh, lược đồ định vị và lược đồ ánh xạ cục bộ [1, 4, 6]: - Lược đồ toàn cục: Xác định toàn bộ dữ liệu được lưu trữ trong CSDL phân tán như trong CSDL tập trung. Trong mô hình quan hệ, lược đồ toàn cục là các quan hệ và mối liên kết giữa chúng. - Lược đồ phân mảnh: Mỗi quan hệ tổng thể có thể được chia thành các phần không giao nhau gọi là phân mảnh. Có nhiều cách khác nhau để phân mảnh như phân mảnh dọc, phân mảnh ngang, phân mảnh hỗn hợp.
Các mảnh được mô tả bằng tên của quan hệ tổng thể cùng với chỉ mục đoạn. Ví dụ ri là đoạn thứ i của quan hệ toàn cục r. - Lược đồ định vị: Xác định mảnh dữ liệu nào được định vị tại trạm nào trên mạng. Ký hiệu rij : Cho biết mảnh thứ i của quan hệ tổng thể r được định vị trên trạm j.
14 TIEU LUAN MOI download : skknchat@gmail.com Ví dụ một quan hệ toàn cục r chia thành 4 phân mảnh r1, r2, r3, r4. Bốn phân mảnh này được cấp phát dư tại 3 trạm của mạng máy tính, vì thế tạo nên ba mô hình vật lý r1 trạm 1, r2 trạm 2 và r3 trạm 3 (xem Hình 1. r r1 r11 r1 trạm 1 r2 r12 r2 1 r2 trạm 2 r3 r2 2 r4 r3 1 r3 2 r3 trạm 2 r3 3 Quan hệ toàn cục Phân mảnh Định vị Hình 1.2 Lược đồ định vị cơ sở dữ liệu Lược đồ toàn cục Lược đồ phân mảnh Lược đồ định vị Lược đồ ánh xạ cục bộ 1 Lược đồ ánh xạ cục bộ 2 Lược đồ ánh xạ cục bộ n CSDL1 CSDL2 CSDLn Hình 1.3 Kiến trúc cơ sở dữ liệu phân tán - Lược đồ ánh xạ cục bộ: Thực hiện ánh xạ các ảnh vật lý lên các đối tượng được thực hiện bởi hệ quản trị cơ sở dữ liệu địa phương. Tất cả các đoạn của một quan hệ tổng thể trên cùng một trạm tạo ra một ảnh vật lý.3 Hệ cơ sở dữ liệu phân tán Hệ cơ cở dữ liệu phân tán (DDBS) là sự kết hợp của hai khái niệm là hệ cơ sở dữ liệu và các công nghệ mạng máy tính [15].
Hệ cơ sở dữ liệu đã đưa chúng ta từ một mô hình xử lý dữ liệu trong đó mỗi ứng dụng xác định và duy 15 TIEU LUAN MOI download : skknchat@gmail.com trì dữ liệu riêng của mình (xem Hình 1.4) tới một mô hình trong đó dữ liệu được xác định và quản lý tập trung (xem Hình 1. Định hướng mới này dẫn đến độc lập dữ liệu, nhờ đó mà các chương trình ứng dụng không bị ảnh hưởng bởi những thay đổi lôgic và vật lý trong tổ chức dữ liệu và ngược lại. Chương trình 1o Dữ liệu Mô tả Tệp tin 1 Dữ liệu Chương trình 2 dư Dữ liệu Tệp tin 2 thừ Mô tả a Chương trình 3o Dữ liệu Tệp tin 3 Mô tả Hình 1.4 Xử lý tập tin truyền thống Chương trình 1 Mô tả dữ liệu Chương trình 2 Thao tác dữ liệu CSDL …. Chương trình 3 Hình 1.5 Xử lý cơ sở dữ liệu Khái niệm hệ cơ sở dữ liệu phân tán ở đây bao gồm cả khái niệm cơ sở dữ liệu phân tán và hệ quản trị cơ sở dữ liệu phân tán (Distributed Database Management System - DDBMS).
Trong ngữ cảnh xử lý phân tán thì DDBMS có thể được xem như những công cụ làm cho quá trình xử lý dữ liệu phân tán dễ dàng hơn và hiệu quả hơn. Hệ cơ sở dữ liệu phân tán không đơn thuần bao gồm nhiều file dữ liệu được tổ chức riêng lẻ trên thiết bị nhớ của mạng máy tính. Để tạo một hệ CSDL phân tán, các tệp tin không chỉ có quan hệ với nhau về mặt lôgic mà còn cần có một cấu trúc giao diện chung giữa chúng để các tập tin có thể truy cập lẫn nhau [4].4 Lợi ích của cơ sở dữ liệu phân tán So với các cơ sở dữ liệu tập trung truyền thống, cơ sở dữ liệu phân tán có những ưu điểm sau [15, 16]: Tính tự trị cục bộ (Local Autonomy): tất cả dữ liệu trong cơ sở dữ liệu phân tán được làm chủ và quản lý tại mỗi trạm, các trạm không bị phụ thuộc vào cơ sở dữ liệu tập trung mà chỉ cần cài đặt và thao tác với mỗi cơ 16 TIEU LUAN MOI download : skknchat@gmail.com sở dữ liệu riêng để đáp ứng nhu cầu công việc. Tính tự trị liên quan dến tính phân tán của kiểm soát chứ không phải dữ liệu.
Nó chỉ ra mức độ mà các hệ quản trị CSDL có thể thao tác một cách độc lập. Nâng cao hiệu suất hệ thống (Improved Performance): do việc định vị dữ liệu làm giảm sự tương tranh giữa CPU và các dịch vụ vào/ra (I/O) và dẫn đến việc trễ trong các mạng diện rộng. Tăng tính tin cậy (Reliability): là xác suất hệ thống chạy (không dừng) tại thời điểm xác định. Tính sẵn sàng (Availability): là xác suất hệ thống có khả năng vận hành liên tục trong suốt một khoảng thời gian.
Tính dễ mở rộng (Easier System Expansion): khả năng vận hành của các cơ sở dữ liệu phân tán có thể được cải thiện một cách dễ dàng bằng cách bổ sung thêm các máy tính vào mạng. Việc mở rộng này thường là không ảnh hưởng đến hệ thống đang chạy và chi phí thấp. Trong môi trường phân tán, hệ thống có thể kết hợp các máy nhỏ để đạt được sức mạnh tương đương với sức mạnh của một siêu máy tính. Các máy tính nhỏ là rẻ hơn nhiều so với siêu máy tính, và không đòi hỏi phải có cơ sở hạ tầng đắt tiền cho việc cài đặt và bảo vệ.
Yêu cầu cho việc mở rộng không chỉ là mở rộng phần cứng trên mạng mà nó trải trên các khía cạnh khi thiết kế hệ phân tán. Ví dụ: tần suất sử dụng trên mạng đột ngột, để tránh tình trạng tắc nghẽn xảy ra khi chỉ có một máy chủ CSDL và phải đáp ứng các yêu cầu truy xuất thì thực hiện nhân bản các dữ liệu trên một máy chủ khác và hệ thống được thiết kế sao cho việc thêm máy chủ CSDL được dễ dàng [9].5 Cơ sở dữ liệu phân tán đồng nhất và không đồng nhất Trong một hệ cơ sở dữ liệu phân tán đồng nhất (homogeneous distributed database system), tất cả các trạm chạy cùng phần mềm hệ quản trị cơ sở dữ liệu (DBMS) nhưng hệ điều hành (OS) có thể khác nhau ở các trạm này [10]. Trao đổi dữ liệu giữa các trạm khác nhau được xử lý dễ dàng (xem Hình 1. 17 TIEU LUAN MOI download : skknchat@gmail.6 Cơ sở dữ liệu phân tán đồng nhất Trong cơ sở dữ liệu phân tán không đồng nhất (heterogeneous distributed database), các trạm chạy phần mềm hệ quản trị cơ sở dữ liệu khác nhau hoặc hệ thống cơ sở dữ liệu khác nhau [10].
Trong trường hợp này, cần một phần mềm để hỗ trợ việc trao đổi dữ liệu giữa các trạm (xem Hình 1.7 Cơ sở dữ liệu phân tán không đồng nhất Sự khác nhau trong các lược đồ (Schema) thường là một vấn đề lớn cho việc xử lý truy vấn, trong khi sự khác nhau trong phần mềm trở thành chướng ngại cho việc xử lý giao dịch để truy xuất đến nhiều trạm khác nhau. Luận văn tập trung vào cơ sở dữ liệu phân tán đồng nhất.6 Lưu trữ dữ liệu phân tán Xem xét một quan hệ r được lưu trữ trong cơ sở dữ liệu. Có hai cách tiếp cận lưu trữ quan hệ này trong cơ sở dữ liệu phân tán là Nhân bản và Phân mảnh.1 Nhân bản Nhân bản (Replication) có nghĩa là hệ thống duy trì nhiều bản sao (copies) giống hệt nhau của quan hệ và lưu mỗi bản sao tại các trạm khác nhau [10]. Nếu quan hệ r được nhân bản, một bản sao của quan hệ r được lưu trữ tại 18 TIEU LUAN MOI download : skknchat@gmail.com hai hay nhiều trạm.
Trong trường hợp xấu nhất, chúng ta có bản sao đầy đủ của quan hệ, trong đó một bản sao được lưu trữ tại mội trạm trong hệ thống. Có một vài lợi ích và bất lợi của việc nhân bản: Tính sẵn có (Availability): Nếu một trong số những trạm chứa quan hệ bị hỏng (fail), thì quan hệ r có thể được phục hồi từ trạm khác. Ví thế, hệ thống có thể tiếp tục xử lý truy vấn liên quan đến r bất chập việc có một trạm bị hỏng. Tăng khả năng xử lý đồng thời (Increased parallelism): Trong phần lớn các trường hợp, việc truy xuất đến quan hệ r là chỉ đọc, do đó một vài trạm có thể xử lý truy vấn đồng thời tới r đáp ứng tốt hơn nhu cầu truy xuất dữ liệu.
Do đó, sao chép dữ liệu giúp giảm thiểu sự di chuyển của dữ liệu giữa các trạm. Chi phí cập nhật tăng (Increased overhead on update): Hệ thống phải đảm bảo rằng tất cả các bản sao của quan hệ r phải nhất quán, nếu không có thể dẫn đến tính toán sai. Vì vậy, bất cứ khi nào r được cập nhật, bản cập nhật phải được phổ biến đến tất cả các trạm có chứa bản sao. Điều này dẫn đến việc tăng chi phí cập nhật.