Bài giảng Cơ sở dữ liệu: Chương 5 - Nguyễn Hồng Phương

4 131 0
Bài giảng Cơ sở dữ liệu: Chương 5 - Nguyễn Hồng Phương

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài giảng Cơ sở dữ liệu - Chương 5: Tối ưu hóa câu truy vấn cung cấp cho người học các kiến thức: Tổng quan về xử lý truy vấn, tối ưu hóa các biểu thức đại số quan hệ. Mời các bạn cùng tham khảo nội dung chi tiết.

1/30/2012 Nội dung • Tổng quan xử lý truy vấn • Tối ưu hóa biểu thức đại số quan hệ Tối ưu hóa câu truy vấn Ng ễn Hồng Phương Nguyễn phuongnh@soict.hut.edu.vn http://is.hut.edu.vn/~phuongnh Bộ môn Hệ thống thông tin Viện Công nghệ thông tin Truyền thông Đại học Bách Khoa Hà Nội NHP Tổng quan xử lý truy vấn Tổng quan xử lý truy vấn (tiếp) • Xử lý truy vấn bao gồm bước chính: – Tối ưu hóa câu truy vấn: Mục tiêu bước –Phân tích Biên dịch câu truy vấn: • Để thực điều này, trước tiên ta cần biến đổi biểu thức ĐSQH đầu vào thành biểu thức ĐSQH tương đương xử lý cách hiệu tốn Bước gọi tối ưu hóa đại số • Tiếp theo đó, ta cần phải đặc tả thuật tốn đặc biệt tiến hành thực thi phép toán , chọn dẫn cụ thể để sử dụng • Các liệu thống kê CSDL giúp ta q trình xem xét lựa chọn Ví dụ như: tối ưu hóa chọn kế hoạch thực câu truy vấn có chi phí thấp Trong bước này, hệ thống phải dịch câu t truy vấn ấ từ dạng d ngôn ô ngữ ữ bậc bậ cao thành ngôn ngữ biểu diễn llệu bên để máy tính thao tác Một biểu diễn bên thích hợp hỗ trợ cho bước tối ưu hóa biểu diễn ngôn ngữ đại số quan hệ NHP NHP Tổng quan xử lý truy vấn (tiếp) – Số quan hệ – Kích thước – Số khối (block) chứa quan hệ – Số quan hệ mà khối chứa – Các thơng tin chế truy nhập, dẫn quan hệ Tổng quan xử lý truy vấn (tiếp) – Thực đánh giá truy vấn: Từ kế hoạch thực có Trình tối ưu hóa cung cấp, hệ thống tiến hành thực thao tác liệu CSDL đưa câu trả lời cho truy vấn • Chi phí cho việc iệc thực truy t vấn ấn đo chi phí sử dụng tài nguyên việc truy cập đĩa, thời gian CPU dùng để thực truy vấn • Trong chương này, tập trung vào việc đánh giá biểu thức đại số quan hệ khơng vào chi tiết việc tính tốn chi phí cho việc thực đánh giá truy vấn NHP Truy vấ n đầu o Biên dòch truy vấn Biể u thứ c ĐSQH Tố i ưu hó a truy vấ n Câ u trả lơ øi truy vấ n Thực hiệ n tìm kiế m dl Thốn g kê dl Kế hoạ ch thự c hieä n CSDL NHP CuuDuongThanCong.com https://fb.com/tailieudientucntt 1/30/2012 Đánh giá biểu thức ĐSQH Đánh giá biểu thức ĐSQH (tiếp) • Sau bước phân tích biên dịch, ta có truy vấn biểu diễn biểu thức đại số quan hệ bao gồm nhiều phép toán tác động lên nhiều quan hệ khác nhau Ta phải tiến hành đánh giá biểu thức Có hướng tiếp cận để thực thi q trình đánh giá biểu thức ĐSQH: • Vật chất hóa: Trong cách tiếp cận – Vật chất hóa (Materialize) – Đường ống (Pipeline) ta đánh giá phép tốn theo thứ tự thích hợp Kết việc đánh giá phép toán lưu quan hệ trung gian tạm thời để sử dụng làm đầu vào cho phép toán theo • Điểm bất lợi cách tiếp cận việc cần thiết phải xây dựng quan hệ trung gian tạm thời quan hệ thường phải ghi đĩa (trừ chúng có kích thước nhỏ) Mà việc đọc ghi đĩa có chi phí lớn NHP NHP Đánh giá biểu thức ĐSQH (tiếp) Đánh giá biểu thức ĐSQH (tiếp) • Đường ống: Chúng ta cải thiện hiệu • Ví dụ: Chúng ta có biểu thức đại số quan hệ gồm phép tốn: kết nối chiếu • Trong cách tiếp cận vật chất hóa, xuất phát từ phép tốn mức thấp phép kết nối tự nhiên, kết phép kết nối lưu quan hệ trung gian Sau , đọc từ q an hệ trung quan t ng gian nà để tiến hành chiếu chiế lấy lấ kết mong muốn • Trong cách tiếp cận đường ống, sinh phép kết nối quan hệ, chuyển trực tiếp đến phép chiếu để xử lý kết ghi vào quan hệ đầu Quan hệ kết tạo lập cách trực tiếp đánh giá truy vấn cách làm giảm bớt số lượng quan hệ trung gian tạm thời tạo Điều đạt nhờ việc kết hợp vài phép toán quan hệ vào đường ống phép toán Trong đường ống kết phép tốn chuyển trực tiếp cho phép toán mà không cần phải lưu lại quan hệ trung gian • Rõ ràng, cách tiếp cận thứ hai hạn chế nhược điểm cách tiếp cận đầu tiên, có trường hợp, ta bắt buộc phải vật chất hóa khơng dùng đường ống NHP Tối ưu hóa biểu thức ĐSQH • Mục tiêu tổ chức lại trình tự thực phép tốn biểu thức để giảm chi phí thực đánh giá biểu thức • Trong q trình tối ưu hóa, ta biểu diễn biểu thức ĐSQH dạng tốn tử Trong nút quan hệ có mặt biểu thức, thức nút phép toán biểu thức • Ví dụ : Đưa tên hãng cung ứng mặt hàng có mã 'P1': Select sname From S, SP Where S.sid = SP.sid And pid = 'P1' • Biểu thức ĐSQH tương ứng là? • Cây toán tử tương ứng là? 11 NHP 10 NHP Các chiến lược tối ưu tổng quát Đẩy phép chọn phép chiếu xuống thực sớm có thể: hai phép tốn giúp làm giảm kích thước quan hệ trước thực phép tốn ngơi Nhóm dãy phép chọn chiếu: Sử dụng chiến lược có dãy phép chọn dãy phép chiến quan hệ Kết hợp phép chọn tích Đề thành phép kết nối: Nếu kết phép tích Đề đối số phép chọn có điều kiện chọn phép so sánh thuộc tính quan hệ tham gia tích Đề ta nên kết hợp phép tốn thành phép kết nối Tìm biểu thức chung biểu thức đại số quan hệ để đánh giá lần 12 NHP CuuDuongThanCong.com https://fb.com/tailieudientucntt 1/30/2012 Các phép biến đổi tương đương biểu thức ĐSQH Các chiến lược tối ưu tổng quát (tiếp) Xác định phép tốn đưa vào đường ống thực đánh giá chúng theo đường ống Xử lý tệp liệu trước tiến hành tính tốn: Tạo lập dẫn hay xếp tệp liệu góp phần làm giảm chi phí phép tính trung gian Ước lượng chi phí lựa chọn thứ tự thực hiện: Do với câu truy vấn có nhiều cách khác để thực hiện, với việc ướng lượng chi phí (số phép tính, tài nguyên sử dụng, dung tích nhớ, thời gian thực ) ta chọn cách đánh giá biểu thức ĐSQH có chi phí nhỏ • Hai biểu thức ĐSQH E1 E2 tương đương chúng cho kết áp dụng tập quan hệ • Trong phần này, ta có ký hiệu dạng sau: – E1, E2, E3, … biểu ể thức ứ đại số ố quan hệ ệ – F1, F2, F3, … điều kiện chọn điều kiện kết nối – X1, X2, … Y, Z, U1, U2, … tập thuộc tính 13 NHP 14 NHP Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Quy tắc kết hợp phép tích Đề kết nối ( E1  E )  E3  E1  ( E  E3 ) • VD: S* SP * P thực theo thứ tự sau 1)(S*SP)*P 2)(S*P)*SP 3)S*(SP*P) ( E1 * E ) * E3  E1 * ( E * E3 ) ( E1  E )  E3  E1 ( E  E3 ) F1 • F2 F1 Xét theo th ngữ ữ nghĩa hĩ S, S P không khô kết nối ối nên (1) (3) tốt (2) Xét kích thước (3) tốt (1) S có thuộc tính P có thuộc tính, nhiên, tùy thuộc vào lực lượng quan hệ S P F2 Qui tắc sử dụng cho chiến lược số Thứ tự thực phép kết nối hay tích Đề quan trọng kích thước quan hệ trung gian lớn không cân nhắc kỹ Lựa chọn thứ tự thực phép tốn tùy thuộc vào kích thước quan hệ tham gia phép toán ngữ nghĩa quan hệ (mối liên hệ) 15 NHP 16 NHP Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Quy tắc giao hoán phép tích Đề kết nối E1  E  E  E Quy tắc giao hoán phép chọn phép chiếu E1 * E  E * E1  X ( F ( E ))   F (  X ( E )) E  E  E  E F F Quy tắc nà Q áp dụng d ng F điề điều kiện xác định tập thuộc tính X Tổng quát ta có: Quy tắc dãy phép chiếu  X (  X  X n ( E ) )   X ( E ) X  X   X n  X ( F ( E ))   X ( F (  XY ( E ))) Quy tắc dãy phép chọn  F ( F  Fn ( E ) )   F 1 F 2  Fn ( E ) NHP 17 18 NHP CuuDuongThanCong.com https://fb.com/tailieudientucntt 1/30/2012 Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Quy tắc phép chọn phép tích Đề • Ta ký hiệu: – – – • E1(U1) có nghĩa biểu thức E1 xác định tập thuộc tính U1 F1(U1) có nghĩa điều kiện chọn F1 xác định tập thuộc tính U1 Quy tắc biến đổi liên quan đến phép chọn tích Đề phát biểu sau:  F ( E (U )  E (U )) tương đương với: – – –  F ( E1 )  E trường hợp F = F1(U1)  F ( E1 )   F ( E ) trường hợp F = F1(U1) Quy tắc phép chọn phép hợp:  F ( E1  E )   F ( E1 )   F ( E ) Quy tắc phép chọn phép trừ:  F ( E1  E )   F ( E1 )   F ( E ) F2(U2)  F ( F ( E1 )  E ) trường hợp F = F1(U1) F2(U1U2) 19 NHP 20 NHP Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Ví dụ Quy tắc phép chiếu tích Đề các: • Tìm tên hãng cung ứng mặt hàng màu đỏ màu xanh  X ( E (U )  E (U ))   Y ( E )   Z ( E ) X  YZ , Y  U , Z  U 10.Quy tắc phép chiếu phép hợp:  X ( E1  E )   X ( E1 )   X ( E ) SELECT sname FROM S, P, SP WHERE S.sid = SP.sid AND P.pid = SP.pid AND (colour = ‘Red’ Red OR colour = ‘Green’); Green ); • Biểu thức đại số quan hệ tương đương với câu truy vấn là:  sname ( S sid  SP.sid  P pid  SP pid ( colour  'Re d ' colour  'Green ') ( S  SP  P)) 21 NHP 22 NHP Lời hay ý đẹp "Phẩm cách chân người cách họ sống khơng phải họ có" có Blackie 23 NHP 24 NHP CuuDuongThanCong.com https://fb.com/tailieudientucntt ... thực phép tốn tùy thuộc vào kích thước quan hệ tham gia phép toán ngữ nghĩa quan hệ (mối liên hệ) 15 NHP 16 NHP Các phép biến đổi tương đương biểu thức ĐSQH (tiếp) Các phép biến đổi tương đương biểu

Ngày đăng: 11/01/2020, 17:43

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan