Cấp phát

Một phần của tài liệu bài giảng về cơ sở dữ liệu nâng cao (Trang 25 - 27)

Bài toán cấp phát:

Giả sử rằng có một tập các mảnh F = {F1, F2,…, FN} và một mạng máy tính bao gồm các vị trị S

= {S1, S2,…, SM} trên đó có một tập các ứng dụng dạng Q = {q1, q2,…, qk} đang chạy. Bài toán cấp

phát là tìm một phân phối “tối ưu” của F cho S.

- Chi phí nhỏ nhất: Hàm chi phí gồm có chi phí lưu mỗi mảnh Fi tại vị trí Sj, chi phí vấn tin Fi

tại vị trí Sj, chi phí cập nhật Fi tại tất cả mọi vị trí chứa nó và chi phí truyền dữ liệu. Vì thế bài toán cấp phát cố gắng tìm một lược đồ cấp phát với hàm chi phí tổ hợp thấp nhất.

- Hiệu quả: Chiến lược cấp phát được thiết kế nhằm duy trì một hiệu quả lớn nhất đó là hạ thấp

thời gian đáp ứng và tăng tối đa lưu lượng hệ thống tại mỗi vị trí.

Nói chung bài toán cấp phát tổng quát là bài toán phức tạp, vì thế các nghiên cứu đều tập trung

tìm ra các giải thuật heuristic tốt để có thể có được các lời giải tối ưu. Để phân biệt bài toán cấp

phát tập tin truyền thống với cấp phát mảnh trong các thiết kế CSDL phân tán, chúng ta gọi bài toán thứ nhất là bài toán cấp phát tập tin, và bài toán sau là bài toán cấp phát CSDL.

Hiện không có một mô hình heuristic tổng quát nào nhận một tập các mảnh và sinh ra một chiến lược cấp phát gần tối ưu ứng với các loại ràng buộc. Các mô hìnhđãđược phát triển chỉ mới đưa ra

một số giả thiết đơn giản hóa và dễ áp dụng cho một số cách đặt vấn đề cụ thể.

Thông tin cho cấp phát:

Thông tin về CSDL:

Để thực hiện phân mảnh ngang, chúng ta đãđịnh nghĩa độ tuyển hội sơ cấp. Bây giờ chúng ta

cần mở rộng định nghĩa đó cho các mảnh và định nghĩa độ tuyển của một mảnh Fjứng với câu vấn

tin qi. Đây là số lượng các bộ của Fj cần được truy xuất để xử lý qi. Giá trị này được ký hiệu là Seli(Fj).

Một loại thông tin khác trên các mảnh là kích thước của chúng. Kích thước một mảnh Fj được

cho bởi: size(Fj) = card(Fj) * Length(Fj)

Trong đó length(Fj) là chiều dài tính theo byte của một bộ trong mảnh Fj

Thông tin về ứng dụng:

Phần lớn các thông tin có liên quan đến ứng dụng đều đã được biên dịch trong khi thực hiện

phân mảnh nhưng cung cần một số ít nữa cho mô hình cấp phát. Hai số liệu quan trọng là số truy

xuất đọc do câu vấn tin qi thực hiện trên mảnh Fj trong mỗi lần chạy của nó – ký hiệu là RRij. Và

tương ứng là các truy xuất cập nhật – ký hiệu là URij.

Chúng ta định nghĩa hai ma trận UM và RM với các phần tử tương ứng uij và rij được đặc tả như

sau

- uij = 1 nếu vấn tin qi có cập nhật mảnh Fj, ngược lại sẽ bằng 0

- rij = 1 nếu vần tin qi cần đọc mảnh Fj, ngược lại sẽ băng 0.

Một vectơ O gồm các giá trị 0(i) cũng được định nghĩa, với 0(i) đặc tả vị trí đưa ra câu vấn tin qi. Cuối cúng để định nghĩa ràng buộc thời gian đáp ứng, thời gian đáp ứng tối đa được phép của (adsbygoogle = window.adsbygoogle || []).push({});

mỗi ứng dụng cũng cần phải được đặc tả.

Thông tin về vị trí:

Với mỗi vị trí chúng ta cần biết về khả năng lưu trữ và xử lý của nó. Hiển nhiên là những giá trị

này có thể được tính bằng các hàm thích hợp hoặc bằng các phương pháp đánh giá đơn giản. Chi phí đơn vị để lưu trữ dữ liệu tại các vị trị Sj được ký hiệu là USCj. Cũng cần phải đặc tả số đo chi

phí LPCj là chi phí xử lý một đơn vị công việc tại vị trí Sj. Đơn vị công việc cần phải giống với đơn

vị của RR và UR. Thông tin về mạng:

Trong mô hình đang xét, chúng ta giả sử có tồn tại một mạng đơn giản, trong đó chi phí

truyền mỗi bó giữa hai vị trí Si và Sj. Để có thể tính được số lượng thông báo, chúng ta dùng fsize

làm kích thước (tính theo byte) của một bó dữ liệu.

Một phần của tài liệu bài giảng về cơ sở dữ liệu nâng cao (Trang 25 - 27)