Describe Azure SQL Services and Capabilities
Describe Azure SQL Services and Capabilities
capabilities
Completed100 XP
10 minutes
Azure SQL is a collective term for a family of Microsoft SQL Server based database
services in Azure. Specific Azure SQL services include:
Azure SQL Edge is included in this list for completeness. We'll focus on the other options
for more general relational database scenarios in this module.
Compare Azure SQL services
SQL Server on Azure VMs Azure SQL Managed Instance Azure SQL Database
SQL Server running on an Azure virtual machine effectively replicates the database
running on real on-premises hardware. Migrating from the system running on-
premises to an Azure virtual machine is no different than moving the databases
from one on-premises server to another.
This approach is suitable for migrations and applications requiring access to operating
system features that might be unsupported at the PaaS level. SQL virtual machines
are lift-and-shift ready for existing applications that require fast migration to the cloud
with minimal changes. You can also use SQL Server on Azure VMs to extend existing on-
premises applications to the cloud in hybrid deployments.
Note
A hybrid deployment is a system where part of the operation runs on-premises, and part
in the cloud. Your database might be part of a larger system that runs on-premises,
although the database elements might be hosted in the cloud.
You can use SQL Server in a virtual machine to develop and test traditional SQL Server
applications. With a virtual machine, you have the full administrative rights over the
DBMS and operating system. It's a perfect choice when an organization already has IT
resources available to maintain the virtual machines.
Create rapid development and test scenarios when you don't want to buy on-
premises non-production SQL Server hardware.
Become lift-and-shift ready for existing applications that require fast migration to
the cloud with minimal changes or no changes.
Scale up the platform on which SQL Server is running, by allocating more
memory, CPU power, and disk space to the virtual machine. You can quickly resize
an Azure virtual machine without the requirement that you reinstall the software
that is running on it.
Business benefits
Running SQL Server on virtual machines allows you to meet unique and diverse business
needs through a combination of on-premises and cloud-hosted deployments, while
using the same set of server products, development tools, and expertise across these
environments.
It's not always easy for businesses to switch their DBMS to a fully managed service.
There may be specific requirements that must be satisfied in order to migrate to a
managed service that requires making changes to the database and the applications
that use it. For this reason, using virtual machines can offer a solution, but using them
doesn't eliminate the need to administer your DBMS as carefully as you would on-
premises.
Managed instances depend on other Azure services such as Azure Storage for backups,
Azure Event Hubs for telemetry, Microsoft Entra ID for authentication, Azure Key Vault
for Transparent Data Encryption (TDE) and a couple of Azure platform services that
provide security and supportability features. The managed instances make connections
to these services.
All communications are encrypted and signed using certificates. To check the
trustworthiness of communicating parties, managed instances constantly verify these
certificates through certificate revocation lists. If the certificates are revoked, the
managed instance closes the connections to protect the data.
Use cases
Consider Azure SQL Managed Instance if you want to lift-and-shift an on-premises SQL
Server instance and all its databases to the cloud, without incurring the management
overhead of running SQL Server on a virtual machine.
Azure SQL Managed Instance provides features not available in Azure SQL Database
(discussed below). If your system uses features such as linked servers, Service Broker (a
message processing system that can be used to distribute work across servers), or
Database Mail (which enables your database to send email messages to users), then you
should use managed instance. To check compatibility with an existing on-premises
system, you can install Data Migration Assistant (DMA). This tool analyzes your
databases on SQL Server and reports any issues that could block migration to a
managed instance.
Business benefits
Azure SQL Managed Instance enables a system administrator to spend less time on
administrative tasks because the service either performs them for you or greatly
simplifies those tasks.
Azure SQL Managed Instance has near 100% compatibility with SQL Server Enterprise
Edition, running on-premises.
Azure SQL Managed Instance supports SQL Server Database engine logins and logins
integrated with Microsoft Entra ID. SQL Server Database engine logins include a
username and a password. You must enter your credentials each time you connect to
the server. Microsoft Entra logins use the credentials associated with your current
computer sign-in, and you don't need to provide them each time you connect to the
server.
Azure SQL Database
Azure SQL Database is a PaaS offering from Microsoft. You create a managed database
server in the cloud, and then deploy your databases on this server.
Note
A SQL Database server is a logical construct that acts as a central administrative point
for multiple single or pooled databases, logins, firewall rules, auditing rules, threat
detection policies, and failover groups.
Single Database
This option enables you to quickly set up and run a single SQL Server database. You
create and run a database server in the cloud, and you access your database through
this server. Microsoft manages the server, so all you have to do is configure the
database, create your tables, and populate them with your data. You can scale the
database if you need more storage space, memory, or processing power. By default,
resources are pre-allocated, and you're charged per hour for the resources you've
requested. You can also specify a serverless configuration. In this configuration,
Microsoft creates its own server, which might be shared by databases
belonging to other Azure subscribers. Microsoft ensures the privacy of
your database. Your database automatically scales and resources are allocated or
deallocated as required.
Elastic Pool
This option is similar to Single Database, except that by default multiple databases can
share the same resources, such as memory, data storage space, and processing power
through multiple-tenancy. The resources are referred to as a pool. You create the
pool, and only your databases can use the pool. This model is useful if you have
databases with resource requirements that vary over time, and can help you to reduce
costs. For example, your payroll database might require plenty of CPU power at the end
of each month as you handle payroll processing, but at other times the database might
become much less active. You might have another database that is used for running
reports. This database might become active for several days in the middle of the month
as management reports are generated, but with a lighter load at other times. Elastic
Pool enables you to use the resources available in the pool, and then release the
resources once processing has completed.
Use cases
Azure SQL Database gives you the best option for low cost with minimal administration.
It isn't fully compatible with on-premises SQL Server installations. It's often used in new
cloud projects where the application design can accommodate any required changes to
your applications.
Note
You can use the Data Migration Assistant to detect compatibility issues with your
databases that can impact database functionality in Azure SQL Database. For more
information, see Overview of Data Migration Assistant.
Modern cloud applications that need to use the latest stable SQL Server features.
Applications that require high availability.
Systems with a variable load that need the database server to scale up and down
quickly.
Business benefits
Azure SQL Database automatically updates and patches the SQL Server software to
ensure that you're always running the latest and most secure version of the service.
The scalability features of Azure SQL Database ensure that you can increase the
resources available to store and process data without having to perform a costly manual
upgrade.
The service provides high availability guarantees, to ensure that your databases are
available at least 99.995% of the time. Azure SQL Database supports point-in-time
restore, enabling you to recover a database to the state it was in at any point in the past.
Databases can be replicated to different regions to provide more resiliency and disaster
recovery.
Advanced threat protection provides advanced security capabilities, such as vulnerability
assessments, to help detect and remediate potential security problems with your
databases. Threat protection also detects anomalous activities that indicate unusual and
potentially harmful attempts to access or exploit your database. It continuously
monitors your database for suspicious activities, and provides immediate security alerts
on potential vulnerabilities, SQL injection attacks, and anomalous database access
patterns. Threat detection alerts provide details of the suspicious activity, and
recommend action on how to investigate and mitigate the threat.
Auditing tracks database events and writes them to an audit log in your Azure storage
account. Auditing can help you maintain regulatory compliance, understand database
activity, and gain insight into discrepancies and anomalies that might indicate business
concerns or suspected security violations.
SQL Database helps secure your data by providing encryption that protects data that is
stored in the database (at rest) and while it is being transferred across the network (in
motion).
https://www.youtube.com/watch?v=_Lkj93jglf0