The speed of the spread of Microsoft Windows Azure was a surprise, and developers were unusually quick to accept it. using Microsoft Windows Azure as a cloud platform, applications can easily migrate to the cloud. It is windows-based and. NET, so it is highly compatible with the developers ' existing applications.
Typically, an application needs to go through two critical phases if it is to migrate to the cloud. The first phase is to make as few changes as possible, and the second phase is to upgrade some components of the application. in the first phase, just change the places that have to be changed, The lets it work in Microsoft Azure "intact". The second is , which allows your application to take advantage of the unique capabilities offered by Microsoft Azure.
In this article, we'll discuss some of the issues that you'll encounter in the process of completing the first phase, as long as you can work properly in Microsoft Azure. Most migration projects start with a "cloud adaptive" analysis that helps you identify which parts of the migration you need to do some extra work. When you're in the first phase, figuring out your system architecture is critical, and you need to minimize the code changes that you have to make. If you use a complete unit test suite to build your system, you can start cheering now.
1, data migration
Starting at the bottom of the application, we have to confront the problem of where we should store the data and how to store it. The most common asp.net applications use SQL Server to store data in relational data models. No matter how your code uses these data (Entity Framework, NHibernate, ADO. NET, etc.), you should focus on how to migrate your SQL database to SQL Azure. Doing so allows your application to be in a "near data" scenario where applications can maintain a high degree of responsiveness.
An application in Microsoft Azure can connect and work with data through a built-in SQL Server, but doing so creates a "far data" scenario. In this scenario, the latency of data access is large and performance is reduced.
SQL Azure and SQL Server are highly compatible, so it is not difficult to migrate, especially for small databases. You have to pay attention to the maximum size of the SQL Azure database you can use, which is currently 50GB. If your database is larger than this size, then you have to split your data.
There is an open source tool called SQL Azure Migration Wizard that can help you accomplish this task, and you can use it to analyze and migrate your data. It can analyze your current pattern, point out where it is incompatible with SQL Azure, and then help you modify these places. Then, it can use BCP in the background to migrate your data into the cloud. You can find this tool on this page.
In the long run, you can analyze your data to determine which data is inherently non relational and migrate them to Windows Azure Table storage.