If you’re considering moving to a database-as-a-service solution, there are a number of things you should keep in mind – cloud vendor lock-in, compatibility with open source database software that you can self-host, instance prices, egress prices, data sovereignty and location, security and high availability design, SLA and uptime. In this blog post we will go through them.
What is a DBaaS and Why Should You Use It?
Before actually telling you the things you should keep in mind when using a DBaaS, we should probably tell you what it is and why you should consider using it in the first place. In general, a database-as-a-service solution (frequently shortened to DBaaS) is such service that automates deployment and operations of their database, without the user needing to setup or configure software or hardware, nor having to operate it. DBaaS solutions are frequently used to cut the costs required to run and maintain database operations and streamline day-to-day database operations. According to 2019 research performed by BusinessWire, the DBaaS market is projected to grow by billions of dollars so it is indeed growing rapidly and the probabilities of your business needing to use a DBaaS in the future are pretty big.
What to Consider When Moving to a DBaaS?
Now that you know what a DBaaS actually is and why you should use it, you should also carefully consider some of the things when moving to such services. We will not cover how to choose a DBaaS since we already did that in an earlier blog post, but this part of the blog post should provide you with some ideas that you should keep in mind when moving to a database-as-a-service provider. Some of the things you should keep in mind include:
- Is this your first time using a database-as-a-service solution (did you use any such services in the past)? If so, moving to another DBaaS solution might be easier.
- Does the DBaaS service provider you are moving to offer the options you need? In other words, what do you require from a DBaaS provider? Will it satisfy your needs?
- If you are moving to a different DBaaS provider, why are you doing it? Does the DBaaS service provider you are moving to offer different options than the one you are currently using? Are there cost implications? Time implications?
In the beginning, we have also mentioned that when moving to a DBaaS you should keep in mind the need to avoid cloud vendor lock-in, instance prices and other things. Here’s why they are so important:
- Avoiding cloud vendor lock-in is important because it’s important to have options when choosing cloud providers. Vendor lock-in refers to a situation where you cannot easily transition to another service: it poses a number of risks including a data transfer risk, a risk related to the knowledge of your employees (for example, if you have used a cloud provider for years and then have to move, it will most likely be a very painful and long process etc.)
- The compatibility with open-source database software is also really important because database software is one of the most important points when choosing a database as a service provider. Should you decide to host the database on your own hardware, then you need the database software. If you are using a proprietary database that is only available from the DBaaS provider, then you are potentially looking at data format conversions, as well as rewriting applications from using a proprietary API to say a MySQL or PostgreSQL API.
- Instance prices are obviously one of important factors too – especially so if you have financial constraints. Look at the DBaaS solution carefully and examine the pricing structure, then choose the one according to your needs.
- You should also keep an eye on egress price as this can affect the total cost of the database service.
- Data location is also important – keep an eye on what your DBaaS solution offers in terms of location and choose carefully. For instance, with the GDPR, more and more companies based in the European Union require that their databases are stored in-country. The GDPR imposes restrictions on the transfer of personal data outside the European Union.
- Security and high availability of such services can also prove to be crucial to your business success – if your databases are highly available, you no longer have to stress about downtime and any resulting loss of business. Keep an eye on the SLA and uptime offered by your chosen DBaaS option as well.
As you can see, moving to a DBaaS might not be a very straightforward process. Thankfully, we do have a solution to propose – CCX by Severalnines should be a good alternative that addresses all of those issues.
Why Should You Use CCX?
If you are considering moving to a DBaaS, CCX can be fantastic. It can be fantastic because CCX is built on the power of ClusterControl and it can provide you with the ability to quickly and easily spin-up fully managed highly available database clusters in the cloud. For MySQL and MariaDB, it allows you to run Galera Clusters with all the benefits that come with them – multiple instances that are synchronously synced with each other so you can write and read from any of them, fast failover processes without data loss. A cluster can be deployed in multi-AZ configuration so that each node is deployed in a separate Availability Zone. Security-wise, you are able to deploy your database clusters inside of a VPC so all database instances only have private IP addresses, and set up VPC peering so only your applications are able to access the database instances. All that in just a couple of clicks. ProxySQL load balancers allow you control how your databases are being accessed. For Postgres, you can set up clusters based on streaming replication. Failures are automatically detected, and Secondary instances are promoted to Primary.
To put the CCX power to work for you, first create a new data store:
Select the number of nodes:
Then select your cloud provider and region:
Now select the size of your instance (this is another distinction of CCX – if your previous DBaaS provider did not offer much to choose from regarding instance sizes, CCX has quite a lot of options that can help you out in this regard):
Configure your network settings and review your deployment:
If everything goes well, your new deployment should be created in a matter of minutes:
If something goes wrong, CCX will alert you too:
When using CCX you can make sure you break free from mundane database management and maintenance tasks – leave them to CCX and database experts at Severalnines. To see the difference CCX can make when moving to a DBaaS, check out the features and pricing.