BD-2st-1.2-w13.tresc-1.1-Slajd8
Szacowanie kosztu wykonania planu zapytania
Jak już wspomnieliśmy, zdecydowana większość komercyjnych systemów zarządzania bazami danych stosuje zarówno optymalizację regułową jak i optymalizację kosztową. Optymalizacja kosztowa polega, najogólniej mówiąc, na wygenerowaniu wszystkich możliwych planów wykonania zapytania, oszacowaniu kosztu wykonania tych planów i wyborze planu o „najmniejszym” koszcie. Najczęściej, wygenerowanie wszystkich możliwych planów wykonania jest niemożliwe, stąd, optymalizator ogranicza się do pewnego podzbioru planów wykonania zapytania.
Kluczowe znacznie ma w przypadku optymalizacji kosztowej oszacowanie kosztu wykonania danego planu. Dla każdego planu wykonania zapytania optymalizator musi oszacować:
–Szacunkowy koszt wykonania każdego operatora w planie zapytania (zależny od rozmiarów argumentów wejściowych operatora)
–Szacunkowy rozmiar wyniku wykonania każdego operatora w planie zapytania (dane znajdują się w katalogu bazy danych, dla operacji selekcji i projekcji zakładamy niezależność atrybutów).