News & Resources

What are the Key Challenges of Migrating Databases to Azure?

In Software & Cloud Economics

Databases are the cornerstone of businesses, so a successful migration to Azure is essential. Let’s look in more detail at what these problems are and how they are overcome. 

Today more and more companies are adopting big-data and cloud-based architectures to meet growing business demands. However, while these new technologies offer a number of operational benefits, there are some key problems which must not be overlooked.  

It’s fair to say that many businesses IT systems and workload applications are underpinned by a type of database. So before moving a database to Azure, you need to make an assessment of the range of applications, how they are used and interact with the backend databases. It is critical to understand how these services can function in Azure.

There are many challenges when migrating databases to Azure, but these are in most cases dependent on how services are used today. For many organisations – underpinned by years of developed bespoke code and inter-dependent communications between databases and systems – assessment and planning are critical prior to any migration.  

The largest, more established public cloud providers, such as Azure, have hosting centres in different locations around the world. However, the features and options supported might differ depending on the physical location. Furthermore, the legal framework in those locations might be not be quite the same as in your own jurisdiction and you may even have obligations to retain data within a specific territory, like the EU. 

In addition, there may be clear advantages of both scale and licensing – for example, with Microsoft SQL Server PaaS on Azure, the database license is included and your payment is calculated in terms of database processor units.  

How to successfully migrate to Azure

It is essential to have a full comprehension of what the databases are doing today, how they are licensed, what purpose they serve to the associated application and what they require in future. 

Ensuring compatibility and making sure security is considered around the data is an integral and critical part of any planning. The information collated will help to define any remedial actions plus will help narrow the choice of database services available from the cloud providers. 

For its part, Microsoft has the new Data Migration Assistant that will help to assess where SQL in Azure could work. Use such tools to analyse the schema and data of your on-premise databases, as these will give you advice on the right database engine to use. 

It is worth noting that if looking to migrate a database that the service is not live as part of the migration. There are tools that can be used as part of this process, but it is best to cut over to a cloud database in a controlled state to ensure data integrity and consistency is maintained. 

Another problem when migrating databases to the cloud is that the process requires significant downtime. So to mitigate this, companies should plan to migrate non-core apps that can afford downtime of a few hours as a first port of call to minimize business disruption. 

Lastly, as challenges commonly arise in complex environments, the entire database schema should not be migrated into the cloud at once. The schema should instead be applied in parts. There are also schema, data tables and primary keys created by database conversion tools offered by large cloud providers, such as Azure, which can greatly aid migration. 

Maintaining security

There can be a number of issues when migrating databases to the cloud. Security, data confidentiality and controls against threats such as SQL Injections can all present major challenges for IT departments. 

These can be overcome by initially only migrating those databases and applications which are not mission critical, and which require lower levels of security. In addition, businesses can deploy security assurance tools in the cloud that give visibility into the effectiveness of the cloud provider security controls, enabling them to monitor and protect the entire environment. 

Post migration

Once the migration is complete, you should monitor the performance of your new Azure-based infrastructure and compare the metrics of the migrated database with the agreed KPIs. This comparison is something that should be done often. 

Once you’ve succeed in doing this, it is time to look at the rest of your enterprise application landscape and identify databases and systems that could be targets for your next migration. If those are not ready for an outright "lift and shift" migration, it may be wise to contemplate transforming large, tightly coupled applications and databases and re-platform them using a micro-services architecture.  

For a discussion or advice on digital transformation or migrating databases to Azure, please contact a member of the team today.