Slides and transcript from my talk, "Anatomy of a Database Operation", at DjangoCon Europe in Dublin on 25 April 2025.
I'll share the recording as soon as it's available.
Introduction
This talk seemed like a great idea back in December 2024 when I asked the Django community for suggestions of database topics people wanted to hear about:
I'd love to be a DjangoCon Europe speaker again, because it's one of my favourite events. To that end, I'm looking for help to put together an irresistible talk submission! If you have suggestions for database/Postgres related topics that you'd really like to hear about, or burning database questions that you want to know the answer to, please let me know. I'm counting on you!
One of the suggestions was:
"how databases work and store data under the hood [so I can] build a complete mental model of what happens once you call SELECT … or INSERT."
Great idea, I thought. And then I realised just how much there was behind that one simple request!
So here goes...
I even learnt Django for the purpooses of this talk!
For demonstration purposes, I created this highly sophisticated web site that displays beer information that’s stored in a Postgres database. You can list beers, types of beer and breweries, and you can search for your favourite beer or add a new one.
But what’s happening behind the scenes when you do those things?
- How is the request passed to the database?
- How are the results retrieved and returned to you?
- How’s the data stored, retrieved and modified?
- And why should you even care?
One reason you might care is that users probably aren't happy when they see this ("LOADING, please wait...").
Or this ("DATABASE ERROR!").
This is me!
As you can see, from the diagram representing my career so far, (and as you already know if you've read my posts or watched my talks before), I have a database background.
I was a DBA for 20 years before I moved into database consultan
[...]