Automatische Optimierung in Azure SQL-DatenbankAutomatic tuning in Azure SQL Database

Die automatische Optimierung von Azure SQL-Datenbank sorgt dank kontinuierlicher, auf künstlicher Intelligenz und maschinellem Lernen basierender Leistungsoptimierung für hohe Leistung und stabile Workloads.Azure SQL Database Automatic tuning provides peak performance and stable workloads through continuous performance tuning based on AI and machine learning.

Bei der automatischen Optimierung handelt es sich um einen vollständig verwalteten Leistungsdienst mit integrierten intelligenten Funktionen, der kontinuierlich Abfragen für eine Datenbank überwacht und automatisch deren Leistung verbessert.Automatic tuning is a fully managed intelligent performance service that uses built-in intelligence to continuously monitor queries executed on a database, and it automatically improves their performance. Dies wird durch eine dynamische Anpassung der Datenbank an die unterschiedlichen Workloads sowie durch die Anwendung von Optimierungsempfehlungen erreicht.This is achieved through dynamically adapting database to the changing workloads and applying tuning recommendations. Dank künstlicher Intelligenz lernt die automatische Optimierung horizontal von allen Datenbanken in Azure und verbessert dynamisch ihre Optimierungsmaßnahmen.Automatic tuning learns horizontally from all databases on Azure through AI and it dynamically improves its tuning actions. Je länger die automatische Optimierung für eine Azure SQL-Datenbank verwendet wird, desto besser ist ihre Leistung.The longer an Azure SQL Database runs with automatic tuning on, the better it performs.

Die automatische Optimierung von Azure SQL-Datenbank ist vielleicht eines der wichtigsten Features, die Sie aktivieren können, um stabile Datenbankworkloads mit hoher Leistung zu erhalten.Azure SQL Database Automatic tuning might be one of the most important features that you can enable to provide stable and peak performing database workloads.

Vorteile der automatischen OptimierungWhat can Automatic Tuning do for you?

  • Automatisierte Optimierung der Leistung von Azure SQL-DatenbankenAutomated performance tuning of Azure SQL databases
  • Automatisierte Überprüfung von LeistungszuwächsenAutomated verification of performance gains
  • Automatisches Rollback und automatische KorrekturAutomated rollback and self-correction
  • OptimierungsverlaufTuning history
  • Optimierung von T-SQL-Aktionsskripts für manuelle BereitstellungenTuning action T-SQL scripts for manual deployments
  • Proaktive Überwachung der WorkloadleistungProactive workload performance monitoring
  • Funktion für das horizontale Hochskalieren von einigen Hunderttausend DatenbankenScale out capability on hundreds of thousands of databases
  • Positive Auswirkung auf DevOps-Ressourcen und die GesamtkostenPositive impact to DevOps resources and the total cost of ownership

Sicher, zuverlässig und bewährtSafe, Reliable, and Proven

Die Leistung anspruchsvoller Workloads wird durch auf Azure SQL-Datenbanken angewendete Optimierungsmaßnahmen in keinem Fall beeinträchtigt.Tuning operations applied to Azure SQL databases are fully safe for the performance of your most intense workloads. Bei der Entwicklung des Systems wurde sehr genau darauf geachtet, dass es zu keinerlei Störung der Benutzerworkloads kommt.The system has been designed with care not to interfere with the user workloads. Empfehlungen der automatisierten Optimierung werden nur bei geringer Auslastung angewendet.Automated tuning recommendations are applied only at the times of a low utilization. Zur Wahrung der Workloadleistung kann das System automatische Optimierungsmaßnahmen auch vorübergehend deaktivieren.The system can also temporarily disable automatic tuning operations to protect the workload performance. In diesem Fall wird im Azure-Portal eine entsprechende Meldung angezeigt.In such case, “Disabled by the system” message will be shown in Azure portal. Die automatische Optimierung betrachtet Workloads mit der höchsten Ressourcenpriorität.Automatic tuning regards workloads with the highest resource priority.

Die Mechanismen für die automatische Optimierung sind ausgereift und wurden auf Grundlage von Millionen von Datenbanken perfektioniert, die in Azure ausgeführt werden.Automatic tuning mechanisms are mature and have been perfected on several million databases running on Azure. Angewendete automatisierte Optimierungsmaßnahmen werden automatisch überprüft, um sicherzustellen, dass sie sich positiv auf die Workloadleistung auswirken.Automated tuning operations applied are verified automatically to ensure there is a positive improvement to the workload performance. Zurückgestellte Leistungsempfehlungen werden dynamisch erkannt und unverzüglich zurückgesetzt.Regressed performance recommendations are dynamically detected and promptly reverted. Anhand des aufgezeichneten Optimierungsverlaufs wird klar ersichtlich, dass die Leistung jeder einzelnen Azure SQL-Datenbank verbessert wurde.Through the tuning history recorded, there exists a clear trace of tuning improvements made to each Azure SQL Database.

Wie funktioniert die automatische Optimierung?

Die automatische Optimierung von Azure SQL-Datenbank teilt sich seine Kernlogik mit der SQL Server-Engine für die automatische Optimierung.Azure SQL Database Automatic tuning is sharing its core logic with the SQL Server automatic tuning engine. Weitere technische Informationen zum integrierten Intelligenzmechanismus finden Sie unter Automatic tuning (Automatische Optimierung).For additional technical information on the built-in intelligence mechanism, see SQL Server automatic tuning.

Verwenden der automatischen OptimierungUse Automatic tuning

Die automatische Optimierung muss für Ihr Abonnement aktiviert werden.Automatic tuning needs to be enabled on your subscription. Informationen zum Aktivieren der automatischen Optimierung über das Azure-Portal finden Sie unter Aktivieren der automatischen Optimierung.To enable automatic tuning using Azure portal, see Enable automatic tuning.

Die automatische Optimierung kann autonom arbeiten, automatisch Optimierungsempfehlungen anwenden und Leistungszuwächse automatisch überprüfen.Automatic tuning can operate autonomously through automatically applying tuning recommendations, including automated verification of performance gains.

Zur präziseren Steuerung können Sie die automatische Anwendung von Optimierungsempfehlungen deaktivieren und Optimierungsempfehlungen manuell über das Azure-Portal anwenden.For more control, automatic application of tuning recommendations can be turned off, and tuning recommendations can be manually applied through Azure portal. Sie können die Lösung auch zum reinen Anzeigen von Empfehlungen der automatischen Optimierung verwenden und sie über Skripts und Tools Ihrer Wahl manuell anwenden.It is also possible to use the solution to view automated tuning recommendations only and manually apply them through scripts and tools of your choice.

Im folgenden Video können Sie sich einen Überblick über die Funktionsweise der automatischen Optimierung in typischen Verwendungsszenarien verschaffen:For an overview of how automatic tuning works and for typical usage scenarios, see the embedded video:

Optionen für die automatische OptimierungAutomatic tuning options

In Azure SQL-Datenbank stehen folgende Optionen für die automatische Optimierung zur Verfügung:Automatic tuning options available in Azure SQL Database are:

Option für die automatische OptimierungAutomatic tuning option Unterstützung für Einzel- und PooldatenbankenSingle database and pooled database support Unterstützung der InstanzdatenbankInstance database support
CREATE INDEX: Identifiziert Indizes, die die Leistung Ihrer Workload verbessern können, erstellt Indizes und überprüft automatisch, ob die Leistung der Abfragen verbessert wurde.CREATE INDEX - Identifies indexes that may improve performance of your workload, creates indexes, and automatically verifies that performance of queries has improved. JaYes NeinNo
DROP INDEX: Identifiziert täglich redundante und doppelte Indizes (mit Ausnahme von eindeutigen Indizes) sowie Indizes, die über einen langen Zeitraum hinweg (über 90 Tage) nicht verwendet wurden.DROP INDEX - Identifies redundant and duplicate indexes daily, except for unique indexes, and indexes that were not used for a long time (>90 days). Beachten Sie, dass die Option zurzeit nicht kompatibel mit Anwendungen ist, die Partitionswechsel und Indexhinweise verwenden.Please note that at this time the option is not compatible with applications using partition switching and index hints. JaYes NeinNo
FORCE LAST GOOD PLAN (automatische Plankorrektur): Identifiziert SQL-Abfragen mit einem Ausführungsplan, der langsamer als der vorherige gute Plan ist, und Abfragen, die den letzten bekannten guten Plan anstelle des zurückgestellten Plans verwenden.FORCE LAST GOOD PLAN (automatic plan correction) - Identifies SQL queries using execution plan that is slower than the previous good plan, and queries using the last known good plan instead of the regressed plan. JaYes JaYes

Die automatische Optimierung identifiziert Empfehlungen von CREATE INDEX, DROP INDEX und FORCE LAST GOOD PLAN, die Ihre Datenbank optimieren können, zeigt sie im Azure-Portal an, und macht sie über T-SQL und die REST-API verfügbar.Automatic tuning identifies CREATE INDEX, DROP INDEX, and FORCE LAST GOOD PLAN recommendations that can optimize your database performance and shows them in Azure portal, and exposes them through T-SQL and REST API. Um mehr über FORCE LAST GOOD PLAN und die Konfiguration von automatischen Optimierungsoptionen über T-SQL zu erfahren, lesen Sie Automatisches Optimieren führt zu einer automatischen Plankorrektur.To learn more about FORCE LAST GOOD PLAN and configuring automatic tuning options through T-SQL, see Automatic tuning introduces automatic plan correction.

Sie können die Optimierungsempfehlungen entweder manuell über das Portal anwenden oder es der automatischen Optimierung überlassen, diese Empfehlungen autonom für Sie anzuwenden.You can either manually apply tuning recommendations using the portal or you can let Automatic tuning autonomously apply tuning recommendations for you. Wenn Sie es dem System überlassen, Optimierungsempfehlungen autonom anzuwenden, profitieren Sie davon, dass das System automatisch überprüft, ob eine Empfehlung die Workloadleistung tatsächlich positiv beeinflusst. Sollte keine erhebliche Leistungsverbesserung erkannt werden, macht das System die Optimierungsempfehlung automatisch rückgängig.The benefits of letting the system autonomously apply tuning recommendations for you is that it automatically validates there exists a positive gain to the workload performance, and if there is no significant performance improvement detected, it will automatically revert the tuning recommendation. Beachten Sie, dass bei Abfragen, auf die sich Optimierungsempfehlungen auswirken und die nicht häufig ausgeführt werden, die Überprüfungsphase bis zu 72 Stunden dauern kann.Please note that in case of queries affected by tuning recommendations that are not executed frequently, the validation phase can take up to 72 hrs by design.

Wenn Sie Optimierungsempfehlungen manuell anwenden, sind die Mechanismen für die automatische Leistungsüberprüfung und Umkehrung nicht verfügbar.In case you are manually applying tuning recommendations, the automatic performance validation, and reversal mechanisms are not available. Darüber hinaus bleiben manuell angewandte Empfehlungen aktiv und werden 24 bis 48 Stunden lang in der Liste der Empfehlungen angezeigt.In addition, manually applied recommendations will remain active and shown in the list of recommendations for 24-48 hrs. Danach zieht sie das System automatisch zurück.before the system automatically withdraws them. Wenn Sie eine Empfehlung früher entfernen möchten, können Sie sie manuell verwerfen.If you would like to remove a recommendation sooner, you can manually discard it.

Die Optionen für die automatische Optimierung können unabhängig pro Datenbank aktiviert oder deaktiviert werden. Sie können auch auf SQL-Datenbank-Servern konfiguriert und auf jede Datenbank angewandt werden, die Einstellungen von diesem Server erbt.Automatic tuning options can be independently enabled or disabled per database, or they can be configured on SQL Database servers and applied on every database that inherits settings from the server. SQL-Datenbank-Server können Azure-Standardwerte für die Einstellungen für automatische Optimierung erben.SQL Database servers can inherit Azure defaults for Automatic tuning settings. In den Azure-Standardwerten sind derzeit FORCE_LAST_GOOD_PLAN und CREATE_INDEX aktiviert und DROP_INDEX deaktiviert.Azure defaults at this time are set to FORCE_LAST_GOOD_PLAN is enabled, CREATE_INDEX is enabled, and DROP_INDEX is disabled.

Das Konfigurieren der Optionen für die automatische Optimierung auf dem Server und das Erben von Einstellungen durch die Datenbanken auf dem übergeordneten Server wird für die Konfiguration der automatischen Optimierung empfohlen, da es die Verwaltung der Optionen für die automatische Optimierung bei einer großen Anzahl von Datenbanken vereinfacht.Configuring Automatic tuning options on a server and inheriting settings for databases belonging to the parent server is a recommended method for configuring automatic tuning as it simplifies management of automatic tuning options for a large number of databases.

Nächste SchritteNext steps