Martin Kleppmann
๐ค SpeakerAppearances Over Time
Podcast Appearances
And he was keen to do that.
And that turned into such a good collaboration because he was up to date on like what the cutting edge was in terms of technology in industry.
I had strong opinions on how to teach, essentially, so how to explain things in the book, make sure that we were explaining everything in a way that was like very precise, very carefully chosen words, but at the same time, very accessible so that it's hopefully easy to read.
And so we took essentially like my writing style plus Chris's knowledge of latest industry trends to bring the book up to date and
That was a great collaboration.
Yeah, so the thing we knew from the start that we wanted to reflect was cloud-native systems architecture.
It's a bit of a vague term, but what I mean with that is
essentially building data systems on top of cloud services as the foundational abstraction.
In the first edition, the assumption was basically that you have some machines.
Each machine has some local disks.
You can run a database instance on a machine.
It will write its data to the local disk.
If you want to replicate it to another machine, then, well, the database software will replicate it at the database level to another machine, which will also write the data to its local disks.
For a long time, that was exactly the way computers worked.
And now suddenly people are building databases on top of object stores, for example.
And now the replication happens at the object store level, no longer at the database level.
Or maybe there's still some replication at the database level, but it really changes the nature of things if you're building on top of an object store.
And this is different from, say, building on top of a virtual block device like EBS or so, because these block devices, although they are cloud services, but they still offer the abstraction that is
a sort of single node operating system abstraction of a block device on top of which you run a file system whereas an object store is just like a brand new abstraction it just looks different from a file system it behaves differently and so then building on top of that as a foundational abstraction is something that like people were starting to do at the time of the first edition
But since the first edition, that has really taken off, like a whole lot of system have been built in that style now.