For many enterprises, the advantages of using cloud based database are obvious. Its advantage is to provide scalability, security and availability, and lower cost than custom and local database solutions.
However, there are different types of cloud databases. Generally, we use terms such as IAAs, PAAS and SaaS to describe different levels of cloud computing. How can they be applied to cloud database and how to use dbaas (database as a service) products?
In this article, we will understand the main differences between these different types of cloud databases, as well as the advantages and disadvantages of each type, so as to help you determine the most suitable solution for the enterprise itself.
As shown in the figure, in the cloud computing environment, the main difference between software as a service (SaaS), platform as a service (PAAS) and infrastructure as a service (IAAs) lies in the abstraction level of underlying resources and services.
Generally speaking, the more things service providers abstract from users, the simpler and faster the process for users to generate value in cloud services. The less the provider handles on behalf of the user, the greater the user’s control and responsibility over the environment.
Different levels of abstraction in cloud computing
We can also apply the principles behind this cloud computing classification to cloud database. Like most cloud based tools and services, the database chosen by enterprises will reflect the market needs, expertise and skills of their teams, the overhead and management burden they are willing to bear, and the customization requirements of the project.
The following is a general overview of each type of cloud database, as well as their advantages and disadvantages.
IAAs: most control and work
The implementation of IAAs database is self-management on cloud infrastructure. The enterprise will be responsible for operating system, runtime and database software, as well as installation, configuration and continuous maintenance. In addition to using ECs and storage, the experience will be similar to running locally. IAAs database can ensure that enterprises can control their settings to the greatest extent, which naturally means that enterprises need to take more responsibilities.
Enterprises do not have to requisition hardware and use IAAs database to operate their own data center. However, you need to select the cloud provider infrastructure, and then install and manage the database within the parameters of the provider.
Let’s take a more intuitive look at the advantages and disadvantages of IAAs.
1. IAAs benefits
- With IAAs, enterprises will have more database options because they can choose to provide databases that are not equivalent to PAAS or SaaS versions.
- Using IAAs, you can configure your own database to work accurately according to your own needs.
- Like all cloud database options, IAAs provides almost unlimited scalability. If an enterprise has the ability to manage its own database, but is transitioning to avoid managing its own data center, IAAs is undoubtedly more in line with the needs of the enterprise.
- IAAs makes it easier to reproduce the local database infrastructure in the cloud.
- If the enterprise team has rich expertise and experience, IAAs can better control database software, operating system and other configuration options.
2. IAAs disadvantages
- If you choose IAAs database, you need to take full responsibility for daily maintenance, including handling backup, expansion, security and other precautions.
- Compared with PAAS and SaaS, enterprise team members need more database skills and cloud certificates, especially those related to database operation.
- Supporting the implementation of IAAs database takes a long time, and enterprises need to weigh the urgency of the project.
Will PAAS be the best choice for enterprises?
The database provided by PAAS makes further use of the advantages of cloud computing. The PAAS database helps automate provisioning, configuration, expansion, and other cluster management tasks. PAAS can save enterprises from setting up and managing infrastructure.
PAAS is an intermediate option in the IAAs PAAS SaaS continuum, and many cloud databases are provided in this way. They make it easier for teams to manage their databases through cluster automation tools. However, PAAS users still need to understand the number and type of nodes, capacity, fragmentation and other cluster details.
1. PAAS benefits
- Users can gain scalability advantages similar to IAAs deployment.
- With PAAS, suppliers simplify operations by providing management tools for provisioning, configuration, expansion, and other common operations.
- The supplier also handles basic management tasks, such as patches and updates.
2. PAAS disadvantages
- Although its operation burden is lighter than IAAs, it still needs to plan the cluster, specify the software version, as well as the number and type of nodes, instance size, and perform other tasks.
- Using PAAS also requires capacity planning, such as peak capacity / utilization and headroom, to cope with growth.
- With PAAS, users may still be responsible for some or all software upgrades.
SaaS: low configuration, instant productivity
SaaS is the most common software delivery mode for Cloud Applications: just log in and start working. Everyone is very familiar with SaaS applications, but when it comes to databases, the degree of familiarity will be greatly reduced.
SaaS database is usually the easiest database type to set up and maintain. Because the service provider is responsible for all technical issues, planning, supply and other daily tasks. In other words, the database is completely operated by the provider, and all cluster details are abstracted from the user. However, there may be fewer deployment and configuration options using SaaS databases.
1. SaaS benefits
- SaaS database undertakes most of the capacity and cluster planning work
- It abstracts all cluster management, so there is no need to configure nodes, node types or instance sizes.
- With SaaS, operations such as configuration or expansion do not require manual intervention.
- All software upgrades will be carried out transparently in the background.
- The pricing of SaaS database is usually based on the consumption of storage, calculation, I / O or query quantity, rather than the number or size of nodes. This means that the ratio of storage and calculation is not fixed according to the instance type.
2. SaaS disadvantages
- Using this model for cost estimation will be more difficult because there are fewer options that users can easily configure. However, due to the low burden of operation and maintenance, this is still the most affordable choice for many teams.
- Most databases provided as SaaS are specially built for the cloud. If users need this option, there is no corresponding self-management version.
Dbaas: diversity of Solutions
Here we introduce database as a service (dbaas), which usually refers to the database provided as PAAS or SaaS.
Now all major cloud platforms provide dbaas solutions. Some of them are closer to SaaS; Others are slightly closer to PAAS. Popular examples of dbaas solutions include Amazon relational database service (RDS), azure SQL database, mongodb atlas and Amazon dynamodb.
Solutions closer to PAAS can enable enterprises to avoid some operational problems and provide a self-management experience of these databases.
Solutions closer to SaaS provide out of the box database solutions that can easily add powerful database functions to applications. This may be a great choice for enterprises looking to start and run data applications quickly and easily with the shortest path.
Now there are various cloud databases to choose from, and their ease of use, control granularity and resource utilization are different.
Scope of database solutions related to control level and ease of use
As shown in the figure, the three database solution layers can be summarized as follows: IAAs provides more control than PAAS, and PAAS provides more control than SaaS.
IAAs requires the enterprise operation and maintenance team to do more work, followed by PAAS. It still needs to manually intervene in cluster management tasks. Because IAAs and PAAS bring greater management burden, it also means that more energy needs to be invested to optimize their cost and performance. SaaS needs the least manpower to reduce the burden on enterprise employees and improve efficiency.
When SaaS database is designed specifically for the cloud, it can maximize the elasticity of the cloud and the decomposition of computing and storage resources, which can improve performance or utilization.