Azure SQL Managed Instance Concepts
Azure SQL Managed Instance is a fully managed cloud database service that provides the broadest SQL Server engine compatibility with the benefits of a fully managed platform as a service (PaaS). This document covers the core concepts and architectural components of Azure SQL Managed Instance.
Key Architectural Concepts
SQL Managed Instance is designed to provide near 100% compatibility with the latest on-premises SQL Server Enterprise Edition. This is achieved through a native virtual network (VNet) implementation.
Instance Model
Each SQL Managed Instance instance is deployed within a dedicated subnet in your Azure virtual network. This provides:
- Network Isolation: Instances are isolated from the public internet by default. Communication is controlled through network security groups (NSGs) and Azure Firewall.
- Private IP Address: Each instance is assigned a private IP address within your VNet, allowing it to be accessed by applications deployed in the same VNet or peered VNets.
- Hybrid Connectivity: Enables seamless connectivity to on-premises resources via Site-to-Site VPN or Azure ExpressRoute.
Service Tiers and Hardware Configurations
SQL Managed Instance offers different service tiers and hardware configurations to meet your performance and cost requirements:
- General Purpose: Optimized for common workloads, offering balanced compute and storage.
- Business Critical: Designed for mission-critical applications requiring high performance, low latency, and high availability.
Within each tier, you can choose from various hardware configurations (e.g., Gen5) and scale the number of virtual cores (vCores) and storage capacity.
Managed Instance Components
A SQL Managed Instance consists of several managed components:
- SQL Server Engine: The core database engine, compatible with SQL Server.
- Management Service: Handles background operations, patching, backups, and monitoring.
- Azure VNet Integration: The networking layer responsible for VNet connectivity and isolation.
- Storage: Managed storage for data and log files.
- Compute: Allocated virtual machines for running the SQL Server engine.
Key Features and Benefits
SQL Server Compatibility
Enjoy broad compatibility with SQL Server, reducing the effort required for migrating existing applications. This includes support for:
- Instance-level features: SQL Agent jobs, database mail, linked servers, cross-database queries, and distributed transactions.
- T-SQL features: Stored procedures, functions, triggers, and common T-SQL syntax.
High Availability and Disaster Recovery
SQL Managed Instance provides built-in high availability and disaster recovery capabilities:
- Always On Availability Groups: Automatic failover and readable secondary replicas for Business Critical tier.
- Automated Backups: Regular full, differential, and transaction log backups that are automatically managed and stored.
- Point-in-Time Restore: Ability to restore databases to any point in time within the retention period.
Security
Security is a top priority for SQL Managed Instance. Key security features include:
- Network Isolation: Deploy within your private VNet.
- Azure Active Directory Authentication: Centralized authentication and authorization.
- Transparent Data Encryption (TDE): Encrypts data at rest.
- Always Encrypted: Encrypts sensitive data in transit and at rest.
- SQL Server Auditing: Tracks database events.
Use Cases
SQL Managed Instance is ideal for:
- Lift-and-shift migrations: Moving existing on-premises SQL Server workloads to the cloud with minimal changes.
- Modernizing applications: Benefiting from PaaS while maintaining SQL Server compatibility.
- New cloud-native applications: Developing new applications that leverage the power of SQL Server in a managed environment.
Next Steps
Explore the following resources to learn more about implementing and managing Azure SQL Managed Instance: