Hlavní navigace

Názor k článku Čtení prováděcích plánů v PostgreSQL od Pavel Císař - Škoda že si nevybavujete spíše ty odpovědi :-) Firebird...

  • Článek je starý, nové názory již nelze přidávat.
  • 1. 9. 2008 13:32

    Pavel Císař
    Škoda že si nevybavujete spíše ty odpovědi :-)

    Firebird samozřejmě vždy zohledňoval náklady na zpracování indexu. Ono by to bylo dost divné zohledňovat náklady na čtení dat ale už ne indexů, a takového opomenutí by si za těch více než 20 let jistě někdo z vývojářů všiml :-) Pravdou ovšem je, že Firebird zdědil poměrně hrubý vzorec na výpočet nákladů, takže ho bylo nutné zpřesnit, a do verze 2.0 neměl statistiky pro částečné klíče kompozitních indexů (a doposud nemá histogramy). Rovněž se vylepšovalo vyhodnocování vhodnosti indexů a optimalizátor obecně, a všechny tyto úpravy vskutku započaly s verzí 1.5, takže právě v této době byla v konferencích spousta dotazů na detaily optimalizace.

    Problémy s optimalizátorem má ovšem každá databáze, protože cost-based optimalizace není dokonalá (o rule-based nemluvě), takže frekvenci dotazů ani existenci problémových oblastí nelze považovat za důkaz absence optimalizace :-)