In letzter Zeit habe ich wieder häufiger mit Microsoft-SQL-Datenbanken in Azure zu tun. In Azure haben Sie dazu drei Möglichkeiten: Zwei davon („Azure SQL“ und „Azure SQL Managed Instance“) sind von Microsoft verwaltete Dienste (PaaS), „SQL-Server auf Azure VM“ dagegen gehört in die Kategorie IaaS. Seit Juni lassen sich Azure SQL Managed Instances mit verbesserter Geschwindigkeit und Präzision erstellen und aktualisieren.
Eine nützliche Grafik zum Vergleich der Dienstebenen liefert übrigens die Microsoft-Dokumentation:

Dank der tiefen Integration von Azure SQL mit Azure, sowie dem Defender für SQL oder der Power-Platform bezeichnet Microsoft Azure SQL auch gerne als DaaS (Database-as-a-Service. Dieses Angebot eignet sich in erster Linie zur Neuentwicklung moderner Cloudanwendungen mit Support für serverloses Computing. Kunden erhalten hier wie auch bei „Azure SQL Managed Instance“ stets die neuste SQL-Server-Engine-Version.
Letztere ist vom „Grad“ der Verwaltung durch den Cloud-Anbieter vergleichbar z. B. mit einem auf Amazon RDS (Relational Database Service) gehosteten Managed SQL-Server. Der Hauptgrund für die Verwendung einer „Azure SQL Managed Instance“ ist daher die „nahezu“ hundertprozentige Feature-Parität mit der MS SQL Server Engine, einschließlich Nutzung Server-basierter Funktionen wie z. B. Server-gespeicherter Prozeduren, ohne dass der Nutzer Verwaltungszugriff (RDP) auf den unterliegenden SQL-Server hat, im Rahmen eines Migrations-Szenarios. Der unterliegende SQL-Server wird übrigens bei „Azure SQL“ in Form eines sogenannten logischen Servers vollständig „weg“ abstrahiert, bzw. von der Azure Service Fabriq erstellt und verwaltet.
Auch das Angebot „SQL-Server auf Azure VM“ adressiert in erster Linie das Migrationsszenario, hier mit zwangsläufig hundertprozentiger Feature-Parität, weil Sie den unterliegenden SQL-Server im Form einer Azure-VM ja selbst erstellen und verwalten und demnach auch volle Kontrolle und Zugang zum Gast-OS haben. Hier bekommen Sie nicht die neuste SQL-Server-Version, sondern nahezu jede gewünschte SQL-Server-Version, die ihre Client-Anwendung benötigt, indem Sie die VM aus dem passenden Image erstellen. Dafür kümmern Sie sich selbst um Hochverfügbarkeit (z. B. mittels Always-On-Availability-Groups und einem dazu passenden Windows-Server-VM-Cluster-Setup), automatische Sicherungen, Wartung und Skalierung.
Neuerungen ist Azure SQL MI
Im Juni gab es einige Neuerungen bei Azure SQL Managed Instance. Solche lassen sich laut Microsoft nun mit verbesserter Geschwindigkeit und Präzision erstellen und aktualisieren. Dank einer deutlich verbesserten Verwaltungserfahrung lässt eine Instanz – egal ob mit Standard- oder benutzerdefinierten Einstellungen – in weniger als 30 Minuten konfigurieren und bereitzustellen. Auch Aktualisierungs- und Skalierungsvorgänge sind deutlich beschleunigt und werden in weniger als 60 Minuten abgeschlossen, im Vergleich zu den bisherigen vier Stunden.
Laut Microsoft resultieren diese Verbesserungen aus einer Reihe von Optimierungen der zugrunde liegenden Prozesse für virtueller Cluster, wie der Erstellung und Größenanpassung von VM-Gruppen sowie der Ressourcenzuweisung, die nahtlos in die Azure-Plattform integriert wurden. Dazu zählen auch Funktion wie Seeding und Failover.
Kunden können damit Ihre Datenbankkonfiguration eng an die Anforderungen Ihrer Workloads anpassen, einschließlich schneller Skalierung bei Lastspitzen und effizientem Zurückfahren in „ruhigeren“ Zeiten zwecks Kostenkontrolle und Leistungsoptimierung. Darüber hinaus bietet Azure SQL Managed Instance jetzt eine verbesserte Kompatibilität mit CI/CD-Pipelines und Umgebungsskripten durch den beschleunigten Bereitstellungsprozess.
Die schnellere Verwaltungserfahrung ist vollständig in alle Service-Tiers von Azure SQL Managed Instance integriert und allgemein verfügbar, ohne zusätzliche Kosten oder Konfigurationsaufwand.