Episode

Where do the performance cliffs come from?

with Tomas Vondra

Video of a conference talk about where do performance cliffs come from presented by Tomas Vondra at POSETTE: An Event for Postgres 2024. 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 Postgres query, after only a small change in data and/or query parameters.

In this talk, you'll learn why performance cliffs happen in Postgres. 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 also share 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 Postgres query execution more adaptive & robust.

Tomas is a long-term PostgreSQL contributor & committer, focusing on performance, query planning & optimization, etc.

Chapters

  • 00:00 - Introduction
  • 01:27 - What is a performance cliff?
  • 09:03 - Runtime decisions
  • 14:21 - Multiple Paths
  • 19:12 - Mitigations
  • 24:06 - Robustness / Research papers

Connect

Azure
Azure Database for PostgreSQL

Have feedback? Submit an issue here.