When it comes to moving SQL Server databases to the cloud — the AWS cloud in particular, makes the decision to do so is the easy part. After all, the benefits of both cloud migration and the AWS cloud are well documented.
Where the difficulties lie are in the various decisions that must be made along the way. Among them: Will you continue using SQL server or switch to a different database engine? If you stick with SQL server, will you go with a managed or unmanaged cloud-based option?
If you’re moving away from SQL Server, should you opt for an open-source or cloud-native database? If you’re moving multiple SQL Server databases to AWS, do you have to make the same choice for all of them?
How will you migrate your databases from your on-premises environment to the AWS cloud? Will rehosting suffice or do you need to re-platform or refactor? And will you use an offline or online migration method?
There’s a lot to consider and to do. And as is usually the case, there’s no one-size-fits-all solution.
Do It Yourself or Partner Up
The correct course of action for migrating SQL Server databases will depend on numerous factors, ranging from business requirements to timeframe and budget parameters.
For many organizations, working with a third-party company that specializes in database migration eases much of the burden. In many cases, the steps entailed and decisions that need to be made are interconnected. A partner with extensive experience in database migrations is likely to know what works and what doesn’t, so it can help ensure that the decisions made will generate optimal outcomes.
If that partner has AWS-specific expertise, all the better. It will be better positioned to leverage AWS’s many resources to streamline the migration process, reduce costs and ensure success.
Whether you go the partner route or forge ahead alone, the information that follows provides a high-level overview of some of the various considerations for moving SQL Server databases to the AWS cloud.
Among the first things to do is to review your SQL Server database workloads. This will provide an understanding of their complexity, compatibility, and other factors that may influence your migration choices. That includes things such as:
Next up, determine the migration type you’ll use to move your on–premises SQL Server databases to AWS: homogeneous and heterogeneous.
With a homogeneous migration, you’ll continue using SQL Server, but will be doing so in the AWS cloud using either a self-managed or fully managed option (see details in #3). You retain the familiarity of working in SQL Server while moving up-stack without experiencing any downtime.
A heterogeneous migration, on the other hand, entails switching to a different database engine and may require some downtime. You can opt for an open-source database engine such as MySQL or PostgreSQL or a cloud-native database such as Amazon Aurora, Amazon DynamoDB or Amazon Redshift.
Open-source databases are more cost-effective than the proprietary kind like SQL Server due to low operating costs and no licensing fees. You also avoid vendor lock-in periods. However, transitioning to an open-source database can be difficult and time-consuming. Fortunately, services like AWS Database Migration Service (AWS DMS) and AWS Schema Conversion Tool (AWS SCT), can speed up the process with minimal downtime.
Cloud-native databases are cost-effective alternatives too and are the way to go if workload modernization is a priority. As the name indicates, cloud-native allows for fully taking advantage of cloud benefits such as scalability, elasticity, automatic updates, easy implementation, and access that allows databases to expand and become more distributed.
AWS offers numerous services to facilitate this option as well, in addition to a variety of development resources that enable building cloud-native applications in the new AWS environment.
If you’re going to stick with SQL Server databases on AWS, you can manage them yourself with SQL Server on Amazon Elastic Compute Cloud (Amazon EC2). Or you can let AWS handle the management by using SQL Server on Amazon RDS.
Whether you continue working with SQL Server databases or transition to open source or cloud-native databases, you have to decide how to move your on-premises databases to the cloud. The primary choices are: rehosting, replatforming or refactoring.
One potential challenge is that your new environment will need to be optimized so that you don’t waste money on storage and computing power you don’t need.
One of the biggest disadvantages, however, is that replatforming can quickly balloon in scope. To avoid scope creep, it’s important to focus on changing only the specified features.
Refactoring is required if you’re migrating to an open-source database or to cloud-native database such as AWS’s Aurora PostgreSQL.
As previously noted, there is no single solution that works for all organizations. If you’re migrating multiple SQL Server databases to the AWS cloud, you might find some will work better running directly on Amazon EC2 while others work better with Amazon RDS. It may be optimal to modernize a SQL Server database running on Windows to run on a Linux operating system to save on cost and licenses.
In addition, it could be beneficial to employ a phased migration approach. Doing so helps reduce costs, resources, and risks during the migration phase and enables you to focus on optimization and modernization in the next phase.
Let’s say you want to transition an on-premises SQL Server database to Aurora MySQL. Initially, you could rehost it on Amazon EC2 or replatform it on Amazon RDS for SQL Server. Then, in a subsequent phase you could refactor it to Aurora MySQL.
Yet another decision that will need to be made is whether to use offline or online migration to move your SQL Server databases from an on-premises environment to AWS. Your choice will be based in large part on your migration timeline and how much downtime you can allow.
Your Next Steps
The considerations cited are just a few of the many you’ll likely encounter during a database migration project. While it may seem overwhelming, it doesn’t have to be.
The migration experts at Opti9 can help.
They employ a proven, flexible framework of services designed to not only help organizations migrate to AWS. It enables them to make the most of all that AWS has to offer. That’s because Opti9 is an exclusively AWS Certified Advanced Consulting Partner and direct reseller focused on compliance-driven migration and spend optimization of legacy workloads and cloud-first application development.