Tomas first met PostgreSQL in 2003 and quickly became a big fan. He participated in porting various applications to PostgreSQL from other databases, tuning and fixing performance issues etc. He is also a member of the executive committee of CSPUG (Czech and Slovak PostgreSQL Users Group), an "umbrella" organization for the local PostgreSQL community. Tomas currently works as a database engineer for EDB, working on various PostgreSQL-related tasks.
When running queries on a Postgres database, chances are you have
experience with hitting a "performance cliff" - an abrupt change of
performance for a given query, after only a small change in data and/or
query parameters.
In this talk I'll explain why performance cliffs happen - after a brief
explanation of how cost-based optimizers work and what assumptions that
relies on, I'll show a couple examples why/how it fails. I'll share some
recommendations on how to mitigate these issues.
If time permits, I'll talk about a couple interesting improvements &
possible solutions proposed in recent research projects, focused on
making query execution more adaptive & robust.