2026-01-28 –, 107
Language: English
Large PostgreSQL tables never shrink on their own and deleting data at scale can easily cause more harm than good.
This talk focuses on how to safely clean up data in production without blocking workloads or causing vacuum storms.
We’ll explore real cleanup patterns , from partition drops and rebuild-and-reattach approaches to cursor- and CTE-based batched deletions , each designed to minimize lock contention and replication lag.
We’ll also examine what actually happens inside PostgreSQL when data is deleted: how tuples become dead, how autovacuum reclaims space, and why transaction age and WAL behavior matter for performance.
By the end, attendees will understand how to plan, execute, and automate cleanup in large, high-concurrency PostgreSQL environments safely, continuously, and with full awareness of the engine’s internals.
I’m Çağrı, a database systems engineer based in the Netherlands.
I work at Adyen, where my days usually revolve around keeping large PostgreSQL clusters reliable, fast, and mostly calm while trying to automate everything that can go wrong twice.
Over the years I’ve worked across PostgreSQL, MySQL, Oracle, and SQL Server, building systems that stay up when they really shouldn’t. I love the intersection of performance, reliability, and automation figuring out how databases behave under stress and how we can make them heal themselves a little faster next time.
Outside work, I enjoy travelling , discovering and playing games online(PC)/offline(boardgames)