Azure SQL is Microsoft’s cloud offering of a database as a service using the Microsoft SQL Server Engine. It is built using the SQL server database technology and is tailored for the Azure cloud platform. Azure SQL makes it possible for organizations to store all of its relational data in the Azure cloud and quickly and upscale or downscale the size of the databases as business requires. It also offers a fully managed, intelligent, reliable, and secure database service. Unlike the traditional SQL, there is no need to maintain any infrastructure, and it can be used to build websites and data-driven applications using your programming language of choice.
Microsoft is committed to a cloud-first strategy, so all of the new and improved features of SQL Server are initially released to the Azure SQL and then passed on to the SQL server. If your business has adopted Azure SQL services, there are no worries about any overhead for patching or upgrading since Microsoft is responsible for handling and updating all of the SQL code bases.
Azure SQL Plans
Similar to other SQL services, Azure SQL also offers multiple tiers to choose from that are best suited to your usage purposes as Basic, Standard, and Premium.
The basic tier has just a single performance level and is only suitable for initial development and for using applications with very low activity. The basic tier limitation supports 30 concurrent logins and 300 sessions at any given time.
The standard tier is the best option for most cloud applications of web applications and workgroups. This tier supports 60 to 200 concurrent logins and 600-2400 sessions given the performance level. These performance levels are from S0 to S3.
The premium tier is designed for businesses with a high rate of transactional volumes. The premium tier supports 200-6400 concurrent logins and has 30,000 concurrent sessions in different performance levels of P1 to P15.
Figure 1 Source: Microsoft
Azure SQL Database instances
The SQL Database managed instance enables native virtual environment support and SQL server engine compatibility to migrate the SQL Server databases to the Azure SQL without the need to change any application. It’s the recommended solution when migrating a large number of existing SQL Server databases from on-premises to the Azure SQL.
Elastic pools are an instance of a shared resource model that both share utilized resources efficiently. This is possible when all the databases are in the same elastic pool are sharing allocated resources. These pools are ideally used in multitenant scenarios and are best for new SaaS applications or to modernize the existing local applications with the SaaS.
A single database is useful for very stable workloads that have applications with predictable patterns. It is also possible to blend single databases with elastic pools to easily and instantly adapt to any situation.
Benefits of Azure SQL
The following are a few benefits of Azure SQL among many:
No Physical Administration
There is no need to worry about setting up the SQL Server, maintaining it, and apportioning databases. This is a huge advantage since there is no need to worry about storage levels, memory use, and performance issues because Azure handles the infrastructure.
Scalable Performance and pools without downtime
Since each database is portable and isolated from each other, performance levels are scalable as required. When there is a rapid growth that changes the resource requirement, Azure SQL automatically adjusts its performance to match the demand.
Figure 2 Source: Microsoft
Also, when an application is built on the Azure SQL basic tier and is made available to the public, the tier can be automatically triggered to change its level to meet needs without downtime for both the application and its customers.
Monitoring and Alerting
Using features like the Azure SQL built-in performance monitoring and alerting tools, the project scaling needed can be easily determined. These tools can also provide a diagnostic log with metrics to make monitoring easier by configuring the SQL database to store resource use, session details, and user details.
Figure 3 Source: Microsoft
With advanced built-in security and protection features, sensitive data will be dynamically masked and encrypted. Azure SQL Databases also make use of built-in intelligence which learns the database patterns and optimizes them for better performance and protection. The databases are also monitored using threat detection which detects any potential malicious activities and reports them to the administrator to take countermeasures. Threat detection makes it simple to react to potential threats to the database without needing to have a security background or other 3rd party security monitoring systems.
Azure AD integration and MFA
Azure Active Directory integration helps to centrally manage identities of database users and other Microsoft services. With Azure active directories supporting Multi-Factor Authentication, this increases both application and data security while utilizing the single sign-on option. These features also enhance the security of the databases.
Azure SQL availability
Azure SQL guarantees a 99.99% availability with Azure’s global data centers ensuring that the applications and databases are available and up and running 24/7. SQL databases also provide the additional built-in features of business continuity and scalability. Additionally, the following features are also available for SQL databases:
- Automatic Backups – Similar to traditional SQL databases, Azure SQL also has full, differential, and transaction logs which are automatically backed up without the need to configure them manually.
- Point-in-time restore – Azure SQL also supports recovery to any point in time of the backup retention period.
- Geo-Replication – With Azure’s global data centers, it is possible to configure up to four readable secondary databases.
- Zone-redundant databases – This allows the databases to be provisioned in multiple geo locations so that there are high levels of availability for database replicas. It is possible to recover automatically if there is a data center scale failure of Azure.
- Failover groups – With failover groups, Azure SQL Databases enables high availability and load balancing at a global scale. Along with geo-replication, it is easy to create globally distributed SaaS applications with very limited administration since all the complex tasks of monitoring, failover, and routing are handled by the Azure SQL Database.