Leistungsfunktionen

Abgeschlossen

Sehen wir uns zunächst einige Leistungsfunktionen von Azure SQL im Vergleich zu SQL Server an.

Da Azure SQL-Datenbank und Azure SQL Managed Instance auf der SQL Server-Datenbank-Engine basieren, sind die meisten Funktionen von SQL Server auch für Azure SQL verfügbar. Einige Funktionen haben Auswirkungen auf die Leistung Ihrer Datenbanken. Daher sollten Sie diese Funktionen beim Bereitstellen und Konfigurieren von Azure SQL berücksichtigen. Dazu zählen maximale Kapazitäten, Indizes, In-Memory-OLTP, Partitionen, SQL Server-Erweiterungen sowie intelligente Leistungsfunktionen.

Arbeitsspeicher-, CPU- und E/A-Kapazitäten

Die Wahl der richtigen Bereitstellung und Dienstebene für Azure SQL-Datenbank oder SQL Managed Instance kann wichtig für die Leistung sein. Im zweiten Modul haben Sie mehr über die verschiedenen Bereitstellungsoptionen für Azure SQL erfahren. Berücksichtigen Sie diese maximalen Kapazitäten als wichtigen Punkt bei der Bereitstellung:

  • Azure SQL-Datenbank kann bis zu 128 virtuelle Kerne, 4 TB an Arbeitsspeicher und eine Datenbankgröße von 4 TB unterstützen.
  • Die Bereitstellungsoption „Hyperscale“ unterstützt Datenbanken mit einer Größe von bis zu 100 TB.
  • Azure SQL Managed Instance kann bis zu 80 virtuelle Kerne, 400 GB an Arbeitsspeicher und eine Datenbankgröße von 8 TB unterstützen.
  • Die Anzahl von virtuellen Kernen und die Dienstebene beeinflussen auch weitere Ressourcenkapazitäten, z. B. die maximalen Transaktionsprotokollraten, die IOPS, die E/A-Latenz und den Arbeitsspeicher.
  • Mit Windows-Auftragsobjekten wird die Einhaltung bestimmter Ressourcenlimits, z. B. für den Arbeitsspeicher, unterstützt. Verwenden Sie sys.dm_os_job_object, um für Ihre Bereitstellung die passenden Kapazitäten zu ermitteln.

Indizes

Indizes sind sowohl in SQL Server als auch in Azure SQL oft ausschlaggebend für die Abfrageleistung. Im Folgenden finden Sie wichtige Aspekte zu Indizes und Azure SQL:

  • Alle Indextypen, gruppierte und nicht gruppierte, werden in Azure SQL unterstützt.
  • Online-Indizes und fortsetzbare Indizes werden vollständig unterstützt. Online-Indizes und fortsetzbare Indizes können für maximale Verfügbarkeit entscheidend sein.
  • Columnstore-Indizes sind auf fast allen Dienstebenen verfügbar. Etwaige Ausnahme finden Sie in der Dokumentation.

In-Memory-OLTP

Der wichtige Faktor, der die On-Line-Transaktionsverarbeitung (OLTP) kennzeichnet, ist eine Anwendung, die Daten mit vielen gleichzeitigen Transaktionen in Echtzeit liest und schreibt. In-Memory-OLTP ist eine Funktion für Anwendungen mit latenzanfälligen Transaktionen, also z. B. Anwendungen, bei denen eine hohe Anzahl gleichzeitiger Benutzer Daten bearbeitet. Im Folgenden sind die wichtigsten Punkte im Zusammenhang mit In-Memory-OLTP und Azure SQL zusammengefasst:

  • Arbeitsspeicheroptimierte Tabellen sind nur in Dienstebenen des Typs „Unternehmenskritisch“ verfügbar.
  • Die arbeitsspeicheroptimierte Dateigruppe (FILEGROUP) wird bei der Erstellung einer Datenbank (auch für universelle Ebenen) in Azure SQL-Datenbank und SQL Managed Instance vorab erstellt.
  • Der Arbeitsspeicher für speicheroptimierte Tabellen ist ein Prozentsatz des vom virtuellen Kern abhängigen Speicherlimits.

Partitionen

In SQL Server werden Partitionen häufig in Tabellen mit einer großen Anzahl von Zeilen eingesetzt, um die Leistung durch Unterteilen der Daten in eine Tabellenspalte zu verbessern. Beachten Sie diese Punkte für Partitionen in Azure SQL:

  • Partitionen werden für Azure SQL-Datenbank und Azure SQL Managed Instance unterstützt.
  • Sie können Dateigruppen nur mit Partitionen in Azure SQL Managed Instance verwenden.

Neuere SQL Server-Leistungsverbesserungen

Viele der seit SQL Server 2019 eingeführten Leistungsfeatures, z. B. intelligente Abfrageverarbeitung (IQP), stehen auch in Azure SQL-Datenbank und Azure SQL Managed Instance zur Verfügung. Allerdings gibt es einige Ausnahmen. Beispielsweise ist die Metadatenoptimierung tempdb noch nicht für Azure SQL verfügbar. Eine endgültige Liste der IQP-Features, die unterstützt werden, finden Sie unter Intelligente Abfrageverarbeitungsfeatures.

Intelligente Leistung

Die intelligente Leistung umfasst Funktionen in Azure SQL wie die intelligente Abfrageverarbeitung, die automatische Plankorrektur und die automatische Optimierung (einschließlich Indizes). Sie erfahren mehr über diese Features in einer späteren Lerneinheit.