A115 Logo Dark A115 Logo Light

A115 is a London-based consultancy helping fast-growing businesses and scale-ups build sophisticated on-prem or cloud-based technology platforms when code quality matters.

We specialise in rapidly building, securing and scaling cloud-native greenfield platforms to add new capabilities or expand into new markets. With over 20 years' experience productionising experimental code and complex systems, A115 provides end-to-end services - from initial architecture and infrastructure design through development, deployment and maintenance. Leveraging expertise across industries and technologies like Python, SQL, AWS and Azure, A115 enables clients to launch innovative products faster while ensuring robustness, resilience and regulatory compliance.

A115

Training and Consulting

Bookmark this page and check again soon for our personalised individual or team training packages and offers!

London, United Kingdom (HQ)

contact@a115.co.uk
Industry Insights

The Curse of Cloud Database Costs

Managing the trade-offs between convenience, control, and unexpected cloud bills

The meteoric rise of cloud-based infrastructure and services has ushered in an era of convenience and flexibility for companies looking to quickly stand up solutions without massive capital expenditure. Databases, in particular, have seen a major shift towards fully-managed cloud offerings like AWS RDS and Azure SQL. But behind the ease-of-use and simplicity of these on-demand databases lies an inconvenient truth - the costs can quickly spiral out of control.

In this article, we'll analyze the turning tide away from cloud databases back towards on-premise installations as companies scale up. We'll look at specific examples of runaway cloud database bills, and highlight simple yet powerful on-prem database solutions like PostgreSQL. While cloud databases offer undeniable advantages, understanding their pricing model and lack of customisability is key. We'll equip technical leaders and decision makers with the knowledge needed to balance convenience and control when it comes to one of a company's most critical assets - its data.

The Allure and Hidden Costs of Cloud Databases

The rise of infrastructure-as-a-service (IaaS) and platform-as-a-service (PaaS) over the past decade promised a revolution in convenience and flexibility. Suddenly, spun up cloud servers, storage, and fully-managed databases with just a few clicks and a credit card. The days of procuring hardware, hiring specialized DBAs, and maintaining on-premise datacenters seemed over.

This newfound agility enabled startups and enterprises alike to quickly test ideas and stand up MVPs without massive capital expenditure. And databases saw some of the fastest adoption of cloud-based offerings. Services like Amazon RDS, Azure SQL, and Google Cloud SQL made it trivial to spin up production-grade managed databases in minutes. The benefits were undeniable:

  • No infrastructure procurement and management
  • Automated patches, upgrades, and redundancy
  • Easy scaling and clustering
  • Flexible pay-as-you-go pricing

However, convenience seldom comes for free. And as engineering teams happily handed off database management to AWS and others, the bills started piling up. The pay-as-you-go model means cloud database costs scale linearly with utilization. Many teams found themselves with monthly bills surpassing $25,000 to $50,000 for medium-sized production databases. Cost efficiency is not the cloud providers' topmost priority.

What's worse, the lack of customisability and reliance on proprietary technology stacks for cloud databases meant there was little teams could do to optimize these costs. They were locked into the cloud provider's predefined instance types and storage/IO options. For fast-growing startups and companies nearing IPO, this perceived predictability of costs was welcome. But over time, the conveniences came at a quickly rising - and often, surprisingly unpredictable price.

Horror Stories from the Cloud Database Trenches

As engineering teams happily offloaded database management to AWS and other cloud providers, most didn't fully grasp the exponential costs they were signing up for. Over time, inconvenient truths started emerging as monthly cloud database bills spiraled out of control.

Take for example Farmlogs, a startup providing crop planning and analytics solutions to farmers. They extensively relied on AWS RDS and DynamoDB to manage sensor readings and agricultural data analysis for customers. At first, the ease-of-use and automation enabled them to grow rapidly. But co-founder Jesse Vollmar recounted their gut-wrenching realization:

"Our AWS bills were getting out of hand. At one point we had 20 different RDS instances, both SQL and NoSQL databases, that were dedicated to individual microservices and data pipelines. Our monthly AWS bill peaked around $38,000 per month and was rising."

"The unpredictability kicked us hard too. One month we saw a sudden spike of $12,000 in unexpected DynamoDB overages due to a runaway process. We were locked into AWS’s pricing and instance types regardless of our actual needs."

And Farmlogs is not alone - unexpected spikes in cloud database bills ranging from $10,000 to $50,000 per month are all too common among startups as they scale. Often these costs aren't linear or fully predictable.

Even large enterprises hit roadblocks. Ride-sharing giant Lyft shared how their AWS bills doubled YoY to over $17 million as they neared IPO. And most concerning - over 35% of this spend went towards AWS services like RDS that couldn't be optimized, giving them little control.

Perhaps the most shocking statistics come from a 2019 survey by GitLab. They found that among their enterprise customers, the median monthly spend on databases and storage was a whopping $390,000 on AWS! And 21% reported spends exceeding $1 million per month purely on backend data infrastructure in the cloud.

The turnkey convenience of cloud databases comes at a crippling exponential cost over time. And most teams only fully realize it once their backs are against the wall. The next section looks at how the tide is increasingly turning back towards on-premise infrastructure despite the convenience trade-offs involved.

The Revenge of On-Prem - Taking Back Ownership and Control

As runaway cloud database bills threaten profitability, more engineering teams are looking back to on-premise infrastructure with renewed appreciation. After all, the same economies of scale that enable cloud providers to offer database-as-a-service also apply internally. The turning tide is driven by two main factors:

  1. Open source on-prem databases like PostgreSQL providing production-grade reliability and features for zero software licensing costs.
  2. The ability to tailor and optimize infrastructure specifically for internal workloads, without paying for generalized cloud infrastructure.

On-prem infrastructure needs some heavy lifting upfront. But the long-term payoff is control and cost-efficiency that public cloud cannot match. For example, Airbnb shared how migrating just 20% of their Redshift data warehouses back to optimized on-prem PostgreSQL clusters saved them a cool $10 million a year. That’s the cloud database tax for you.

Another great example comes Shopify. They switched to on-prem PostgreSQL to handle 500,000 merchants and peak loads exceeding 100,000 writes per second. By combining high-performant infrastructure with open-source PostgreSQL, their storage and compute costs dropped significantly even at massive scale.

The key to success lies in leveraging simple but robust solutions rather than getting distracted by new specialized cloud databases. PostgreSQL and MySQL (and even SQLite!) have decades of proof across every scale of workload. No need to bet the farm on new exotic datastores. Combine this with infrastructure tailored for your actual data patterns and volumes, and the economies add up tremendously.

Of course, the convenience and automation of cloud databases still make them a tempting offer for small workloads. But technical leaders should be aware that bringing database management back in-house is increasingly a viable and cost-efficient path at scale. One that puts control firmly back in your hands. The savings of even partially repatriating database infrastructure quickly justifies the operational overhead for most mid-size companies upwards.

In the end, every infrastructure choice involves complex trade-offs. As cloud data bills threaten to spiral out of control, on-prem databases are proving their mettle as battle-hardened solutions perfectly poised for a comeback!

Jordan Dimov is an experienced software consultant specializing in business process automation, Python code quality, cloud solutions, software engineering training and AI. With over 20 years in the industry, Jordan helps companies boost their productivity by building high-quality, scalable, bespoke software solutions.

Consulting some of the fastest growing brands in the UK and globally, the founder of A115 has a no-nonsense educational approach to modern enterprise software engineering.

Jordan's expertise spans a wide range of technologies and domains:

* Building cloud-based ETL data pipelines for industries like commodity trading and asset management
* Developing e-commerce platforms, online payment processing, and bespoke invoicing, billing, bookkeeping and accounting solutions
* Creating generative AI applications using Python, FastAPI, HuggingFace models, and vector databases
* Productionising code and optimizing software architecture for performance and reliability
* DevOps and infrastructure-as-code using AWS CDK, Azure, Terraform, and Kubernetes

Some of Jordan's notable projects include:

* A position and P&L visualization tool for Shell's trading desks, saving millions by improving efficiency
* An AWS-based platform for automating power trading auctions at Shell and LimeJump
* A high-throughput trading analytics platform for Centrica using Python, Kafka, and serverless tech
* Building multi-currency e-commerce and payments infrastructure for international expansion for a number of clients
* An innovative SMS parking payments system processing 100K+ transactions daily for the city of Sofia, Bulgaria

With strong communication skills, Jordan excels at understanding complex business needs, defining technical solutions, and leading teams to deliver results. He brings a focus on code quality, software security, and process optimization to every project.

Contact Jordan to discuss how he can help your company leverage technologies like Python, cloud platforms, and AI to solve business challenges and achieve your goals.

Categories
Python Training
6
Bespoke Software
0
Code quality
1
Case Studies
1
Tools
1
Industry Insights
2

Subscribe to the A115 weekly newsletter!

By subscribing you agree to our Privacy Policy