Identifying bottlenecks in Postgres workloads

Thursday, October 22 at 14:55–15:45
Room: Audit 1 Level: Intermediate

When encountering a postgres instance that is too slow, it's not always easy to identify what makes it slow.

Having been asked to analyze "slowness" many times and having worked on postgres for a long time, I will show how I approach answering that question.

Topics will include:

  • What to look at first?
  • When to look at postgres statistics, when to look at kernel statistics.
  • Seeing a lot of IO in the EXPLAIN ANALYZE of a query may or may not indicate IO being the bottleneck. How to identify which one is which?
  • When looking at wait events, sometimes seeing LWLock wait events can indicate contention internal to postgres, other times it indicates being IO bound.
  • How to identify if the latency between postgres and clients likely the bottleneck?
  • Is the problem just "too many fast queries"?
Back

Join Us For PostgreSQL Conference Europe 2026

October 20–23 2026

Palacio de Congresos, Valencia, Spain