.6 Hoạt động tối ưu trong chiến lược ngẫu nhiên hóa

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu tối ưu truy vấn trong cơ sở dữ liệu phân tán (Trang 53 - 54)

3.2.3 Mô hình chi phí phân tán

Mô hình chi phí của bộ tối ưu bao gồm các hàm chi phí để dự đoán chi phí của các thao tác, thống kê, dữ liệu cơ sở và các công thức để ước lượng kích thước các kết quả trung gian[15].

3.2.3.1 Hàm chi phí

Chi phí của một chiến lược thực thi phân tán có thể được diễn tả ứng với tổng thời gian hoặc ứng với thời gian đáp ứng. Tổng thời gian (total time) là tổng tất cả các thành phần thời gian (còn được gọi là chi phí), còn thời gian đáp ứng (response time) là thời gian tính từ khi kích hoạt đến lúc hoàn thành câu truy vấn. Công thức tổng quát để xác định tổng chi phí được mô tả như sau:

Total_time = TCPU* #insts + TI/O * #I/Os + TMSG* #msgs + TTR* #bytes

Hai thành phần đầu tiên là thời gian xử lý cục bộ, trong đó TCPU là thời gian của một chỉ thị CPU và TI/O là thời gian cho một thao tác xuất nhập đĩa. Thời gian truyền được biểu thị qua hai thành phần cuối cùng. TMSG là thời gian cố định cần để kích hoạt và nhận một thông điệp, còn TTR là thời gian cần để truyền một đơn vị dữ liệu từ trạm này đến trạmkhác. Đơn vị dữ liệu ở đây tính theo byte (#bytelà tổng kích thước củatất cả các thông điệp), nhưng cũng có thể tính theo những đơn vị khác (thí dụ theo gói). Thông thường chúng ta giả thiết TTR là một giá trị không đổi. Điều này có thể không đúng trong các mạng diện rộng (WAN), trong đó một số trạm nằm xa hơn so với một số khác. Tuynhiên giả thiết này làm đơn giản quá trình tối ưu hóa rất nhiều. Vì thế thời gian truyền #byte dữ liệu từ vị trí này đến vị trí khác được giả thuyết là một hàm tuyến tính theo #bytes: CT(#bytes) = TMSG+TTR* #bytes R2 ⊳⊲ ⊳⊲ R3 R1 R3 ⊳⊲ R2 R1 ⊳⊲

Khi thời gian đáp ứng truy vấn là hàm mục tiêu của bộ tối ưu hóa, chúng ta cần phải xét đến vấn đề xử lý cục bộ song song và truyền song song. Công thức tổngquát của thời gian đáp ứng là:

Response_time = TCPU* seq_#insts + TI/O+ seq_#I/Os +TMSG+ seq_#msgs + TTR+ seq_#bytes

Trong đó seq_#x, với x có thể là các chỉ thị (insts), các xuất nhập I/O, các thông điệp(msgs) hoặc bytes, là số lượng x tối đa phải được thực hiện một cách tuần tự khithực hiện truy vấn. Vì vậy mọi xử lý và truyền dữ liệu thực hiện song song đều được bỏ qua.

Ví dụ 3.2: Chúng ta minh họa sự khác biệt giữa tổng chi phí và thời gian đáp

ứng (xem Hình 3.7), trong đó kết quả trả lời được tính tại trạm 3, dữ liệu được lấy từ trạm 1 và trạm 2. Để đơn giản, chúng ta phải giả sử rằng chỉ xét đến chi phí truyền.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu tối ưu truy vấn trong cơ sở dữ liệu phân tán (Trang 53 - 54)

Tải bản đầy đủ (PDF)

(71 trang)