Cloud Open Source Database Migration Options

MarkBurgessMark Burgess  |  

Trying to figure out which cloud service provider to choose for your open source database migration? When switching from a commercial, on-premise database to open source there are a number of cloud database migration options available.

Most cloud providers offer DBaaS across many of the common open source database engines such as MySQL, PostgreSQL, and MariaDB, plus non-relational databases like MongoDB and Redis. While creating, running, and managing a database with each cloud provider may be easy, migration takes a little more patience and setup.

We take a deeper look into migrating from commercial engines to AWS, Azure, and Google Cloud for open source database storage and operations – along with considerations for deploying to your own on premise private cloud environment.

Database migration can be a clever move – provided you review your current system, then choose the correct database type and provider to migrate to.

AWS

AWS offers most of the popular open source relational and NoSQL databases as fully managed database cloud services. There is a wide range of database platforms and options available, covering most enterprise database requirements.

Pros

Cloud database migration assistance

The AWS SCT (Schema Conversion Tool) helps to generate reports and suggest database changes required for smooth migration when migrating cross-engine.

Minimise migration downtime

Once you’ve converted, AWS’s Data Migration Service is an automated tool to help move your database/s to AWS while reducing downtime.

High availability

For instance, with relational databases, the AWS RDS service offers the capability to launch multi-availability zone instances to support mission critical databases.

Full control

With AWS, you can choose a fully managed database service, such as AWS RDS (supporting open source PostgreSQL, MySQL Community edition, and MariaDB) or deploy your open source databases (after conversion) on EC2 for complete control.

Dynamic scaling

AWS cloud databases can be easily scaled to meet workload requirements.

AWS Aurora for MySQL and PostgreSQL

AWS Aurora is an AWS proprietary database specifically designed for compatibility with MySQL and PostgreSQL implementations, which you can roll over to should your performance needs increase.

Database authentication

With AWS, you can implement strong authentication using AWS Identity and Access Management (IAM) with both PostgreSQL and MySQL.

Cons

Limited access

Access to managed RDS databases is limited to database connections only. Administrators are unable to connect directly to the back end database server. This may only suit certain types of applications; in others, if you want to migrate to the AWS cloud, you can convert to open source first, then host on EC2 instances.

May not cover all bases

Some extensions or features that you’re used to using may not be supported with managed AWS database services. Migration from source to target services isn’t always straightforward, depending on your source DB and target DB.

Microsoft Azure

The second most popular cloud platform, Azure, also provides fully managed DBaaS. Azure Cloud can be used for both relational and NoSQL open source databases.

Pros

Highly scalable

Easily add resources, or add elastic scalability to databases to ensure smooth scaling.

Highly available

Azure relational database services are all backed by an industry-leading 99.99% availability SLA, or 99.995% for certain agreements.

Strong database authentication for PostgreSQL single server target implementations

Azure can use Active Directory for access management with Azure Database for PostgreSQL – single server.

Cons

Does not support commercial versions of open source databases

Azure supports only Community-edition PostgreSQL, MySQL, and MariaDB engines, unlike AWS.

Lack of migration assistance

The Azure database migration service provides only limited support for cloud database migration – and currently no support for commercial to open source implementations (besides their Migrate Oracle to Azure Database for PostgreSQL documentation and tooling).

Google Cloud

Cloud SQL is a fully managed database service that allows you to set up, maintain, manage, and administer your relational PostgreSQL and MySQL databases.

Pros

Highly available

Cloud SQL can utilise a high availability configuration for PostgreSQL and MySQL databases.

Scalable

Easily scalable if your workloads increase.

Cons

No in-built migration tooling

Cloud SQL does not provide any conversion tool to generate reports and make changes for a smooth cloud database migration. Migration works via a traditional SQL dump, export, and import to migrate – hence it would be challenging to migrate bigger databases.

On Premise

All the common open source databases can be deployed on premise on your private network. This can be a valid approach where there is an existing database platform and you are looking to introduce an open source database service offering.

Pros

Full control

You have full control of your database and the underlying database platform.

Network configuration

There is no dependency on setting up a virtual private network in the cloud and connecting your existing systems to the cloud databases.

Existing hardware

You can leverage capacity in your existing infrastructure to provision an open source database.

Network latency

Migrating between database platforms on premise removes the need to perform a complex cloud migration project.

Data security

You have complete control over your data security, as data is not stored or transmitted to a third party.

Cons

Maintenance and support

On premise open source databases still require effort to setup and run.

Scalability

Increasing the scalability of open source databases typically requires additional infrastructure and adopting a scale out model with read replicas.

Database migration service

Limited or no access to cloud based database migration tools to minimise the downtime for cutover.

About the Author

Leave a comment

Send this to a friend