BD-2st-1.2-w13.tresc-1.1-Slajd7
Przepisywanie zapytań: podsumowanie
Podsumowując przedstawione reguły transformacji i przepisywania zapytań, można stwierdzić, że istnieje bardzo wiele poprawnych semantycznie reguł przepisywania zapytań. Co więcej, można opracować bardzo wiele, bardzo specyficznych reguł przepisywania zapytań. Pytanie, na które, często jest trudno odpowiedzieć brzmi - czy każda reguła transformacji minimalizuje koszt wykonania zapytania? Przykładem tutaj może być nasza wcześniejsza dyskusja na temat przesuwania predykatów selekcji przed operator połączenia.
Niemniej, technika transformacji i przepisywania zapytań jest ważnym elementem procesu optymalizacji zapytań. Jest ona szczególnie istotna dla dużych złożonych zapytań, dla których optymalizacja kosztowa, o której powiemy za chwilę, jest zbyt „kosztowna” i , najczęściej, mało efektywna.
W poprzednich latach, proces optymalizacji zapytań ograniczał się do optymalizacji regułowej, nazywanej czasami syntaktyczną. Optymalizacja regułowa okazała się mało skuteczna. W późniejszym okresie, optymalizacja regułowa została uzupełniona o mechanizm optymalizacji kosztowej. Należy jeszcze wspomnieć, w odniesieniu do optymalizacji regułowej, o problemie wyboru reguł. Dane jest zapytanie i zbiór reguł transformacji, który można zastosować w stosunku do zapytania. Jakie reguły zastosować?