7. CƠ BẢN VỀ TỐI ƢU HÓA MỘT CÂU HỎI TRUY VẤN
7.2 Tổng quan về tối ƣu hóa câu hỏi
Xét cơ sở dữ liệu quản lý mạng cáp gồm các quan hệ sau: Thông tin về các tuyến cáp: TUYEN (T#, TC, DAI). Thông tin bề các loại cáp: CAP (M#, MC, GIA, NSX).
Thông tin về các loại cáp đã đƣợc lắp đặt: L_DAT (T#, M#, SL, NG) Trong đó:
DAI độ dài tuyến cáp M# mã cáp MC tên gọi cáp GIA đơn giá
NSX nƣớc sản xuất SL số lƣợng cáp láp đặt NG ngày lắp đặt
Để có đƣợc cách nhìn tổng quát của việc tối ƣu hóa câu hỏi, xét ví dụ sau: liệt kê tất cả
các tuyến cáp lắp đặt ở Việt nam.
Biểu thức đại số quan hệ và cây đại số quan hệ đƣợc biểu diễn nhƣ sau:
TTC( MC#‟Viet nam‟(TUYEN X L_DAT) X CAP))
TTC MC#= „Viet nam‟ X X CAP Biểu thúc quan hệ trên mô tả quá trình thực hiện câu hỏi nhƣ sau: Trƣớc hết, biểu thức
tạo ra quan hệ TUYEN X L_DAT X CAP trung gian, bằng cách kết nối tự nhiên hoặc thục hiện tích đề các quan hệ TUYEN, L_DAT và CAP với một số lƣợng bản ghi tích số lƣợng các bản ghi và các thuộc tính bao gồm các thuộc tính của 3 quan hệ trên. Nhƣ vậy sau bƣớc này, quan hệ tạm có lực lƣợng khá lớn và chiều dài của một bản ghi cũng không phải là nhỏ, nếu kích cỡ các quan hệ của nguồn lớn. Tuy nhiên kết quả câu hỏi chỉ quan tâm đế thuộc tính trên tuyến cáp TTC và các bộ dữ liệu có tên loại cáp trùng với “Viet nam”. Nhƣ vậy sau khi tính tích đề các, hệ thống sẽ thực hiện phép chọn và phép chiếu để đƣa ra quan hệ kết quả. Trong cách biểu diễn này,số lƣợng các phép toán thực hiện là tƣơng đối lớn, chi phí thời gian quá cao và chi phí lƣu trữ tốn kém. Chú ý rằng, câu hỏi chỉ quan tâm đến các bộ dữ liệu cáp “Viet nam”. Thông tin này đƣợc chứa trong các quan hệ L_DAT, và CAP(trong nhật kí lắp đặt là mã các loại cáp Viet nam và trong danh mục là chuỗi “Viet nam”). Nhƣ vậy có thể thực hiện các phép chọn trong các quan hệ L_DAT và CAP. Kết quả trung gian các phép chọn sẽ làm
L_DAT TUYEN
giảm đáng kể số lƣợng các bản ghi,kích cỡ của quan hệ của phép kết nối tự nhiên của hai thành phần trung gian trên với quan hệ TUYEN. Càng dễ dàng khi thực hiện phép chiếu trên thuộc tính trên tuyến cáp TTC. Có thể biến đổi biểu thức đại số ban đầu tối ƣu hơn,bằng cách thực hiện các phép chiếu và chọn, tiếp sau mới thực hiện phép kết nối.Kết quả biến đổi nhƣ sau:
π TTC (σ MC# =‟Việt nam‟ (L_DAT) X (σ MC# =‟Việt nam‟( CAP ) X TUYEN))
Biểu thức này tƣơng đƣơng nhƣ biểu thức đại số ban đầu, nhƣng nó tạo ra các quan hệ
trung gian có kích cỡ nhỏ hơn nhiều so với kích cỡ của TUYENX L_DAT XCAP TTC X X TUYEN
MC#= „Viet nam‟ MC#= „Viet nam‟ L_DAT CAP Nhƣ vậy biến đổi một biểu thức đại số quan hệ về một biểu thức đại số quan hệ tƣơng
đƣơng tối ƣu theo nghĩa sẽ cho cùng một kết quả nhƣng với chi phí thời gian thực hiện và sử dụng bộ nhớ ít hơn rất nhiều.