Direct naar content

A closer look at DataBase-as-a-Service

The cloud is popular, very popular. But the cloud does not exist: there are different cloud models – public, private and hybrid – and there are roughly three main types of cloud computing: SaaS, IaaS and PaaS. Part of PaaS is DBaaS. What is DBaaS, what are the pros and cons, and does DBaaS make a DBA obsolete? We give you the answers in this blog.

Edco Wallet

Co-Founder & eigenaar
Edco Wallet - Co-Founder & eigenaar

DBaaS in a nutshell

With DBaaS, you rent a fully configured database from the cloud provider. The cloud provider is responsible for management, updates and performance. This service is most similar to PaaS, but there is an important difference. With DBaaS, developers have access to the underlying database, allowing them to choose a database technology that fits the application

. Later we will zoom in on the advantages and disadvantages of DBaaS, but in short, the advantage of DBaaS is that you can get started immediately and can continue even without database expertise. In addition, you can quickly scale up resources. A disadvantage of DBaaS is that you have little control over the configuration and you can barely tune. Examples are SQL Azure, AWS RDS Postgres.

Cloud models

Moving everything to the cloud is impossible, simply because the cloud does not exist. There are different models such as private, public and hybrid cloud. Moreover, it is not always necessary to move everything to the cloud. By making smart combinations with the forms and models and even multiple cloud providers, you can create a mix that ensures maximum quality, flexibility and cost control.

Public cloud

In a public cloud, your environment or server on which your application runs in the data center of the cloud provider is shared with other customers of this cloud provider. Pay close attention to what happens to your privacy-sensitive data in connection with the GDPR. In the public cloud, security is an issue, but most cloud providers pay a lot of attention to this themselves.

Private cloud

In a private cloud, all the servers, components and services you use in the data center are yours exclusively. You are the only customer and you are not part of a shared environment. You have more exclusive control over the resources. If you’re smart, this could even be profitable.

Hybrid cloud

This is a combination of public and private cloud. Software containing sensitive information is located in the private cloud. Applications that need to be fast or flexible, for example when it comes to scaling up or down, are in the public cloud. Essentially, you are choosing the best of both worlds.

Databases in the cloud

If you decide to run your database in the cloud, there are a number of things you need to pay attention to. Which things exactly depends on your goal, the application, the budget and your conditions. In short, we can mention the following points of interest:

DBaaS

The advantage of DBaaS is that it is fast, flexible and configured by default, with unlimited resources. Virtually no DBA expertise is required. A potential disadvantage is that costs add up fairly quickly if you want to purchase services or scale up resources. There is no efficient database management and the ability to apply custom configurations is non-existent or limited. Tuning is not possible and when using open source database technology, many community extensions cannot be used.

PaaS

With PaaS you have to take into account the use of existing software. Not all existing software is suitable to function in a PaaS environment. For example, in a PaaS environment you do not have access to the root of the hard disk. Not all CPU power and memory is allocated to the cloud application. This is because it is often hosted on a shared platform, so other applications (and databases) may be using the same resources. As for the database, you have the same advantages and disadvantages as with DBaaS.

IaaS

IaaS is most similar to an on-premise implementation. In particular, it involves the use of virtual servers. It is important to investigate the possible limitations, for example in I/O, which can cause the database performance to be different in practice than in a protected local environment. As customer you are responsible for arranging security and backup. The advantage is that you can influence which database technology is used. So, you can tune your database to your application. You can standardize the design for your own organization. However, deployment of databases is more complex and you have to ‘invent’ and build it yourself, which requires some expertise.

SaaS

The advantage of SaaS is that the supplier takes care of all management and maintenance, so you don’t have to worry about that. On the other hand, you also have no opportunity to modify the software.

DBaaS, SaaS, IaaS and Paas service levels

Popular Public DBaaS Models

On our website, we have published an overview of the most frequently applied DBaaS models, along with their strengths and challenges. The most well-known and applied public DBaaS models are:

  • Amazon RDS
  • Azure database for (PostgreSQL, MySQL, MariaDB)
  • Azure SQL
  • Google Cloud SQL
  • IBM Cloud Databases

And then there are a number of cloud-native DBaaS models such as:

  • CockroachDB
  • MongoDB Atlas
  • Amazon Aurora
  • Google Cloud Spanner and Bigtable
  • TimeScaleDB
  • BigAnimal (newbee from EDB, specifically for PostgreSQL)

The GigaOm Radar Report for Cloud Databases published the following overview.