Serverless Database
Definition
A database that auto-scales to zero and charges only for actual compute consumed, with no server provisioning — ideal for variable workloads.
Use Cases
- Amazon: High-traffic retail events (e.g., Prime Day) requiring rapid database scaling for transactional workloads — Uses Amazon Aurora as a core relational database service for high-throughput, highly available applications; Aurora’s architecture separates compute and storage and supports scaling patterns suited to large traffic swings. (Improved ability to handle large demand spikes with high availability and performance compared to managing self-hosted relational databases.)
- Microsoft: SaaS applications with variable usage patterns that need cost-efficient relational storage for multi-tenant workloads — Uses Azure SQL Database for cloud-native application backends; serverless compute tier can automatically scale compute based on workload and pause during inactivity for eligible scenarios. (Reduced operational overhead and improved cost efficiency for workloads with intermittent or unpredictable activity compared to always-on database compute.)
- Adobe: Customer-facing applications that require managed relational data services with elastic capacity planning — Uses managed cloud databases (including AWS managed database services) as part of broader cloud infrastructure to reduce undifferentiated operational work and support elastic scaling needs. (Faster provisioning and reduced database administration effort, enabling teams to focus more on application features and reliability.)
Provider Equivalents
- AWS: Amazon Aurora Serverless v2
- Azure: Azure SQL Database serverless
- GCP: Cloud SQL (automatic storage increase; no true serverless compute) / AlloyDB (no serverless compute)
- OCI: Autonomous Database (auto-scaling)
Frequently Asked Questions
- What's the difference between a serverless database and a managed database?
- A managed database means the cloud provider handles tasks like backups, patching, and high availability, but you usually choose a fixed instance size and pay for it 24/7. A serverless database adds automatic compute scaling (and sometimes auto-pause) so capacity adjusts to demand and you pay more based on actual usage rather than a constantly running server size.
- When should I use a serverless database?
- Use it when traffic is unpredictable or spiky (seasonal apps, event-driven workloads), when you want to reduce cost during idle periods, or when you want minimal capacity planning. It’s also useful for dev/test environments that are not used continuously. If you have steady, high utilization all day, a provisioned database may be simpler and sometimes cheaper.
- How much does a serverless database cost?
- Cost is mainly driven by (1) compute consumed over time (often billed per second/minute or in capacity units), (2) storage used, (3) I/O and request rates depending on the service, and (4) features like high availability, backups, and cross-region replication. Savings are highest when the database can scale down significantly during off-hours; if it runs near peak most of the time, costs can approach or exceed provisioned options.
Category: data
Difficulty: intermediate
Related Terms
See Also