

Postgres FM
Nikolay Samokhvalov and Michael Christofides
A weekly podcast about all things PostgreSQL
Episodes
Mentioned books

Oct 21, 2022 • 36min
Stored procedures
The podcast explores the benefits of using stored procedures in a database, such as data consistency and improved performance. It also discusses the advantages of using Rails or Django for database management and the challenges of working with views and functions in PostgreSQL. The chapter delves into scaling strategies, subtransactions in POSGIS, and the use of stored procedures in database development. Overall, the speakers emphasize the importance of version control, testing, and the potential impact of projects like Superbase and Hasura.

Oct 14, 2022 • 30min
PostgreSQL 15
Here are links to a few things we mentioned: PostgreSQL 15 release notesSpeeding up sort performance in Postgres 15 (blog post by David Rowley)Past, Present, and Future of Logical Replication (talk by Amit Kapila) Postgres 15 improves UNIQUE and NULL (blog post by Ryan Lambert) Do you vacuum everyday? (talk by Hannu Krosing) Why upgrade PostgreSQL? (by depesz)What did you like or not like? What should we discuss next time? Let us know by tweeting us on @PostgresFM or by commenting on our topic ideas Google doc.If you would like to share this episode, here's a good link (and thank you!)------------------------Postgres FM is brought to you by:Nikolay Samokhvalov, founder of Postgres.aiMichael Christofides, founder of pgMustardWith special thanks to:Jessie Draws for the amazing artwork

Oct 7, 2022 • 31min
102 Query optimization
The podcast discusses query optimization in PostgreSQL, including steps involved, testing in a similar setup as production, analyzing the impact of sampling and bloat, optimizing queries' impact on other queries, and extreme indexing failure cases.

Sep 30, 2022 • 31min
Why is Postgres popular?
This episode was badly affected by internet issues. Hopefully the edit came out ok, but the quality should be back to a better level from next week.Here are links to a few things we mentioned: Monthly blog event, PGSQL Phriday (blog post from Ryan Booz) Who or what made Postgres cool? (tweet from Kenneth Cassel) PostGIS Acquisition of Sun by Oracle DB-Engines trendHacker News hiring trends Supabase on GitHub (nearly 40k stars)How I Built This (podcast) ------------------------What did you like or not like? What should we discuss next time? Let us know by tweeting us on @PostgresFM or by commenting on our topic ideas Google doc.If you would like to share this episode, here's a good link (and thank you!)Postgres FM is brought to you by:Nikolay Samokhvalov, founder of Postgres.aiMichael Christofides, founder of pgMustardWith special thanks to:Jessie Draws for the amazing artwork

Sep 23, 2022 • 33min
Index maintenance
The podcast discusses the importance of index maintenance in PostgreSQL databases, exploring bloat analysis, redundant indexes, and the relationship between index usage and bloat. The hosts emphasize the negative impact of not using indexes, caution against certain tools due to potential bugs, and highlight the use of vacuum in parallel and the importance of partitioning for efficient database maintenance.

Sep 16, 2022 • 33min
Query macro analysis intro
Here are links to a few things we mentioned: pg_stat_statementspgFouinepgBadgerpg_querypg_stat_activityauto_explainCan auto_explain (with timing) have low overhead? (blog post by Michael)track_io_timingpgbenchPgHeropgCenterpgwatch2 (Postgres AI edition)pg_stat_kcachePASH Viewer------------------------What did you like or not like? What should we discuss next time? Let us know by tweeting us on @samokhvalov and @michristofides or by commenting on our topic ideas Google doc.If you would like to share this episode, here's a good link (and thank you!)Postgres FM is brought to you by:Nikolay Samokhvalov, founder of Postgres.aiMichael Christofides, founder of pgMustardWith special thanks to:Jessie Draws for the amazing artwork

Sep 9, 2022 • 38min
WAL and checkpoint tuning
This podcast dives deep into the topics of WAL and checkpoint tuning in Postgres. It covers the purpose of checkpoints, the importance of triggering manual checkpoints before server restart, the various uses of the write ahead log, tuning and controlling processes in PostgreSQL, the concept of checkpoint timeout, and the importance of checking and understanding Postgres parameters.

Sep 2, 2022 • 33min
Intro to query optimization
This podcast discusses query optimization in Postgres, including the use of 'explain' command, analyzing query performance, common mistakes in query optimization, and the impact of enabling timing on in Postgres. It also emphasizes the importance of query optimization on performance and invites listener engagement for future topics.

Aug 26, 2022 • 33min
How to become a DBA
And few things we mentioned: Topic request on Reddit — thanks HerbyHoover!Haki Benita's blog PostgreSQL documentation (table of contents) Planet PostgreSQL (blog aggregator) MVCC Unmasked (by Bruce Momjian) The Internals of PostgreSQL (by Hironobu SUZUKI)PostgreSQL 14 Internals — parts I and II (by Egor Rogov)Cybertec blogmodern-sql.com (by Markus Winand)use-the-index-luke.com (by Markus Winand)The Art of PostgreSQL (by Dimitri Fontaine) explain.depesz.comexplain.dalibo.com ------------------------What did you like or not like? What should we discuss next time? Let us know by tweeting us on @samokhvalov and @michristofidesIf you would like to share this episode, here's a good link (and thank you!)Postgres FM is brought to you by:Nikolay Samokhvalov, founder of Postgres.aiMichael Christofides, founder of pgMustardWith special thanks to:Jessie Draws for the elephant artwork

Aug 19, 2022 • 27min
Monitoring checklist
Monitoring checklist (dashboard 1):TPS and (optional but also desired) QPSLatency (query duration) — at least average. Better: histogram, percentilesConnections (sessions) — stacked graph of session counts by state (first of all: active and idle-in-transaction; also interesting: idle, others) and how far the sum is from max_connection (+pool size for PgBouncer).Longest transactions (max transaction age or top-n transactions by age), excluding autovacuum activityCommits vs rollbacks — how many transactions are rolled backTransactions left till transaction ID wraparoundReplication lags / bytes in replication slot / unused replication slotsCount of WALs waiting to be archived (archiving lag)WAL generation ratesLocks and deadlocksBasic query analysis graph (top-n by total_time or by mean_time?)Basic wait event analysis (a.k.a. “active session analysis” or “performance insights”)And links to a few things we mentioned: Postgres monitoring review checklist (community document) pgstats.devImproving Postgres Connection Scalability: Snapshots (blog post by Andres Freund) Transaction ID Wraparound in Postgres (blog post by David Cramer) Subtransactions Considered Harmful (blog post by Nikolay)datadoghq.com pgwatch2 (Postgres.ai Edition) ------------------------What did you like or not like? What should we discuss next time? Let us know by tweeting us on @samokhvalov and @michristofidesIf you would like to share this episode, here's a good link (and thank you!)Postgres FM is brought to you by:Nikolay Samokhvalov, founder of Postgres.aiMichael Christofides, founder of pgMustardWith special thanks to:Jessie Draws for the elephant artwork


