Moving your databases to the cloud clearly isn’t for everybody however there definitely are implementations where that makes sense. Smaller businesses and start-ups can often save considerable capital outlay by not having to invest in the hardware and software required to run an on-premise database. In addition, to cost saving there can be several other advantages as well. The cloud offers pay-as-you-go scalability. If you need more processing power, memory or storage you can easily buy more resources. Plus, there’s the advantage of global scalability and built-in geographical protections. By its very nature cloud resources can be accessed globally and most cloud providers have built-in geographical redundancy where your storage is replicated to secondary regions that could hundreds or thousands of miles away from your primary region. Finally, the cloud offers simplified operations. Business don’t have to worry about hardware maintenance or software patching. The cloud provider takes care of all of those basic maintenance tasks.
Choosing a cloud destination
If you’ve decided to that a move to the cloud might pay off for your business it’s important to realize that not all cloud databases are created equal. There are essentially two paths for running your databases in the cloud. The main database cloud providers used by most business today are Amazon RDS and Microsoft Azure. When you go to deploy a database in the cloud you can use an Infrastructure as a Service (IaaS) approach where you run your database inside a virtual machine (VM) that hosted by a cloud provider or you can use Database-as-Service approach where you use the database services directly. An example of an IaaS implementation could be an Azure VM running Windows Server and SQL Server. An example of the DBaaS approach is Azure SQL Database. The trade-off between the two essentially boils down to control You have more explicit control over the OS and the SQL Server settings in an IaaS VM implementation and less control over these type of factors in a Azure SQL Database implementation.
SQL Server - Azure Migration Tools
After you’ve decided to go with either a DBaaS or an IaaS type of cloud implementation then the next step is to pick the tools that you will need to migrate your data to the cloud. For a IaaS SQL Server implementation you can use the following tool:
- Deploy a SQL Server Database to a Windows Azure VM wizard -- The wizard makes a full database backup of your database schema and the data from a SQL Server user database. The wizard also creates an Azure VM for you.
If you are migrating to an Azure SQL Database then you can consider the following migration approaches.
- SQL Server Management Studio (SSMS) – You can use SSMS to deploy a compatible database directly to Azure SQL Database or you can use SSMS to export a logical backup of the database as a BACPAC which can be imported by Azure SQL Database.
- SQL Azure Migration Wizard (SAMW) – You can also use SAMW to analyze the schema of an existing database for Azure SQL Database compatibility and then generate a T-SQL script to deploy the schema and data.
Up in the Clouds
How you actually get to the cloud depends a great deal on the type of database cloud implementation that you choose. If you want more control then the IaaS option is best. If you want fewer operational responsibilities then the DBaaS option might be the better way to go.