Đặc trưng của bộ xử lý truy vấn

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 112 - 114)

Khú cú thể đỏnh giỏ và so sỏnh độ phức tạp xử lý truy vấn trong cả hai trường hợp cơ sở dữ liệu tập trung [Jarke and Koch, 1984] và phõn tỏn [Sacco and Yao, 1982], [Aper et al, 1983] bởi vỡ chỳng cú nhiều điểm khỏc nhaụ Sau đõy là một số đặc trưng của bộ xử lý truy vấn. Bốn đặc điểm đầu tiờn chung cho cả trường hợp tập trung và trường hợp phõn tỏn.

Bốn đặc điểm tiếp theo là cho bộ xử lý truy vấn phõn tỏn.

5.3.1 Ngụn ngữ (Languages)

Núi chung, cỏc thao tỏc xử lý truy vấn được thực hiện trong hệ quản trị cơ sở dữ liệu

quan hệ (DBMS) bằng ngụn ngữ bậc cao, hệ thống cú khả năng thực hiện tối ưu hoỏ cõu hỏi truy vấn. Ngụn ngữ xử lý truy vấn dựa trờn phộp tớnh đại số quan hệ hay đại số quan hệ, tức là chuyển đổi cõu truy vấn dưới dạng phộp tớnh quan hệ thành đại số quan hệ. Trong mụi

trường phõn tỏn, ngụn ngữ đầu ra là tổ hợp của cỏc phộp đại số quan hệ cơ bản được mở rộng thờm cỏc nguyờn thuỷ truyền thơng. Cỏc phộp tốn của ngụn ngữ này được cài đặt trực tiếp trong hệ thống. Quỏ trỡnh xử lý truy vấn phải thực hiện việc ỏnh xạ một cỏch hiệu quả từ ngụn ngữ đầu vào đến ngụn ngữ đầu rạ

5.3.2 Cỏc kiểu tối ưu hoỏ (Types of Optimization)

Tối ưu hoỏ truy vấn là nhằm mục đớch lựa chọn một giải phỏp tốt nhất trong toàn bộ cỏc giải phỏp cú thể thực hiện. Một phương phỏp tối ưu hoỏ truy vấn cú hiệu quả là tỡm kiếm trong tập cỏc giải phỏp và dự đốn chi phớ của mỗi giải phỏp, lựa chọn giải phỏp cú chi phớ là nhỏ nhất. Tuy nhiờn phương phỏp này phải chi phớ cho chớnh q trỡnh tối ưu hoỏ. Khụng gian sử dụng thực hiện giải phỏp tăng lờn khi số cỏc mảnh quan hệ hay số quan hệ tăng lờn. Vỡ vậy phương phỏp tỡm kiếm vột cạn được sử dụng “Exhaustive” cho với tất cả cỏc giải phỏp cú thể thực hiện được.

Để trỏnh những tỡm kiếm vột cạn cú chi phớ cao, cú cỏc giải phỏp ngẫu nhiờn như

Iterative Improvement [Swami, 1989] và Simulated Annealing [Ioannidis and Wong, 1987]

được đề xuất. Cố gắng tỡm kiếm một giải phỏp tốt, khụng nhất thiết là tốt nhất nhưng trỏnh được chi phớ tối ưu hoỏ quỏ cao về mặt sử dụng bộ nhớ và thời gian thực hiện.

Một giải phỏp làm giảm chi phớ tỡm kiếm vột cạn là sử dụng cỏc giải thuật Heuristics thu hẹp phạm vi tỡm kiếm, chỉ cú một số giải phỏp được xem xột. Trong mụi trường tập trung và phõn tỏn, một giải thuật Heuristics làm giảm kớch thước cỏc quan hệ trung gian bằng cỏch thực hiện cỏc phộp toỏn đơn ngụi trước và sắp xếp thứ tự thực hiến cỏc phộp toỏn hai ngơi theo kớch thước tăng dần của cỏc quan hệ trung gian do chỳng tạo rạ Một cỏch đỏnh giỏ quan trọng trong cỏc hệ phõn tỏn là thay thế phộp kết nối bằng cỏc tổ hợp cỏc nối nửa nhằm giảm thiểu chi phớ truyền thụng dữ liệụ

5.3.3 Thời điểm tối ưu hoỏ (Optimization timing)

Một cõu truy vấn cú thể được tối ưu hoỏ tại cỏc thời điểm khỏc nhau liờn quan đến thời gian thực hiện truy vấn. Việc tối ưu hố cú thể được thực hiện theo kiểu tĩnh (Statically)

trước khi thực hiện truy vấn hoặc theo kiểu động (Dynamically) khi truy vấn được thực

chi phớ của truy vấn cú thể được giảm dần qua nhiều lần thực hiện truy vấn, vỡ đõy là cỏc thời điểm thớch hợp cho phương phỏp tỡm kiếm vột cạn (Exhaustive). Kớch thước của cỏc quan hệ trung gian khụng được biết trước, trước khi thực hiện. Vỡ vậy cần phải được đỏnh giỏ ước lượng theo số liệu thống kờ cơ sở dữ liệụ Cỏc sai sút trong cỏch đỏnh giỏ này là cú thể dẫn đến việc lựa chọn một giải phỏp gần tối ưụ

Việc tối ưu hoỏ động được tiến hành vào thời gian thực hiện truy vấn. Trong cỏc thời điểm thực hiện tối ưu hoỏ truy vấn, việc lựa chọn thao tỏc tiếp theo tốt nhất cho tối ưu hoỏ

truy vấn dựa trờn những thơng tin chớnh xỏc về kết quả của cỏc thao tỏc thực hiện trước đú. Vỡ vậy, cỏc số liệu thống kờ khụng cần thiết cho việc đỏnh giỏ kớch thước của cỏc quan hệ trung gian (nhưng cú ớch trong việc lựa chọn cỏc thao tỏc đầu tiờn).

Ưu điểm của phương phỏp động so với phương phỏp tĩnh là kớch thước thực sự của cỏc

quan hệ trung gian là phự hợp cho bộ xử lý truy vấn. Vỡ vậy sẽ giảm thiểu xỏc xuất cho việc lựa chọn một giải phỏp tồị Nhược điểm của phương phỏp động là cỏc thao tỏc tối ưu hoỏ cú chi phớ caọ Lặp lại nhiều lần cho mỗi thao tỏc. Vỡ vậy phương phỏp này sẽ rất phự hợp cho một số cõu truy vấn đặc biệt.

Cỏc phương phỏp tối ưu hoỏ truy vấn hỗn hợp cú cỏc ưu điểm của tối ưu hoỏ truy vấn tĩnh, trỏnh được cỏc vấn đề được tạo ra bởi cỏc đỏnh giỏ khụng chớnh xỏc gõy rạ Về cơ bản phương phỏp này là tĩnh nhưng quỏ trỡnh truy vấn động cú thể ra lỳc chạy khi phỏt hiện cú sự khỏc biệt lớn giữa kớch thước dự đốn và kớch thước thực tế của cỏc quan hệ trung gian.

5.3.4 Số liệu thống kờ (Statistics)

Tớnh hiệu quả của việc tối ưu hoỏ truy vấn là dựa trờn cỏc số liệu thống kờ về cơ sở dữ liệụ Tối ưu hoỏ truy vấn động cần đến cỏc số liệu thống kờ nhằm chọn cỏc thao tỏc cần

phải thực hiện trước tiờn. Tối ưu hoỏ truy vấn tĩnh cú nhiều yờu cầu hơn, vỡ kớch thước của cỏc quan hệ trung gian phải được đỏnh giỏ dựa trờn cỏc số liệu thống kờ về cơ sở dữ liệụ Trong cơ sở dữ liệu phõn tỏn, cỏc số liệu thống kờ dành cho việc tối ưu hoỏ truy vấn cú liờn quan đến cỏc mảnh, lực lượng và kớch thước của mảnh, cũng như kớch thước và số lượng cỏc giỏ trị phõn biệt của mỗi thuộc tớnh. Để giảm thiểu xỏc xuất lỗi, cần nhiều thụng tin chi tiết hơn như cỏc biểu đồ hỡnh cột cho cỏc giỏ trị thuộc tớnh... Độ chớnh xỏc của số liệu thống kờ phụ thuộc vào việc cập nhật theo chu kỳ. Với phương phỏp tối ưu hoỏ tĩnh, cỏc thay đổi lớn về số liệu thống kờ được sử dụng để tối ưu hoỏ truy vấn cú thể buộc phải tạo lại quỏ trỡnh tối ưu hoỏ truy vấn.

5.3.5 Vị trớ quyết định (Decision sites)

Khi thực hiện việc tối ưu hoỏ truy vấn bằng phương phỏp tĩnh, cú thể sử dụng một vị trớ hay nhiều vị trớ tham gia vào việc chọn một giải phỏp trả lời cõu truy vấn. Hầu hết cỏc hệ thống sử dụng phương phỏp quyết định tập trung, trong đú cú một vị trớ đưa ra giải phỏp. Quỏ trỡnh quyết định cú thể được phõn tỏn cho nhiều vị trớ tham gia vào việc tạo một giải phỏp tốt nhất. Phương phỏp tập trung đơn giản, nhưng đũi hỏi phải biết toàn bộ về cỏc

cỏc vị trớ khỏc đưa ra cỏc quyết định cục bộ. Chẳng hạn như System R* sử dụng cỏch tiếp cận hỗn hợp.

5.3.6 Khai thỏc cấu hỡnh mạng (Exploitation of Network topology)

Trong cỏc mạng diện rộng WAN, hàm chi phớ nhỏ nhất cú thể bị giới hạn bởi chi phớ truyền thụng. Giả thiết này làm đơn giản hoỏ tối ưu hoỏ truy vấn phõn tỏn. Vỡ vậy cú thể tỏch vấn đề này thành 2 vấn đề riờng biệt: lựa chọn giải phỏp thực hiện toàn cục dựa trờn truyền thụng giữa cỏc vị trớ và lựa chọn mỗi giải phỏp thực hiện cục bộ dựa trờn thuật toỏn xử lý truy vấn tập trung.

Trong cỏc mạng cục bộ LAN, chi phớ truyền thơng cú thể so sỏnh với chi phớ vào/rạ Vỡ vậy bộ xử lý truy vấn phõn tỏn tăng quỏ trỡnh thực hiện song song (tất nhiờn chi phớ truyền thụng sẽ nhiều hơn). Khả năng quảng bỏ của cỏc mạng cục bộ được sử dụng cú hiệu quả tối

ưu hoỏ việc xử lý cỏc phộp kết nốị Trong mụi trường Client/Server, mỏy khỏch cú thể được

khai thỏc để thực hiện thao tỏc chuyển đổi cơ sở dữ liệụ Tối ưu hoỏ truy vấn để ra quyết

định một phần của truy vấn sẽ được thực hiện trờn mỏy khỏch.

5.3.7 Khai thỏc cỏc mảnh nhõn bản (Exploitation of Replicated Fragments)

Một quan hệ phõn tỏn thường được chia thành cỏc mảnh quan hệ. Cỏc cõu truy vấn phõn tỏn được mụ tả trờn cỏc quan hệ toàn cục sẽ được ỏnh xạ thành cỏc cõu truy vấn trờn cỏc mảnh vật lý của quan hệ bằng việc chuyển đổi cỏc quan hệ thành cỏc mảnh. Quỏ trỡnh này

được gọi là quỏ trỡnh cục bộ hoỏ. Thường người ta nhõn bản cỏc mảnh ở nhiều vị trớ khỏc

nhaụ Phần lớn cỏc thuật toỏn tối ưu hoỏ đều xem xột quỏ trỡnh cục bộ hoỏ một cỏch độc lập với quỏ trỡnh tối ưu hoỏ. Một số thuật toỏn khỏc tận dụng sự tồn tại của việc nhõn bản trong lỳc chạy để giảm số lần truyền thụng, thuật toỏn tối ưu hoỏ sẽ phức tạp hơn.

5.3.8 Sử dụng nửa kết nối (Use of Semijoint)

Thao tỏc nửa kết nối làm giảm kớch thước của cỏc quan hệ. Khi chi phớ truyền thụng

được quan tõm, thỡ thao tỏc nửa kết nối đặc biệt sẽ làm giảm dữ liệu cần trao đổi giữa cỏc

vị trớ. Tuy nhiờn, việc sử dụng thao tỏc nửa kết nối cú thể dẫn đến việc tăng số lượng cỏc thụng điệp và thời gian xử lý cục bộ. Cỏc thao tỏc nửa kết nối hiệu quả trong cỏc mạng tốc

độ cao, cho phộp giảm cỏc thao tỏc kết nốị Một số thuật toỏn tối ưu hoỏ truy vấn tổ hợp tối ưu kết nối với nửa kết nốị

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 112 - 114)