When I started in web development, the architecture of an application always radiated out from the database. Any application was firmly rooted in its schema, and the first step was sketching out the tables and relationships that would define how data was organized and retrieved. But that’s where the web was, not where it’s headed. Today, I’m struck by how little to think about the database.
Databases are still at the heart of the modern web, just as servers still dutifully power the . But it’s today possible—and common—to the author to deploy rich, interactive without managing database infrastructure or knowing how the data is ultimately stored.
It’s a shift in the making: developing directly against the database became less common with the rise of web frameworks like Rails and the ORM. Even with these abstractions, it was still advisable to understand the schema of tables beneath so you could drop down to SQL to optimize performance. To , you had to know your database.
The mighty, monolithic database and its role as an oracle—as the only source of truth—is being challenged on two fronts. The first challenge comes from inside each company as more adopt microservice architectures, structuring each service to focus on a single domain complete with its datastore. While a microservice stack on top of a monolithic database, this tends to be the worst of both worlds. Individual to own the data layer.
The second outside the company: the explosion of API services — the economy of developer-centric offerings powering everything (payment, search, content authoring, artificial intelligence). The productivity lift from to APIs and services makes the benefits of decoupling an application too large to ignore. a shift in thinking from “my database” to “my data,” trading direct access to each table for indirect access via APIs. It’s the right tradeoff, even if data is third-party services.
Monolithic databases were as applications grew. A service like Stripe bundles compute and data behind a payment API, managing, scaling, securing, and optimizing databases for payment processing in ways that would be out of . New “content APIs”—hosted services like Contentful and Sanity—allow entire teams to author all types of content without managing a CMS or the database behind it.