From On-Prem to Next-Gen: Simplifying SQL Server Migrations

Description

Azure SQL Managed Instance Next-gen General Purpose delivers faster performance, greater scalability, and simplified management. In this session, learn how we migrated 1,000+ SQL Server databases at scale with near-zero downtime, and how Azure Arc’s new migration experience streamlines assessment, replication, monitoring, and cutover, making your SQL Server migrations smooth and predictable.

Key Takeaways

My Notes

Action Items

Slides

From On-Prem to Next Gen:
Simplifying SQL Server
Migrations
Rob Carrol
Principal Consultant, Coeo
rob.carrol@coeo.com
https://www.linkedin.com/in/rob-carrol-sql/
SQL MI Next-Gen GP
Why migrate?
Migration tools
Lessons learned
Azure SQL
SQL Server
on Azure Virtual Machines
Azure SQL
Managed Instance
Azure SQL
Database
Best for: Migrating (“lift and shift”) 3rd
party apps to customer-managed
Azure virtual machines.
Best for: Migrating custom apps at-scale
to a Microsoft-managed,
SQL Server-compatible instance.
Best for: Developing highly-scalable, AI-ready
applications with SQL’s reliability and security
at commercial open-source database costs.
Migration
Innovation
Azure SQL Managed Instance
Modernize SQL Server to a fully managed platform as a service
Increase DBA productivity
Keep your data
secure and available
Enable hybrid
flexibility for SQL data
stored anywhere
Modernize with AI
Evergreen compute and
storage technologies
Fully managed
and always up to
date service
Industry-leading,
multi-layered protection
Cloud connectivity
and Azure innovation
extended to on-premises
Support for native vector
data type and functions
Optimized automatically
through ML-based tuning
Performs timeconsuming tasks on your
behalf
Built-in high
availability and SLA
up to 99.995%
Migration options on your
terms
Fast, accurate vector
indexing and search with
DiskANN
Lower cost compared to
competitors
Accelerates deployment
and scaling
Built-in controls and
leading compliance
Unified management
across environments
Real time analytics with
zero ETL using Fabric
mirroring
Optimize performance for
mission critical workloads
SQL Managed Instance
Next-gen General Purpose
SQL Managed Instance architecture model
GP “classic”
stores files on
page blobs
GP Next-Gen
stores files on
Elastic SAN
TempDB on local SSD
Performance, scale and improved TCO
Enjoy better performance
and scale
Configure for peak
efficiency
Flexible compute, storage and
memory options
5x performance, 2x storage, and 5x more
databases
Maximize efficiency to match
unique workload demands
Enhance ROI with configurable IOPS
and memory slider
What’s included
Scale up to 128 vCores
Up to 870 GB of memory
Up to 32 TB of storage
Up to 500 DBs per instance
Maximize efficiency with
configurable IOPS and
memory/vCore ratio
Same base cost as “classic” General Purpose
SQL MI Next-gen GP vs classic GP and BC
Category
Storage model
Storage performance
Storage scalability
Compute scalability
Item
Classic GP
Next-gen GP
BC
Performance limits
Per-file
Per-instance
Per-instance
Average I/O latency
5-10 ms
3-4 ms
1 ms
Max data IOPS
<50k IOPS ()
80k IOPS (
)
320k IOPS
Max data throughput
~500 MB/s ()
1200 MB/s (
)
Unlimited
Max log rate
120 MB/s
192 MB/s
192 MB/s
Max storage
16 TB
32 TB
16 TB
Max DBs/instance
100 DBs
500 DBs
100 DBs
Max files/instance
230 files
32k files
32k files
IOPS slider
No
Yes
No
Min vCores
4 vCores
4 vCores
4 vCores
Max vCores
80 vCores
128 vCores
128 vCores
Num. of vCore sizes
8 click stops
16 click stops
16 click stops
Memory slider
No
Yes
No
Next-gen GP and BC
offer optimal customer
experience
BC provides the best
storage performance
Next-gen GP provides the
best storage scalability
Next-gen GP and BC offer
resource flexibility
(*) subject to VM-level network limits – more pronounced for smaller instances
Portal user experience
When the user selects “Enabled” for Next-gen GP,
the UX is updated to reflect the new limits and
new capabilities enabled by the Next-gen tech.
Existing sliders are updated with new limits:



vCore slider can go from 4 to 128
vCore slider has more interim values
Storage slider can go all the way to 32 TB
New sliders are added for additional IOPS and memory:


Baseline values for IOPS and memory are free of charge
Customers can go beyond the default (extra charge)
Click to edit Master title style
Scenario
Datacenter exit
PaaS-first approach
Inefficient hardware
Maintenance/supportability issues
Challenges
1,100+ databases across 12 SQL
Server 2016 FCIs
~30TB of SQL Server data, max 1
hour migration window
Batch processing throughout the
day & night (~4 hours)
Legacy applications and code
Solution
12 x SQL Managed Instance Next-Gen GP
with Failover Groups
Database Watcher for performance
Monitoring and right-sizing
PaaS first approach - backups, HA,
Microsoft Defender for SQL
Dev/Test subscription and START/STOP
policies for non-prod environments
SQL MI migration options
Native backup
and restore
Database
Migration
Service
Azure SQL
Migration
Extension
Log Replay
Service
Managed
Instance Link
Easiest and simplest method as it doesn’t require any specialist tools.
Only supports restoring full backups - downtime required.
Near-zero downtime option; guided migration
Supports a variety of sources and offline and online migration.
Requires DMS setup; extra service dependency.
Assessment + right-sizing; supports at-scale migrations; DMS-backed.
Requires DMS setup; extra service dependency.
More control; supports multiple DBs and instances, minimal downtime.
DBs in restoring mode; migrations can be interrupted by updates/failovers. 30day limit to complete migration.
Minimum downtime; near real-time replication; read-only access during
migration; flexible cutover; not affected by failovers.
Requires network connectivity and ports; setup complexity.
The Log Replay Service (LRS)
Free-of-charge cloud service to migrate SQL Server databases to Azure SQL
Managed Instance (SQL MI).
Uses log-shipping technology to synchronise on-premises databases.
Enables a seamless migration of databases with minimal downtime.
Provides monitoring to track the progress of migrations.
Gives users granular control over migrations.
LRS Migration workflow
SQL Server 2016+
BACKUP TO URL
Migration approach
Plan
Assess
Logins and connections strings
Get-AzDataMigrationAssessment
Agent Jobs
Get-AzDataMigrationPerformanceDataCollection
Legacy apps and code
Get-AzDataMigrationSkuRecommendation
TLS versions
Migrate
Monitor & Optimize
DBATools PowerShell module
Azure Database Watcher
Log Replay Service
IOPS, Memory and CPU adjustments
Automated LRS migrations with PowerShell
Use PowerShell to directly orchestrate database migrations.
PowerShell Az.SQL module version 4.0.0 or later
LRS runs as a background PowerShell job
-AsJob
Start-Job
Start the migration
Start-AzSqlInstanceDatabaseLogReplay
Monitor progress
Get-AzSqlInstanceDatabaseLogReplay
Complete the migration
Complete-AzSqlInstanceDatabaseLogReplay
SQL Server migration experience in Azure Arc
Streamlined, Azure Copilot assisted end-to-end migration journey
Real-time replication
SQL Server
(Arc Enabled)
Powered by Managed
Instance Link
Azure SQL
Managed Instance
Migrate & modernize your data estate with no downtime
Migrate from the Azure Portal
Continuous
Assessment
Simplified Provision
“No downtime”
migrations
Confident Cutover
Built-in and Automatic
Provision recommended
Managed Instance
target inline
Real-time replication,
powered by Managed
Instance Link
View and assess inbound
client connections
Built-in cost estimates
Validate the target instance
as a read-only replica
Readiness and progress
dashboards
Get right-sized SKU
recommendations
Ensure all clients
transition to the
new target
Cutover with a simple click!
Automate migration at scale with APIs and scripts
Click to edit Master title style
Plan and test
• Assess current environment for compatibility and SKU recommendations
• Conduct test migrations prior to go-live
Verify
Migration tips
• Subscription limits
• Subscription was capped at 160 concurrent create operations
• LRS database migrations above this limit were failing
• Raised a support case to increase to 1,000 for the duration of migrations
• Collations and timezones of SQL MIs
• These can’t be changed after deployment
• Maintenance windows and update policies
Automate
• Use automation to scale as much as possible
• Use SQL Server Migration Experience in Azure Arc
Monitor
• Monitor performance using Database Watcher
• IOPS, log rate throughput, memory usage
• Right-size instances post-migration
Try it for free…
What’s included
Up to two instances per Azure subscription
4 or 8 vCores of general-purpose compute
720 vCore hours per month.
Use it for 12 months
Use this free offer to support your migration
proof of concepts for 12 months.
32 GB data storage +
32 GB backup storage.
Intel® Xeon® Scalable 2.8 GHz processors
https://aka.ms/freesqlMI
Sound off.
The mic is all yours.
Influence the product roadmap.
Join the Fabric User Panel
Join the SQL User Panel
Share your feedback directly with our
Fabric product group and researchers.
Influence our SQL roadmap and ensure
it meets your real-life needs
https://aka.ms/JoinFabricUserPanel
https://aka.ms/JoinSQLUserPanel
How was
the session?
Complete Session Surveys in
for your chance to WIN
PRIZES!