In Search of the Perfect Database

In the 1960s, Edgar Codd looked at the way we were organizing data and was not impressed. It took a couple of decades for his theories about The Right Way To Do It to become mainstream, but by the 1990s we seemed to have a pretty solid handle on how databases should be structured. Then the internet hit the industry like a tsunami, and when the tide rolled out we were surrounded by NoSQL databases that seemed to promise everything except foundational principles. Codd would not be impressed. 

Now here we are, another 20 years down the line and there are more databases than you can count. They all claim to be the golden solution you're looking for, and they seem to bear little relation to each other.

Has Codd's vision died? Have we lost sight of the right way to do databases? Is Database-as-a-Service such a good business that everyone wants in on the action? Or are there some fundamental reasons why one size can't fit all?

In this presentation, we'll explore the fundamental design questions that every database must answer: Does it store types or just data? Does it remember history? Who can write, and when? What shape is the data? How do you query it? Where does it run? We'll see various databases answer these questions, from mainstream ones like Postgres, MongoDB & SQLite, to not-quite-databases like Git, Kafka and SpacetimeDB. We'll see why the differences matter, and why your answer to those questions determine your database's destiny.

Let's go in search of the perfect database, figure out why the landscape is so vast and uneven, and either find the perfect database or at least find the right one for the task before us.


About Kris Jenkins

Kris Jenkins is a lifelong computer geek who loves designing software, writing it, and talking about it afterwards. He's been a software developer, a Co-Founder and a CTO, and these days he's a Developer Advocate, talking about how we can all build better systems.

More About Kris »