DBaaS Navigator
Database as a Service (DBaaS) is the cloudification of database operations. By using the providers' respective User Interfaces and APIs, cloud users can obtain a running database instance within minutes and with only a single click.
As with virtual machines provided by Infrastructure as a Service, the many different (products sold as DBaaS) appear similar from a distance. Yet, looking closer makes evident that there are several, often subtle, differences.
Our Our Database as a Service Navigator takes database benchmarking to a new level, by including not only performance, but also further criteria important to practicioners such as deployment, management, support services, and price.
Hence, the navigator supports you in comparing the different DBaaS offerings and helps you find an offering that matches your needs. The criteria for our ratings are available on GitHub.
You are interested in comparing Database as a Service with self-hosted database installations? In this case, you may want to check out our Database Ranking.
Select Database Technology Please select one option
What is DBaaS?
DBaaS stands for Database-as-a-Service and refers to the possibility of obtaining managed database management systems "as a service".
Using a DBaaS eliminates the need for installation as well as maintenance and monitoring during operation. This is outsourced to the provider of the DBaaS product at corresponding service level agreements.
DBaaS are Software-as-a-Service (SaaS) cloud services and are becoming increasingly popular because a database administrator is no longer required and IT professionals can focus entirely on development - at least that is the product promise.
The DBaaS market is estimated to be worth approximately US$17 billion, with growth to over US$50 billion by 2027.
Are cloud databases and DBaaS the same thing?
No, cloud databases and DBaaS are not the same thing. Rather, DBaaS are a subset of cloud databases.
This is because cloud databases - according to scholarly and commercial popular opinion - refer to all databases that are run on cloud resources. This therefore also includes databases that are installed and operated independently on VMs on IaaS resources. In contrast, DBaaS have additional services and usually also SLAs that cover the management of the database.
However, this distinction is not used correctly everywhere, even by some DBaaS providers, e.g. the Google Cloud Databases.
The 3 Categories of DBaaS Providers
When analyzing all DBaaS products, 3 categories of DBaaS vendors characterized themselves.
1. DBMS Vendors with DBaaS Products.
Almost every database management vendor now offers a dedicated DBaaS product via their website for their own DBMS technology. For many vendors of free "community" or "open-source" versions, the DBaaS product is now the most obvious solution for commercializing their product.
DBaaS products from database vendors are mostly hosted on the 3 hyperscalers - AWS, Azure and GCP.
The multiple DBaaS products differ mainly in support and service levels.
Many database management systems can only be obtained as a DBaaS product directly from the database vendor.
DBaaS products from the database manufacturers are, for example, Couchbase Capella, MariaDB SkySQL or ScyllaDB Cloud .
2. Cloud Providers as DBaaS providers.
The major cloud providers such as AWS, MS Azure and GCP, but also Alibaba Cloud and Tencent Cloud already have numerous DBaaS products in their product portfolio.
Many cloud providers have also integrated their own DBaaS solutions in the last years, or are currently in the process of doing so.
The typical DBaaS of cloud providers are based on popular open source database technologies such as PostgreSQL, MySQL, Apache Cassandra or Redis.
These prodcuts are complemented by advancements from open source database projects such as AWS DocumentDB and cloud-specific database developments such as Google Spanner, or Alibaba PolarDB, which are only available from the respective cloud providers.
In the DBaaS products of the cloud providers, the similarity of service configuration compared to the IaaS resources is striking. The DBaaS can be configured and supplemented in numerous ways here, particularly at resource level.
3. The DBaaS Brokers
In addition to cloud providers and DBMS vendors, there is also a third category of providers. The core business of DBaaS brokers are fully-managed open-source Database-as-a-Services.
Representative of this are in particular the 3 providers - Aiven, Scalegrid and Instaclustr.
These offer popular open source databases as well as some commercial database technologies at various cloud providers. Some providers additionally offer the option of hosting the DBaaS product in a fully-managed private cloud.
The DBaaS products are offered in different plans that vary in size, functionality and SLA.
Collaborations with smaller IaaS cloud providers, such as between OVHCloud and Exoscale with Aiven, speak for the quality of these products.
The 3 DBaaS Pricing Models
When analyzing DBaaS products and creating an exemplary price comparison based on resource sizes, we noticed that this is not possible for all DBaaS.
In addition to the resource-level pricing model, there are 2 other models - one based on operations, the other based on usage (serverless).
1. Resource-based Pricing Model
Resource-based pricing is currently the most widely used model. Similar to IaaS resource booking, the user, can select the VM size, storage type and size, and the number of instances.
Whether the selected setup corresponds to the appropriate size is often left up to the user. Depending on the DBaaS provider, help is often available, but this is not based on performance benchmarks or load testing. Often, adjustments have to be made during operation, resulting in additional costs in some cases.
This pricing model is used in around 90% of the DBaaS products found.
2. Operations-based Pricing Model
In this pricing model, the user books a defined number of database operations - corresponding to the expected workload. This information is partly converted into a unit, on which pricing is done by the DBaaS provider. Sizing of the underlying resources is the sole responsibility of the DBaaS provider.
This pricing model is particularly attractive when migrating a database to a DBaaS scheme, as the required sizes can simply be monitored from the existing database. The user does not have to worry about "right-sizing" the IaaS resources himself. The DBaaS provider takes over the right-sizing completely.
First exemplary benchmark measurements on our part have shown that the booked operation quantities are also delivered accordingly.
A pioneer of this pricing model was MS Azure's CosmosDB. In the meantime, there are other providers who have introduced this pricing model for their DBaaS services.
3. Serverless Pricing Model
The serverless pricing model is a further development of the operations-based model.
Here, the user no longer has to book a fixed number of operations. Instead, each operation costs a fixed amount and the DBaaS service automatically scales the required resources along with the database load.
This model requires even much greater technical complexity and understanding of the database management system and the underlying cloud resources.
On the other hand, this model appears to be a worthy goal, as it comes closest to the promise of cloud computing in terms of efficiency, scalability and elasticity!
This pricing model is only offered by very few cloud-native DBaaS services, these include e.g. Cockroach Serverless or MongoDB Atlas (vertical scaling only).
The DBaaS Selection: Costs? – a Bad Criterion!
For many popular database technologies, you can find a variety of suitable and diverse DBaaS products.
Which DBaaS service is the right one? And most economical?
Consider the list above for MongoDB. Here you can find DBaaS ranging from $500 - $3,000 for the same resource size.
So, at first glance, this choice seems pretty straightforward then, doesn't it?
However, cost should be only one of several decision criteria.
Why?
DBaaS from different vendors can vary widely in terms of
- the DBMS version and tuning
- the underlying VM, storage, IOPS of different vendors
- the functionalities for high availability, backup, multi-region support, encryption, ,...
- the service and support capabilities
- and of course the resulting performance and scalability of the technical implementation of the entire DBaaS construct.
Thus, you get different services at different prices!
A multidimensional decision problem with partly non-trivially available information!
Argh ...!?
Technology
Each provider's DBaaS technology is almost unique - from the implementation to the resources used.
- Cloud provider, VM & storage resources
- DBMS type
- DBMS license and version
- Interfaces
- SDKs: CLI, Ansible, Terraform, Kubernetes
Information on these topics is usually available in the documentation of the DBaaS service.
Functionality
The differences in terms of functionality vary greatly among the DBaaS products we examined. While some DBaaS provide a variety of additional functions and services, others do not offer these at all in some cases.
- Backups
- High availability / multi-availability zones
- DBMS version selection
- DBMS Forks
- Replication / Sharding
- DBMS Tuning
Information on these topics can be found in the documentation, in trials and in product demos.
Service Level Agreements & Support
There are also significant differences in terms of support and SLAs. These are contractually guaranteed promises with regard to
- Availability and downtime
- Availability of support
- Response time of the support
- Technical quality of the support
The SLA and support specifications can be found in the legal documents of the services and can be compared with each other, albeit laboriously.
Pricing
The costs and prices of a wide variety of DBaaS services are easily accessible and structured in an understandable manner for almost all providers.
However, there are also providers that call up a complex pricing model of individual components, similar to IaaS resources.
In addition, not all functions and prices are comparable 1:1 with offers from other providers. In particular, the operations-based and serverless pricing models make it much more complex to compare providers with each other, as they require knowledge about workload and performance to create a calculation.
More on the pricing models of DBaaS see above in the text
Performance
The performance of a DBaaS service is not solely related to the underlying DBMS technology, but also to the cloud resources used and the technical implementation and orchestration of the services, which affect latencies and throughput.
Very few DBaaS vendors have published performance measurement results. And if they do, they are often not comparable to your own use case.
We have benchmarked some DBaaS services and published them freely in our database ranking.
In addition, it is always highly recommended to do benchmark measurements for the individual use case to get precise and appropriate results.
This is the only way to make statements about the correct resource scaling and the price-performance of a DBaaS product.
Scalability
Similar to performance, the scalability of a DBaaS service depends not only on the DBMS technology, but also on the bookable and available resources of the DBaaS provider.
Often, larger instances and cluster sizes are not included in the configurators, but are only accessible via sales and support. The scalability of the service should be clarified and fixed in advance.
Statements about which resource sizes will be needed in the future can be made by database benchmark measurements with a scaled future workload.
Are DBaaS Services Worth It?
At first glance, DBaaS services appear to be much more expensive than using IaaS services. Let's look at the following example:
- PostgreSQL DBaaS
- VM: 8 cores x 61 GB RAM
- 1 node
- 1000 GB storage
- AWS Cloud - Ohio Region
This DBaaS service costs about $1,200 per month with Aiven, a leading DBaaS broker.
The underlying IaaS resources (i3.2xlarge) with 1000 GB GP2 storage cost on AWS only US$555.52.
That means the DBaaS service is more than 2x as expensive as the pure cloud resources. However, for this you get
- An automatic installation and configuration of the DBMS
- A monitoring with troubleshooting
- The maintenance and updating of the database
- A service promise
- Support services
- Database tuning by experts
You can save a database administrator who has to spend part of his time monitoring and maintaining the database and who also has to be familiar with the database itself. Unfortunately, it is not possible to make general statements about the time required for monitoring, maintenance and training depending on the number of instances or VM size.
However, with personnel costs of $10,000 per month (including ancillary wage costs) for a database administrator, it can be strongly assumed that DBaaS services will be economically worthwhile for smaller and medium-sized database clusters. Whereas, on the other hand, a DBaaS service of a 100-node Cassandras cluster is likely to be significantly more expensive than a self-managed solution.
DBaaS services, however, can be worthwhile not only from a financial perspective, but can also enable faster time-to-market by focusing on development - rather than database operations.
They also enable the use of modern database technologies where in-house expertise in terms of database administration is not yet available. This makes it possible to test and use more suitable technologies.
On the other hand, one naturally enters into a certain dependency with lock-in effects and costs when exporting the data.
In our view, however, DBaaS services are expanding the existing database market and enable simple, convenient and personnel-efficient access to databases.