You can find out more about this series of posts in an introductory post I published about the series.
By the end of this post, you will have a good overview of Azure SQL Database. In addition, how your SQL Server background can come in handy with it. Plus, this post contains plenty of links to help along the way.
To manage expectations, this post is aimed at those who are not too familiar with Azure SQL Database. However, there can be parts which are new to those who know about Azure SQL Database as well.
For example, a new feature that is now available in the Azure portal for Azure SQL Database.
However, I decided to cover Azure SQL Database first for a couple of reasons.
First reason is because working with Azure SQL Database is one of the services available as part of Azure SQL. Working with it is similar to working with databases within SQL Server which should make adoption of it easier.
To help with some jargon here, Azure SQL refers to the collection of the below Azure SQL database services that are available in Azure:
- SQL Server on Azure Virtual Machines
- Azure SQL Database
- Azure SQL Edge
- Azure SQL Managed Instance (aka Managed Instances)
Microsoft provides a dedicated experience in the portal which allows you to deploy any of the above list from a central location. Which you can see below.
Second reason is because I consider Azure SQL Database to be the Swiss Army knife of Azure SQL services. Because it has been used for a variety of things over the years.
For example, some people use it to store various types of metadata for use with other Azure services. Others have practiced sharding and created a single Azure SQL Database for each of their customers.
Which is why I think it has been a popular starting point for anybody who has been spreading their SQL Server wings with Azure SQL services. Well, that and the fact that it is the longest serving Azure SQL PaaS service that has been available.
Azure SQL Database
Azure SQL Database has been around for some time now. Its concept is great, you deploy and work with a single database.
In reality, each database still requires to be linked to a logical SQL Server in Azure when being deployed. Due to the fact that some actions require a master database. However, most of the time you connect and work with the single database hosted in Azure.
You can deploy Azure SQL Databases at various levels of compute using various purchasing models. Microsoft provides a good guide that compares vCore and DTU-based purchasing models of Azure SQL Database.
Plus, there is a Hyperscale service tier for those who require high performance and capacity.
Managing Azure SQL Database
Just like SQL Server, you can manage Azure SQL Database in a variety of ways. One easy way to manage a single Azure SQL Database is through the Azure portal. Which has matured a lot over the years.
If you have yet to start working with Azure SQL Database, it is worth deploying one within your own account and exploring what is available in the below portal.
You can even work with T-SQL whilst within the portal. By using the query editor feature. Which you can see below.
Rather interestingly, the query editor now contains a link to Azure Data Studio.
In reality, others prefer to manage their databases outside of the portal for various reasons.
Some connect up to databases directly from their computers. However, for security reasons a lot of companies prefer to connect through a more secure method. For example, through Azure Bastion.
I highly recommend you do your research to make your Azure SQL Databases as secure as possible.
SQL Server background
Anyway, you can use your SQL Server background a lot within Azure SQL Database. Due to the fact that a lot of the T-SQL syntax and features are supported.
Plus, a lot of performance tuning tasks still apply. For example, indexing strategies.
To manage expectations here there are some differences between what T-SQL you can use in SQL Server and Azure SQL Database. Which you can view in the Microsoft guide that explains T-SQL differences between SQL Server and Azure SQL Database.
Another interesting fact is that some new features are deployed to Azure SQL Database first. Before they make their way to SQL Server on-premises.
CI/CD for Azure SQL Database
You can deploy to Azure SQL Database using the same methods as SQL Server. To deploy using a traditional database project you can change the target platform to be for Azure SQL Database.
Bear in mind that if you currently cannot natively work with tSQLt inside an Azure SQL Database.
One workaround for this is to deploy updates to a SQL Server database first to perform the unit tests on. Afterwards, convert the project to different database target platform and create a dacpac based on the new target platform. Similar to how I done it in a previous post.
Azure SQL learning resources
Microsoft Learn provides an Azure SQL fundamentals course that can help you get up to speed with the basics for Azure SQL Database. For a deeper dive into Azure SQL I recommend the Azure SQL revealed book by Bob Ward.
Those of you interested in related certifications can view a post of mine about recommended SQL Server certifications and badges.
I hope this post about spreading your SQL Server wings with Azure SQL Database has helped some of you get a better understanding it. Plus, what services are part of Azure SQL.
I highly recommend exploring what you can do with Azure SQL Database if you have yet to try it. Because it has so much potential. Plus, if you have not looked at it for a while it is worth revisiting to check out the newer features.
Of course, if you have any comments or queries about this post feel free to reach out to me.