54 Hình 11: Lược đồ Venn 54 Hình 12: Đoạn i trong thuật toán tối ưu 69 Bảng 3: Liệt kê xác suất truy cập ít nhất một lần 72 Hình 13: Biểu diễn đoạn i với bộ đếm 72 Trang 8 Minterm Pred
TỔNG QUAN VỀ HỆ CSDL PHÂN TÁN
ĐỊNH NGHĨA
Cơ sở dữ liệu phân tán (CSDL phân tán) là một tập hợp các CSDL có mối quan hệ 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à phần mềm cho phép quản lý các CSDL này, đồng thời đảm bảo sự phân tán trở nên minh bạch đối với người sử dụng Đị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 c ất ràng buộc lẫn nhau h 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
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 các nguồn tài nguyên thông tin trong một tổ chức là động lực chính cho việc triển khai CSDL Sự phát triển này phản ánh tiến hóa của các hệ thống thông tin, với mỗi ứng dụng sở hữu các tệp riêng biệt Nhiệm vụ cốt lõi của người quản trị cơ sở dữ liệu là đảm bảo an toàn cho dữ liệu.
Trong cơ sở dữ liệu phân tán, khái niệm điều khiển tập trung thường không được chú trọng bằng trong cơ sở dữ liệu tập trung, điều này chủ yếu phụ thuộc vào kiến trúc của hệ thống.
Trong một hệ thống quản lý cơ sở dữ liệu, cấu trúc điều khiển phân cấp được thiết lập với người quản trị cơ sở dữ liệu tổng thể chịu trách nhiệm chính cho toàn bộ hệ thống, trong khi các quản trị viên địa phương quản lý các cơ sở dữ liệu của riêng họ Tuy nhiên, các quản trị viên địa phương có thể hoạt động với mức độ tự trị cao, cho phép họ phối hợp giữa các trạm mà không cần sự can thiệp của người quản trị tổng thể Mức độ tự trị của các cơ sở dữ liệu phân tán có thể khác nhau, từ hoàn toàn không có quản trị viên tập trung đến gần như hoàn toàn được kiểm soát tập trung.
Tính độc lập dữ liệu đảm bảo rằng tổ chức dữ liệu không bị ảnh hưởng bởi sự thay đổi trong cấu trúc vật lý của nó, giúp các lập trình viên ứng dụng làm việc với một sơ đồ quan niệm rõ ràng Điều này mang lại lợi ích lớn cho việc phát triển phần mềm, vì các chương trình có thể duy trì hoạt động ổn định ngay cả khi có sự thay đổi trong cách tổ chức dữ liệu.
Trong cơ sở dữ liệu phân tán, sự độc lập dữ liệu giữ vai trò quan trọng tương tự như trong cơ sở dữ liệu truyền thống Bên cạnh đó, nó cũng mở rộng khái niệm độc lập dữ liệu bằng cách nhấn mạnh tính trông suốt trong môi trường phân tán.
Tính trong suốt của hệ cơ sở dữ liệu phân tán thể hiện sự phân tách giữa ngữ nghĩa cao và các vấn đề thực hiện ở mức thấp Điều này có nghĩa là hệ thống trong suốt ẩn đi những chi tiết phức tạp, cho phép người dùng tương tác một cách dễ dàng và hiệu quả hơn.
Lợi ích của một cơ sở dữ liệu (CSDL) hoàn toàn trong suốt là khả năng hỗ trợ cao cho việc phát triển các ứng dụng phức tạp Mục tiêu là xây dựng những CSDL này, trong đó sự trong suốt phân tán cho phép các chương trình được viết tương tự như với CSDL không phân tán Điều này đảm bảo rằng tính đúng đắn của các chương trình không bị ảnh hưởng khi dữ liệu được chuyển từ trạm này sang trạm khác, mặc dù tốc độ thực hiện có thể thay đổi Độc lập dữ liệu được đảm bảo trong các CSDL tập trung thông qua kiến trúc nhiều mức, với các mô tả dữ liệu và bản sao khác nhau Các khái niệm như sơ đồ quan niệm, sơ đồ lưu trữ và sơ đồ ngoài cũng xuất hiện trong bối cảnh này.
Trong cơ sở dữ liệu (CSDL), việc giảm dư thừa được giải quyết tự động nhờ vào việc chỉ duy trì một bản sao duy nhất của dữ liệu, điều này giúp ngăn ngừa các mâu thuẫn giữa các bản sao Bên cạnh đó, việc này cũng góp phần giảm thiểu không gian lưu trữ cần thiết.
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
Trong các cơ sở dữ liệu phân tán, việc giảm dư thừa dữ liệu có nhiều lợi ích quan trọng Đầu tiên, tính địa phương của các ứng dụng sẽ được cải thiện khi dữ liệu được sao chép tại tất cả các trạm cần thiết Thứ hai, tính sẵn có của hệ thống cũng sẽ tăng lên, vì sự cố xảy ra tại một trạm sẽ không ảnh hưởng đến việc thực hiện các ứng dụng tại các trạm khác nếu dữ liệu đã được sao chép.
Trong CSDL phân tán, các lý do hạn chế sự dư thừa vẫn giữ nguyên giá trị, vì vậy việc đánh giá mức độ dư thừa cần phải được thực hiện với sự cân nhắc tỉ mỉ và phức tạp.
Sự thuận lợi của bản dữ liệu tăng lên theo tỷ lệ giữa các truy nhập tìm kiếm và các truy nhập cập nhật từ các ứng dụng Điều này xảy ra do nhiều bản sao của một cá thể dữ liệu cho phép tìm kiếm trên bất kỳ bản sao nào, trong khi việc cập nhật dữ liệu cần được thực hiện một cách nhất quán trên tất cả các bản sao.
• 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 cập phức tạp, bao gồm chỉ dẫn thứ cấp và dây chuyền giữa các tập, đóng vai trò quan trọng trong cơ sở dữ liệu truyền thống và thường được quản lý bởi hệ quản trị cơ sở dữ liệu Việc cung cấp những cấu trúc truy cập phức tạp này giúp nâng cao hiệu quả truy cập dữ liệu.
Trong cơ sở dữ liệu phân tán, các cấu trúc truy nhập phức tạp không phải là công cụ hiệu quả cho việc truy cập Việc truy cập hiệu quả vào cơ sở dữ liệu phân tán không thể đạt được chỉ bằng các cấu trúc vật lý, vì việc xây dựng và duy trì chúng trong hệ thống phân tán là rất khó khăn Hơn nữa, các ứng dụng thực hiện ở mức bản ghi trong cơ sở dữ liệu phân tán thường không phù hợp Để cải thiện truy cập cơ sở dữ liệu, có hai thủ tục cài đặt cần thiết cho hệ phân tán.
Thủ tục truy nhập bản ghi từ xa yêu cầu không chỉ truyền tải bản ghi mà còn phải trao đổi nhiều thông báo khác liên quan.
Một thủ tục hiệu quả cho phép nhóm tối đa hóa tất cả các truy cập tại một trạm, bao gồm hai thao tác chính: thực hiện chương trình cục bộ và truyền tệp giữa các trạm Thủ tục này được gọi là phương án truy nhập phân tán (Distributed Access Plan), có thể được viết bởi lập trình viên hoặc tự động sinh ra bởi bộ tối ưu hóa.
• Tính toàn vẹn, phục hồi và điều khiển tương tranh
PHÂN LOẠI CSDL PHÂN TÁN
Dựa vào kiến trúc, các hệ CSDL phân tán có thể phân làm hai loại[5]:
Các hệ CSDL phân tán thuần nhất
Các hệ CSDL phân tán không thuần nhất
Tính thuần nhất và không thuần nhất của các hệ cơ sở dữ liệu (CSDL) được đánh giá qua các hệ CSDL cục bộ tại các trạm Hệ CSDL phân tán thuần nhất có các hệ CSDL cục bộ đồng nhất, trong khi hệ CSDL phân tán không thuần nhất cho phép các hệ CSDL cục bộ tại các trạm khác nhau.
CSDL phân tán thuần nhất tương tự như CSDL tập trung, nhưng dữ liệu được phân tán tại nhiều trạm trên mạng Một CSDL phân tán thuần nhất có thể được hình dung qua biểu đồ đơn giản Hệ quản trị CSDL phân tán này bao gồm nhiều bộ sưu tập dữ liệu, và tùy theo mức độ tự trị, có thể chia thành các loại tự trị và không tự trị.
Trong mô hình CSDL phân tán, người sử dụng truy cập dữ liệu thông qua một giao diện tổng thể mà không có người dùng cục bộ Lược đồ tổng thể bao gồm tất cả các mô tả dữ liệu cục bộ và khung nhìn của người sử dụng Để xây dựng lược đồ quan niệm chuẩn theo kiểu ANSI – SPARC, cần thêm các hệ CSDL cục bộ và lược đồ cục bộ Hầu hết các hệ thống thuần nhất hiện nay không có lược đồ cục bộ và chỉ có phần mềm quản trị dữ liệu hạn chế Kiến trúc 3 tầng ANSI – SPARC đang được áp dụng rộng rãi trong các hệ quản trị CSDL thương mại.
Mô hình CSDL tập trung ANSI SPARC có thể phát triển cho mô hình – CSDL phân tán thuần nhất như trong [hình 1].
Hình 1 Mô hình hệ CSDL phân tán thuần nhất đơn giản
Phần mềm quản trị dữ liệu
Phần mềm quản trị dữ liệu
Phần mềm quản trị dữ liệu
Người dùng tổng thể Người dùng tổng thể
Hình 2: Kiến trúc hệ CSDL phân tán thuần nhất
View tổng thể 1 cho USER View tổng thể n cho USER
Lược đồ quan niệm cục bộ 1 Lược đồ quan niệm cục bộ n
CSDL cục bộ 1 CSDL cục bộ n
Lược đồ phân đoạn là phương pháp chia nhỏ các quan hệ tổng thể thành các đoạn riêng biệt nhằm tối ưu hóa việc thao tác với cơ sở dữ liệu (CSDL) Ví dụ, quan hệ R được phân chia thành 5 đoạn khác nhau và được lưu trữ tại các trạm khác nhau, như minh họa trong Hình 3.
Hình 3: Phân đoạn quan hệ tổng thể R
Quan hệ R có thể được tái thiết lại từ các đoạn như sau:
Trong hệ thống cơ sở dữ liệu, các phép toán join và union đóng vai trò quan trọng Để thực hiện các phép toán này, cần tuân thủ một số quy tắc trong quá trình phân đoạn Cụ thể, khi thực hiện phân đoạn dọc, khóa chính của quan hệ R phải được bao gồm trong tất cả các đoạn.
Các hệ cơ sở dữ liệu phân tán không thuần nhất có thể được chia thành hai lớp con chính, tùy thuộc vào cách thức tích hợp các hệ cơ sở dữ liệu cục bộ vào trong hệ thống.
Tích hợp hoàn toàn vào hệ thống
Cung cấp những “hook” đơn giản thường được gọi là cổng nối (Gateway) để thực hiện liên kết với các hệ thống bên ngoài a b
Hình 4: Phân loại các hệ CSDL phân tán theo kiến trúc
Chúng ta có thể chia các lớp con dựa trên kiến trúc hệ thống của chúng Nhiều nghiên cứu về cơ sở dữ liệu phân tán hiện nay chủ yếu tập trung vào các hệ thống thuần nhất Tuy nhiên, trong tương lai, các hệ thống không thuần nhất cũng sẽ được chú ý nhiều hơn Bài viết này sẽ tập trung vào các hệ cơ sở dữ liệu phân tán thuần nhất.
Sự phát triển của công nghệ cơ sở dữ liệu (CSDL), máy tính và truyền thông đã giúp khắc phục những nhược điểm của các ứng dụng xử lý CSDL tập trung, dẫn đến sự hình thành của các hệ CSDL phân tán Chỉ trong vòng 15 năm qua, công nghệ phân tán đã cho ra đời những sản phẩm đầu tiên trên thị trường, chứng minh tính ưu việt so với hệ thống tập trung truyền thống Theo dự đoán của các chuyên gia Tamer Ozsu và Patrik Valduriez, CSDL phân tán sẽ sớm thay thế CSDL tập trung trong tương lai gần Việc thiết kế CSDL phân tán là bước đầu tiên và rất quan trọng trong quá trình xây dựng hệ thống này.
Các Hệ CSDL Phân tán
Thuần nhất Không thuần nhất
Tích hợp theo hệ thống
Tích hợp theo cổng nối
XU THẾ PHÁT TRIỂN CSDL PHÂN TÁN
Trong những năm gần đây, cơ sở dữ liệu phân tán (CSDL phân tán) đã trở thành một lĩnh vực quan trọng trong công nghệ thông tin, với vai trò ngày càng tăng theo sự phát triển của ngành này Nhiều nguyên nhân đã thúc đẩy sự phát triển của các hệ thống CSDL phân tán, trong đó có các động cơ chính như nhu cầu xử lý dữ liệu lớn, khả năng mở rộng linh hoạt và tính sẵn sàng cao của hệ thống.
• Vấn đề cơ cấu tổ chức và kinh tế
Nhiều tổ chức hiện nay có cấu trúc không tập trung, khiến việc xây dựng cơ sở dữ liệu (CSDL) phân tán trở thành giải pháp tự nhiên và phù hợp Sự phát triển của công nghệ máy tính và động lực kinh tế đã làm nổi bật tầm quan trọng của việc tổ chức các trung tâm máy tính lớn và tập trung.
• Xây dựng mối quan hệ giữa các CSDL đã tồn tại
CSDL phân tán là giải pháp hiệu quả cho các tổ chức có nhiều CSDL hiện có và cần phát triển các ứng dụng tổng thể Việc xây dựng CSDL phân tán thường diễn ra từ dưới lên, dựa trên các CSDL địa phương sẵn có Quá trình này có thể yêu cầu tái cấu trúc các CSDL địa phương, nhưng chi phí cho việc này thường thấp hơn nhiều so với việc tạo ra một CSDL tập trung hoàn toàn mới.
• Giảm chi phí truyền thông:
Một số ứng dụng địa phương có khả năng giảm chi phí truyền thông, vì vậy việc tối ưu hóa tính địa phương trong thiết kế cơ sở dữ liệu phân tán trở thành một trong những mục tiêu chính.
Sự tồn tại của các bộ xử lý địa phương được đảm bảo thông qua việc xử lý song song, không chỉ áp dụng cho hệ đa xử lý mà còn cho các cơ sở dữ liệu phân tán CSDL phân tán mang lại lợi ích trong việc phân tích dữ liệu, tối ưu hóa tính địa phương của ứng dụng và giảm thiểu tác động giữa các bộ xử lý Công việc được phân chia giữa các bộ xử lý khác nhau, giúp tránh tắc nghẽn trong mạng truyền thông và các dịch vụ chung của hệ thống Sự phân tán dữ liệu không chỉ phản ánh hiệu quả mà còn làm tăng tính địa phương của các ứng dụng.
• Độ tin cậy và tính sẵn dùng
Cách tiếp cận cơ sở dữ liệu phân tán, đặc biệt là với dữ liệu dư thừa, nhằm nâng cao độ tin cậy và khả năng sẵn có Tuy nhiên, việc đạt được mục tiêu này không hề đơn giản và yêu cầu áp dụng các kỹ thuật phức tạp.
Hỏng hóc trong cơ sở dữ liệu phân tán thường xảy ra nhiều hơn do có nhiều thành phần cấu thành, nhưng tác động của từng hỏng hóc chỉ ảnh hưởng đến các ứng dụng sử dụng dữ liệu từ trạm gặp sự cố Tuy nhiên, sự hỏng hóc toàn bộ hệ thống là điều hiếm khi xảy ra.
CSDL phân tán là sự tập hợp các dữ liệu thuộc cùng một hệ thống về mặt lôgic nhưng trải ra ở các trạm của mạng máy tính.
CÁC KHÁI NIỆM PHÂN TÁN DỮ LIỆU
LÝ DO PHÂN ĐOẠN
Từ góc độ phân tán dữ liệu, việc phân đoạn dữ liệu không thực sự cần thiết Trong các hệ thống tập tin phân tán, quá trình phân tán dựa trên toàn bộ tập tin Trước đây, vấn đề này đã được giải quyết bằng cách phân bổ các tập tin cho các nút trong mạng máy tính.
Đối với kỹ thuật phân đoạn, việc chọn một đơn vị phân tán phù hợp là rất quan trọng Một quan hệ không đáp ứng yêu cầu này vì khung nhìn của các ứng dụng thường chỉ là một tập con của quan hệ Do đó, đơn vị truy xuất không phải là toàn bộ quan hệ mà chỉ là tập con của nó Vì vậy, việc xem xét tập con của quan hệ như một đơn vị phân tán là sự lựa chọn hợp lý duy nhất.
Khi các ứng dụng có khung nhìn định nghĩa trên một quan hệ cụ thể nhưng ở vị trí khác nhau, có hai lựa chọn cho đơn vị phân tán là toàn bộ quan hệ Lựa chọn đầu tiên là không nhân bản quan hệ mà lưu trữ ở một vị trí, tuy nhiên điều này có thể dẫn đến nhiều truy xuất không cần thiết đến dữ liệu từ xa Ngược lại, nếu chọn cách nhân bản quan hệ cho tất cả hoặc một số vị trí, điều này có thể gây ra nhân bản không cần thiết, dẫn đến khó khăn trong việc cập nhật và lãng phí không gian lưu trữ.
Việc phân rã một quan hệ thành nhiều đoạn cho phép xử lý từng đoạn như một đơn vị, từ đó thực hiện nhiều giao dịch đồng thời và tăng cường hiệu suất hệ thống Phân đoạn cũng giúp thực hiện song song các câu truy vấn bằng cách chia nhỏ thành các truy vấn con hoạt động trên các đoạn, nâng cao mức độ hoạt động đồng thời Tuy nhiên, việc phân đoạn cũng có những khiếm khuyết, đặc biệt khi ứng dụng có yêu cầu xung đột, dẫn đến giảm hiệu suất khi phải truy xuất dữ liệu từ nhiều đoạn và kết hợp chúng lại với chi phí cao Do đó, việc tránh những vấn đề này là một thách thức quan trọng trong kỹ thuật phân đoạn.
Vấn đề kiểm soát dữ liệu ngữ nghĩa, đặc biệt là kiểm tra tính toàn vẹn, là một thách thức lớn Khi dữ liệu bị phân đoạn, các thuộc tính liên quan đến phụ thuộc có thể bị chia tách và lưu trữ ở những vị trí khác nhau Do đó, việc kiểm tra các phụ thuộc trở nên phức tạp hơn, yêu cầu phải truy tìm dữ liệu từ nhiều nguồn khác nhau.
CÁC KIỂU PHÂN ĐOẠN
Trong quan hệ, bảng là biểu hiện chính, vì vậy việc chia bảng thành nhiều bảng nhỏ là rất quan trọng Hiện có hai phương pháp chia bảng: chia theo chiều dọc và chia theo chiều ngang Chia bảng theo chiều dọc tạo ra các quan hệ con, mỗi quan hệ chứa một tập con thuộc tính của quan hệ gốc, được gọi là phân đoạn dọc Ngược lại, phân chia ngang tạo ra các quan hệ con chứa một số bộ của quan hệ gốc, được gọi là phân đoạn ngang.
Ngoài hai phương pháp đã đề cập, còn tồn tại một phương pháp hỗn hợp, kết hợp giữa hai phương pháp trên Quá trình phân đoạn này liên quan chặt chẽ đến vấn đề phân bố và từng bài toán cụ thể.
MỨC ĐỘ PHÂN ĐOẠN
Quyết định về mức độ phân đoạn cơ sở dữ liệu là rất quan trọng, ảnh hưởng đến hiệu suất truy vấn Mức độ phân đoạn có thể dao động từ không phân đoạn đến phân đoạn ngang hoặc dọc Việc xác định mức độ phân đoạn phù hợp cần dựa trên các ứng dụng sẽ chạy trên cơ sở dữ liệu Để thực hiện điều này, các ứng dụng cần được đặc trưng qua một số tham số, từ đó giúp xác định các đoạn dữ liệu cụ thể.
CÁC QUY TẮC PHÂN ĐOẠN ĐÚNG ĐẮN
Khi thực hiện quá trình chuẩn hóa, cần chú ý đến các quy tắc nhằm đảm bảo tính nhất quán của cơ sở dữ liệu Một điểm quan trọng là nhận diện sự tương đồng giữa phân đoạn dữ liệu trong môi trường phân tán và chuẩn hóa các quan hệ Do đó, có thể định nghĩa các quy tắc phân đoạn tương tự như quy tắc chuẩn hóa quan hệ.
Chúng ta sẽ tuân thủ ba quy tắc trong quá trình phân đoạn để đảm bảo rằng cơ sở dữ liệu không thay đổi về ngữ nghĩa.
Tính đầy đủ: Nếu thể hiện một quan hệ R được phân rã thành các đoạn R1,
Trong quá trình phân rã dữ liệu, mỗi mục dữ liệu trong quan hệ R có thể xuất hiện trong một hoặc nhiều đoạn Ri, tương tự như tính chất phân rã nối không mất trong chuẩn hóa Đặc tính này cực kỳ quan trọng vì nó đảm bảo rằng dữ liệu trong quan hệ R được ánh xạ chính xác vào các đoạn, từ đó bảo vệ thông tin không bị mất mát.
Tính tái sử dụng: Nếu một quan hệ R được phân ra thành các mảnh R1, R2,
R3,…Rn, thì cần phải định nghĩa một toán tử quan hệ ∇ sao cho R= R∇ i, ∀
Ri∈F, với toán tử thay đổi theo từng loại phân đoạn, điều quan trọng là phải xác định rõ ràng nó Khả năng tái thiết quan hệ từ các đoạn đảm bảo rằng các ràng buộc định nghĩa trên dữ liệu dưới dạng phụ thuộc sẽ được bảo toàn.
Tính tách biệt: Nếu quan hệ R được phân rã ngang thành các đoạn R1, R2,
R3,…Rn và mục dữ liệu di nằm trong đoạn Rj, thì nó sẽ không nằm trong đoạn
Tiêu chuẩn Rk nào khác (k≠j) đảm bảo sự tách biệt giữa các đoạn ngang Trong trường hợp quan hệ được phân rã dọc, các thuộc tính khóa chính cần phải được lặp lại trong từng đoạn Do đó, trong phân đoạn dọc, tính tách biệt chỉ được xác định trên các trường hợp không phải là khóa chính của một quan hệ.
CÁC KIỂU CẤP PHÁT
Trong quá trình phân đoạn tích hợp cơ sở dữ liệu, việc quyết định cấp phát các đoạn cho các vị trí trên mạng là rất quan trọng Dữ liệu có thể được nhân bản hoặc chỉ duy trì một bản duy nhất, với việc nhân bản nhằm đảm bảo độ tin cậy và hiệu quả cho các câu truy vấn chỉ đọc Nhiều bản sao của một mục dữ liệu giúp truy xuất dữ liệu ngay cả khi hệ thống gặp sự cố, đồng thời cho phép thực hiện các câu truy vấn chỉ đọc song song nhờ sự phân bố bản sao Tuy nhiên, câu truy vấn cập nhật có thể gây rắc rối do yêu cầu đồng bộ hóa tất cả các bản sao Do đó, quyết định nhân bản cần cân nhắc dựa trên tỷ lệ giữa câu truy vấn chỉ đọc và câu truy vấn cập nhật, ảnh hưởng đến tất cả các thuật toán của hệ quản trị cơ sở dữ liệu phân tán và các chức năng kiểm soát khác.
Xử lý vấn tin Dễ
Quản lý thư mục Dễ hoặc không tồn tại Điều khiển đồng thời Vừa phải Khó Dễ Độ khả tín Rất cao Cao Thấp
Tính thực tế Có thể áp dụng Thực tế Có thể áp dụng
Hình 5 : So sánh các lựa chọn nhân bản
Cơ sở dữ liệu không nhân bản, hay còn gọi là cơ sở dữ liệu phân hoạch, chỉ chứa một bản sao duy nhất cho mỗi mảnh trên mạng, với các mảnh được cấp phát cho các vị trí khác nhau Ngược lại, trong cơ sở dữ liệu nhân bản hoàn toàn, toàn bộ cơ sở dữ liệu được lưu trữ tại mỗi vị trí, trong khi cơ sở dữ liệu nhân bản một phần có thể có nhiều bản sao của một mảnh tại các vị trí khác nhau Số lượng bản sao của một mảnh có thể được sử dụng như thông tin đầu vào cho thuật toán cấp phát hoặc là một biến quyết định được xác định bởi thuật toán đó.
Cùng mức độ khó khắn
Cùng mức độ khó khắn
Khái niệm phân tán dữ liệu trong các hệ thống phân tán được nghiên cứu nhằm nâng cao hiệu suất xử lý, đặc biệt trong việc quản lý thông tin tập trung Quá trình phân tán dữ liệu bao gồm hai bước chính: (1) phân đoạn dữ liệu, hay còn gọi là nhóm dữ liệu, là việc chia một cơ sở dữ liệu thành nhiều đoạn nhỏ hơn; và (2) phân bố dữ liệu, diễn ra sau phân đoạn, nhằm tìm kiếm cách tối ưu để phân phối các đoạn đến các trạm, đáp ứng các yêu cầu cụ thể.
• Các ràng buộc xử lý
Kỹ thuật phân tán dữ liệu đóng vai trò quan trọng trong nhiều lĩnh vực, nơi mà mối liên hệ giữa dữ liệu và vấn tin ảnh hưởng đến hiệu suất Các ứng dụng bao gồm việc phân đoạn tệp trong môi trường tập trung và phân tán dữ liệu trong các cơ sở dữ liệu phân tán Phân đoạn dữ liệu được chia thành hai loại chính: phân đoạn dọc và phân đoạn ngang Phân đoạn dọc kết hợp các thuộc tính dữ liệu thành nhóm dựa trên một số thuộc tính nhất định, trong khi phân đoạn ngang tổ chức các bản ghi của quan hệ thành các nhóm khác nhau.
CÁC KỸ THUẬT PHÂN TÁN DỮ LIỆU
KỸ THUẬT PHÂN ĐOẠN
Trong bài viết này, chúng ta sẽ khám phá các chiến lược và thuật toán phân đoạn, bao gồm hai phương pháp chính: phân đoạn ngang (Horizontal Fragmentation) và phân đoạn dọc (Vertical Fragmentation).
(1) Phân đoạn ngang nguyên thủy Primary Horizontal Fragmentation: Của - một quan hệ được thực hiện dựa trên các vị từ được định nghĩa trên quan hệ[1]
(2) Phân đoạn ngang dẫn xuất-Derived Horizontal Fragmentation: Là phân rã một quan hệ dựa trên các vị từ được định nghĩa trên một quan hệ khác[1]
Chương 3 này, chúng ta sẽ xem xét một thuật toán để thực hiện cả hai kiểu phân đoạn Tuy nhiên, trước tiên chúng ta phải thu thập thông tin cần thiết để thực hiện phân đoạn ngang.
3.1.1 YẾU CẦU THÔNG TIN VỀ PHÂN ĐOẠN NGANG : Đối với phân đoạn ngang, yêu cầu thông tin quan trọng nhất bao gồm: (1) thông tin về cơ sở dữ liệu và (2) thông tin về ứng dụng
3.1.1.1: THÔNG TIN VỀ CƠ SỞ DỮ LIỆU :
Cơ sở dữ liệu đề cập đến lược đồ khái niệm toàn cục, trong đó các quan hệ được kết nối với nhau thông qua phép nối Trong mô hình quan hệ, các mối liên hệ này được biểu thị một cách tường minh, giúp dễ dàng nhận diện Để thiết kế phân tán, các mối liên hệ cũng cần được mô hình hóa trong bộ khung quan hệ, cho phép vẽ các đường nối có hướng giữa các quan hệ liên quan thông qua một nối bằng.
Ví dụ: Một cơ sở dữ liệu gồm có các quan hệ: PAY, EMP, PROJ, và ASG
Mối liên hệ giữa các quan hệ được thể hiện qua các đường nối, trong đó hướng của đường nối chỉ ra mối quan hệ nhiều - nhiều Ví dụ, mỗi chức vụ (Title) có thể có nhiều nhân viên (EMP) giữ chức vụ đó, vì vậy chúng ta vẽ một đường nối giữa quan hệ PAY và EMP Mối quan hệ nhiều - nhiều giữa EMP và PROJ được biểu diễn bằng hai đường nối đến quan hệ ASG Đường nối giữa các đối tượng cơ sở dữ liệu, trong trường hợp này là các quan hệ, được thể hiện dưới dạng đồ thị nối Quan hệ nằm tại đuôi đường nối được gọi là chủ nhân (owner), trong khi quan hệ ở đầu đường nối gọi là thành viên (member) Một số thuật ngữ phổ biến trong mô hình mạng là "quan hệ nguồn" cho chủ nhân và "quan hệ đích" cho thành viên Chúng ta định nghĩa hai hàm owner và member, là các ánh xạ từ tập các đường nối đến các tập quan hệ, giúp xác định quan hệ thành viên hoặc quan hệ chủ nhân tương ứng với đường nối đã cho.
P3 Star-Cell 350000 Hồ Chí Minh
E1 Koeu Sokmeak Lập trình viên
E2 Pich sothea Kỹ sư hệ thống
E3 Leng phirak Kỹ sư điện
E4 Teng samak Kỹ sư mạng máy tính
E5 Tek Limchheng Lập trình viên
E6 Mao ngoy Kỹ sư hệ thống
E7 Deng dara Kỹ sư điện
E8 Touch kimse Kỹ sư hệ thống
E4 P2 Kỹ sư mạng máy tính 18
Cho trước đường nối L1, trong hình biểu diễn mối liên hệ các quan hệ, thì các hàm owner và memer sẽ trả về kết quả sau:
Hình 7 : Biểu diễn mối liên hệ giữa các quan hệ nhờ các đường nối.
Trong quá trình phân đoạn, thông tin về ứng dụng là yếu tố quan trọng bên cạnh cơ sở dữ liệu Thông tin về ứng dụng được chia thành hai loại: thông tin định tính, giúp hướng dẫn hoạt động phân đoạn, và thông tin định lượng, chủ yếu phục vụ cho mô hình cấp phát.
Pj:Ai Ɵvalue, trong đó Ɵ∈{=, , ≥},
L2 L3 và value được chọn là miền biến thiên của Ai-Value D∈ i Chúng ta ký hiệu
Pri để biểu thị tập tất cả các vị từ đơn giản được định nghĩa trên quan hệ Ri Các phần tử của Pri ký hiẹu là Pij
Ví dụ: Cho quan hệ PROJ như trong hình 6 :
• BUDGET ≤ 2000 : là các vị từ đơn giản.
Mặc dù các vị từ đơn giản dễ xử lý, các câu truy vấn thường chứa nhiều vị từ phức tạp, là tổ hợp của các vị từ đơn giản Tổ hợp này được gọi là vị từ hội sơ cấp, là hội của các vị từ đơn giản Việc biến đổi một biểu thức boolean thành dạng chuẩn hội cho phép sử dụng vị từ hội sơ cấp trong thuật toán thiết kế mà không làm mất đi tính tổng quát.
Tập Pri={Pi1, Pi2, Pi3,…Pin} bao gồm các vị từ đơn giản trên quan hệ Ri, trong khi tập các vị từ hội sơ cấp Mi={mi1, mi2, mi3,…miz} được định nghĩa dựa trên các yếu tố liên quan đến Pri.
Mi={mij| mij= p*Λ ik, pik∈Pri} với 1≤k≤n, 1≤j≤z,
Trong đú p*ik=pik hoặc p*ik= ơpik
Vì thế mỗi vị từ đơn giản có thể xuất hiện trong vị từ hội sơ cấp dưới dạng tự nhiên hoặc dạng phủ định
Một điểm quan trọng cần chú ý ở đây: tham chiếu đến phủ định của vị từ sẽ có nghĩa đối với các vị từ đẳng thức dạng:
Attribute= Value Đối với vị từ bất đẳng thức, phủ định được xử lý như phần bù, chẳng hạn, phủ định của vị từ đơn giản
Attribute ≤ Value sẽ là Attribute > Value
Ví dụ : nếu hai vị từ đơn giản :
Attribute_1 ≤ Cận_trên Được định nghĩa, phần bù của chúng là :
Tuy nhiên hai vị từ ban đầu có thể được viết là :
Cận_dưới≤Attribute_1≤Cận_trên
Với phần bự của nú :ơ( Cận_dưới≤Attribute_1≤Cận_trờn)
Không dễ gì định nghĩa được Vì vậy, nghiên cứu trong lĩnh vực này vẫn chỉ xem xét các vị từ đẳng thức đơn giản
Ví dụ : Chúng ta xem quan hệ PAY Dưới đây là các vị từ đơn giản có thể định nghĩa được trên PAY :
• P2 : TITLE = ‘Kỹ sư hệ thống’
Dưới đây là các vị từ hội sơ cấp được định nghĩa dựa trên các vị từ đơn giản này :
• m1: TITLE=’ Lập trình viên’ ΛSAL≤ 30000
• m2 : TITLE= ‘Lập trình viên’ Λ SAL > 30000
• m3 : ơ( TITLE= ‘Lập trỡnh viờn’) ΛSAL≤ 30000
• m4: ơ( TITLE= ‘Lập trỡnh viờn’) SAL > 30000 Λ
• m5: TITLE = ‘Kỹ sư hệ thống’ ΛSAL≤ 30000
Kỹ sư hệ thống là một vị trí có mức lương trên 30,000 đô la, tuy nhiên cần lưu ý rằng không phải tất cả các từ trong hội sơ cấp đều có thể được định nghĩa rõ ràng Chúng tôi chỉ trình bày một mẫu đại diện cho vị trí này Ngoài ra, một số thuật ngữ có thể không liên quan đến ngữ nghĩa của quan hệ PAY.
Theo những thông tin định tính về các ứng dụng, chúng ta cần biết hai tập dữ liệu[1]:
Miniterm Selectivity đề cập đến số lượng bộ của quan hệ được truy xuất bởi câu truy vấn dựa trên một vị từ hội sơ cấp nhất định Ví dụ, độ tuyển của m1 là 0 vì không có bộ bào trong PAY thỏa mãn vị từ này, trong khi độ tuyển của m2 là 1 Độ tuyển của một hội sơ cấp được ký hiệu là mi sel(mlà i).
Tần số truy xuất (Access Frequency) là chỉ số quan trọng phản ánh mức độ ứng dụng truy xuất dữ liệu Đối với tập hợp các câu truy vấn Q={q1, q2, q3,…qn}, tần số truy xuất của mỗi câu truy vấn được ký hiệu là acc(qi) trong một khoảng thời gian xác định Bên cạnh đó, tần số truy xuất của hội sơ cấp cũng có thể được xác định dựa trên tần số của các truy vấn và được ký hiệu là acc(mi).
3.1.2 PHÂN LOẠI PHÂN ĐOẠN NGANG :
Chúng ta phân chia phân đoạn ngang thành hai loại:
(1)Phân đoạn ngang nguyên thủy, và
(2)Phân đoạn ngang dẫn xuất
3.1.2.1 PHÂN ĐOẠN NGANG NGUYÊN THỦY:
3.2 PHƯƠNG PHÁP PHÂN ĐOẠN DỌC AVP[13]
Bây giờ cần phải kiểm tra các thuật toán phân đoạn theo 3 tiêu chuẩn sau:
Tính đầy đủ của một phân đoạn ngang nguyên thủy phụ thuộc vào các vị từ chọn được sử dụng Nếu các vị từ chọn đầy đủ, các đoạn thu được cũng sẽ đảm bảo tính đầy đủ Thuật toán phân đoạn dựa trên một tập hợp các vị từ cực tiểu và đầy đủ Pr', do đó, tính đầy đủ sẽ được đảm bảo miễn là không có sai sót trong việc định nghĩa Pr’.
Tính đầy đủ của một phân đoạn ngang dẫn xuất có sự khác biệt nhất định, do vị từ định nghĩa phân đoạn liên quan đến hai mối quan hệ Để định nghĩa quy tắc đầy đủ một cách hình thức, cần xem xét các yếu tố liên quan.
Trong mối quan hệ giữa R và S, R được xác định là quan hệ thành viên của đường nối, trong đó S được phân đoạn thành các phần tử Fs={S1, S2, S3,… Sn} Thuộc tính nối giữa R và S được ký hiệu là A Để đảm bảo tính nhất quán, với mỗi bộ t của R, cần tồn tại một bộ t’ của S sao cho giá trị của thuộc tính A trong t và t’ là giống nhau, tức là t[A]=t’[A].
Tính tách rời của phân đoạn ngang nguyên thủy dễ dàng đạt được hơn so với phân đoạn ngang dẫn xuất Trong trường hợp phân đoạn nguyên thủy, tính tách rời được đảm bảo miễn là các vị từ hội sơ cấp xác định phân đoạn có tính loại trừ.
3.2 PHƯƠNG PHÁP PHÂN ĐOẠN DỌC AVP [13]
Phân đoạn dọc là quá trình tạo ra các đoạn từ thuộc tính của quan hệ, được nghiên cứu rộng rãi trong các lĩnh vực như cơ sở dữ liệu và hệ thống phân tán Mục tiêu chính của các phương pháp này là cải thiện hiệu suất thực thi câu truy vấn và tăng cường thông lượng hệ thống Tuy nhiên, hầu hết các nghiên cứu trước đây chỉ tập trung vào kỹ thuật phân đoạn dọc Best-fit, nhằm sản xuất một phân đoạn tối ưu mà không xem xét số lượng đoạn cần tạo ra Trong nhiều trường hợp, số lượng đoạn cũng là một yêu cầu quan trọng của người sử dụng Luận văn này giới thiệu thuật toán phân đoạn dọc n-way, nhằm đáp ứng nhu cầu này.
Trong bài luận văn này, chúng tôi giới thiệu một phương pháp phân đoạn dọc thích nghi (AVP), một kỹ thuật linh hoạt hỗ trợ cả phân đoạn dọc Best-fit và phân đoạn dọc n-way.
3.2.1 CÁC LÝ DO CHỌN AVP
Kỹ thuật phân đoạn dọc có hai hướng chính: hướng thứ nhất là phân đoạn dọc best-fit, tập trung vào việc tối thiểu hóa chi phí xử lý mà không quan tâm đến số lượng đoạn sinh ra; hướng thứ hai là phân đoạn dọc n-way, yêu cầu số đoạn phải được xác định trước bởi người sử dụng Trong khi phân đoạn dọc best-fit đã được nghiên cứu rộng rãi bởi nhiều tác giả như Balasundaram, Sacca, Cornell, Simonet và Navathe, thì phân đoạn dọc n-way lại ít được đề cập Để tối ưu hóa việc sử dụng tài nguyên trong hệ thống mạng máy tính với k trạm, cần tạo ra ít nhất k đoạn dữ liệu để phân phối hiệu quả trên các trạm, đồng thời hỗ trợ phân đoạn n-way Trong luận văn này, chúng tôi chọn AVP vì ba lý do chính.
Hầu hết các phương pháp phân đoạn dọc hiện có chỉ hỗ trợ phân đoạn dọc best-fit Một phương pháp phân đoạn dọc được xem là hiệu quả nhất khi nó có khả năng hỗ trợ cả phân đoạn dọc n way và phân đoạn dọc best-fit.
Các phương pháp phân đoạn dọc trước đây, như của tác giả Navathe, cung cấp phân đoạn dọc n-way chỉ trong một số trường hợp nhất định Thuật toán phân đoạn dọc nhị phân (BVP) do Navathe đề xuất hỗ trợ n-way, nhưng không thể hoạt động nếu giá trị của hàm mục tiêu không dương Điều này dẫn đến việc BVP không thể hỗ trợ phân đoạn dọc n-way trong nhiều trường hợp lặp Hơn nữa, BVP cũng không cung cấp hướng dẫn rõ ràng về việc chọn các đoạn trong mỗi tiến trình lặp.
Khi muốn nhận 3 đoạn dữ liệu từ một quan hệ, ít nhất phải thực hiện 2 lần lặp Sau vòng lặp đầu tiên, chúng ta có 2 đoạn FS1 và FS2, và chúng sẽ được phân đoạn độc lập Tuy nhiên, vì chỉ cần 3 đoạn, nên chỉ nên chọn một trong hai đoạn để tiếp tục phân đoạn Thực tế, BVP không cung cấp lựa chọn này, dẫn đến kết luận rằng BVP không thể giải thích hợp cho bài toán phân đoạn dọc n-way Do đó, vòng lặp sử dụng BVP không phải là giải pháp hoàn toàn cho bài toán phân đoạn dọc n-way.
• (3) AVP có khả năng hỗ trợ cả phân đoạn dọc n way lẫn phân đoạn dọc best- - fit chỉ trong một thuật toán
3.2.2 CÁC YÊU CẦU VỀ THÔNG TIN
Chúng ta có thể thực hiện phân đoạn một quan hệ theo hướng dọc dựa trên thông tin giao dịch và các câu truy vấn Một quan hệ là thực thể bao gồm các thuộc tính, những thuộc tính này đóng vai trò quan trọng trong thuật toán phân đoạn dọc Các thuộc tính có thể là dữ liệu đơn, và phân đoạn dọc là quá trình tạo ra các đoạn, mỗi đoạn bao gồm các thuộc tính thường được truy xuất qua các câu truy vấn Đối với thuật toán phân đoạn dọc AVP, cần các thông tin cụ thể để thực hiện hiệu quả.
• R(a1, a2, …, an): Là quan hệ bao gồm n thuộc tính.
• Q= {q1, q2, …qs}: Là tập câu truy vấn sẽ chạy trên quan hệ R
• F= {f1, f2,…, ft}: Tần xuất fi của mỗi truy vấn qi
Trong phân đoạn đọc, có hai loại phân đoạn dữ liệu: Non-overlapping và Overlapping Phân đoạn Non-overlapping chỉ chia sẻ các thuộc tính khóa chính, trong khi phân đoạn Overlapping có nhiều thuộc tính được chia sẻ giữa các đoạn Mặc dù phân đoạn Non-overlapping được sử dụng rộng rãi trong nhiều ứng dụng, nó cũng có khả năng mở rộng để hỗ trợ phân đoạn Overlapping Trong khuôn khổ văn bản này, chúng tôi sẽ tập trung vào phương pháp phân đoạn dọc nhằm tạo ra các đoạn kiểu Non-overlapping.
Mục tiêu của phân đoạn dọc trong hệ thống phân tán là cải thiện hiệu năng thực thi câu truy vấn và tăng thông lượng toàn hệ thống Hiệu suất thực thi câu truy vấn liên quan chặt chẽ đến việc tối thiểu hóa chi phí truy xuất dữ liệu, trong đó tần suất truy vấn để lấy dữ liệu là yếu tố chính ảnh hưởng đến chi phí này Do đó, để nâng cao hiệu năng, cần giảm thiểu tần suất truy vấn Bên cạnh đó, để tăng thông lượng hệ thống, cần tối đa hóa mức độ chạy song song của các câu truy vấn, vì chúng thường hoạt động trên các phần dữ liệu khác nhau Việc cắt giảm tần suất truy xuất giữa các câu truy vấn sẽ giúp tăng cường khả năng xử lý song song Từ đó, chúng ta có thể định nghĩa mô hình chi phí nhằm đạt được hai mục tiêu này.
Hàm mục tiêu: Min[c avg(#DF) + avg(#IA)], trong đó:
#DF: Tổng tần suất để truy xuất các đoạn khác nhau avg(#DF): Trung bình #DF cho mỗi câu truy vấn dữ liệu.
KỸ THUẬT PHÂN BỐ DỮ LIỆU
Bài toán phân bố dữ liệu ra đời từ năm 1974 khi Eswaran đề xuất khái niệm phân đoạn dữ liệu Đến những năm 1983 và 1984, các nhà nghiên cứu như Navathe và Ceri đã phát triển các kỹ thuật phân đoạn dọc và phân đoạn ngang Khái niệm này trở thành một chủ đề nghiên cứu quan trọng trong lĩnh vực dữ liệu.
So et 1999, Bakker 2000, Ahmad et 2002, và Chang 2002.
Trong nghiên cứu thiết kế cơ sở dữ liệu (CSDL), việc phân bố dữ liệu là một vấn đề quan trọng cần được xem xét Trong môi trường tĩnh, xác suất truy cập đến các nút không thay đổi, trong khi trong môi trường động, các giá trị này luôn biến đổi theo thời gian Các nghiên cứu trước đây về phân bố dữ liệu chỉ cung cấp cái nhìn hạn chế về sự phân phối và mô tả quá trình này với thời gian phản hồi tối thiểu Năm 1995, tác giả Brunstorm đã đề xuất thuật toán phân bố dữ liệu động, nhưng mô hình này vẫn thiếu rõ ràng trong phân tích thuật toán.
Phần 4.2 của chương này trong luận văn sẽ tóm tắt các khái niệm và mô hình phân bố dữ liệu từ luận văn của thạc sỹ Nguyễn Thị Thu Hà Tiếp theo, phần 4.3 sẽ nghiên cứu hai đề xuất mới về thuật toán phân bố dữ liệu động cho các hệ CSDL phân tán, bao gồm thuật toán phân bố dữ liệu động do Brunstorm đề xuất và thuật toán ngưỡng (Threshold Algorithm) Mục tiêu của thuật toán ngưỡng là khắc phục nhược điểm của thuật toán Brunstorm Cuối chương sẽ trình bày ưu, nhược điểm của các thuật toán và mô tả các mô phỏng tương ứng.
4.2 MÔ HÌNH VÀ MỘT SỐ VẤN ĐỀ CƠ BẢN LIÊN
QUAN ĐẾN PHÂN BỐ DỮ LIỆU
Trong một mạng máy tính với các trạm S = (S1, S2, …, Sm) và một tập hợp các đoạn F = (F1, F2, F3, …, Fn), nhiệm vụ phân bố là tìm ra phương pháp tối ưu để phân phối các đoạn F trên các trạm S, nhằm đảm bảo rằng các ứng dụng Q = (q1, q2, …, qq) được thực hiện hiệu quả nhất.
Một vấn đề rất quan trọng cần phải xem xét đó là định nghĩa về tính tối ưu Tính tối ưu được xác định theo tiêu chuẩn sau đây:
Để tối thiểu hóa giá thành, hàm đánh giá cần xem xét các chi phí liên quan đến việc sắp xếp mỗi đoạn Fi tại trạm Sj, thực hiện truy vấn Fi tại trạm Sj, cập nhật lại Fi tại tất cả các trạm khi có sự thay đổi, và chi phí truyền dữ liệu Vấn đề phân bố đặt ra yêu cầu tìm ra một sơ đồ phân bố hợp lý nhằm giảm thiểu tất cả các chi phí này.
Chiến lược phân bố được thiết kế nhằm duy trì ma trận hiệu suất, đáp ứng hai vấn đề quan trọng: tối thiểu hóa thời gian phản hồi của các ứng dụng và tối đa hóa thông tin mà hệ thống cung cấp cho mỗi trạm.
Hãy xem xét một công thức đơn giản với S và F là tập hợp các đoạn và trạm đã được định nghĩa Tại thời điểm khởi đầu, chúng ta chỉ tập trung vào một đoạn riêng biệt Fk Dưới đây là một số định nghĩa và giả thuyết giúp mô hình hóa bài toán phân bố.
• (a) Ta giả sử rằng Q bao gồm một tập 2 kiểu ứng dụng, đó là các ứng dụng chỉ đọc và các ứng dụng cập nhật
Trong mỗi đoạn riêng biệt Fk, ta có tập hợp T={t1, t2, … tm} chứa các giao dịch chỉ đọc phát sinh tại trạm Si, và tập hợp U={u1, u2, … um} bao gồm các giao dịch cập nhật được thực hiện tại cùng trạm Si đối với đoạn Fk.
• (b) Giả sử rằng chi phí để truyền dữ liệu giữa hai trạm bất kỳ Si và Sj sẽ được tính toán bởi một đơn vị truyền thông
Hơn nữa ta giả sử rằng nó sẽ là khác nhau đối với các ứng dụng cập nhật và các ứng dụng chỉ đọc Ta có định nghĩa sau:
Cij là chi phí truyền thông cho các truy vấn giữa hai trạm Si và Sj, trong khi Cij’ là chi phí cho các thao tác cập nhật giữa hai trạm này.
Chi phí để sắp xếp một đoạn tại trạm Si được định nghĩa là D = {d1, d2, …, dm}, trong đó D là dãy các chi phí lưu trữ của đoạn Fk tại tất cả các trạm.
Giả sử không có giới hạn cho các trạm hoặc kênh truyền thông, vấn đề tối ưu hóa chi phí phân phối sẽ được giải quyết bằng cách tìm kiếm một tập hợp I S, trong đó chứa các bản sao của các đoạn cần lưu trữ Đặt xj là một biến, được xác định rằng nếu đoạn Fk được phân phối đến trạm Sj thì xj sẽ có giá trị xác định, ngược lại sẽ là một giá trị khác.
Khi đó ta phải cực tiểu hoá biểu thức sau: min ) min '
Trong quá trình phân đoạn ngang, chúng ta sẽ xác định sự lựa chọn của đoạn Fj liên quan đến truy vần qi Số bộ của đoạn Fj cần truy nhập để xử lý ứng dụng qi được ký hiệu là seli(Fj).
Một thông tin khác cần phải biết về các đoạn của CSDL đó là kích thước của đoạn với một đoạn Fj ta có :
Size(Fj) = Card(Fj) * length(Fj)
Length(Fj) là độ dài (theo byte) của một bộ trong đoạn Fi
Card (Fj) là số bộ (bản ghi) của đoạn Fj
4.2.2.2 THÔNG TIN VỀ ỨNG DỤNG
Trong quá trình phân đoạn, hầu hết thông tin liên quan đến các ứng dụng đã được xem xét kỹ lưỡng Tuy nhiên, có hai thông tin quan trọng cần được chú ý trong quá trình phân bố.
(1) Số các truy nhập chỉ đọc (RRij) của ứng dụng qi đối với đoạn Fj trong quá trình thực hiện và,
(2) Số truy nhập cập nhật (URij) của ứng dụng qi đối với đoạn Fj
Ta ký hiệu hai ma trận UM (uij) và UR (rij) với các điều kiện như sau: nếu ứng dụng qi cập nhật đoạn Fj, thì thực hiện hành động tương ứng; nếu ứng dụng qi đọc thông tin từ đoạn Fj, thì cũng sẽ có hành động khác.
4.2.2.3 THÔNG TIN VỀ CÁC TRẠM:
Khi đánh giá một trạm máy tính, cần xem xét khả năng lưu trữ dữ liệu và khả năng xử lý của nó Các giá trị này có thể được tính toán hoặc ước lượng một cách đơn giản Chi phí lưu trữ dữ liệu tại trạm Sk được ký hiệu là USCk, trong khi chi phí xử lý một đơn vị công việc tại trạm này được ký hiệu là LPCk Đơn vị công việc được xác định dựa trên kiểu ứng dụng, bao gồm ứng dụng chỉ đọc và ứng dụng chỉ cập nhật.