Database
 sql >> Datenbank >  >> RDS >> Database

Aktualisierte Ebenenoptionen für Azure SQL-Datenbank

Azure SQL Database ist das Database-as-a-Service-Angebot von Microsoft, das ein enormes Maß an Flexibilität bietet. Es ist als Teil der Platform-as-a-Service-Umgebung aufgebaut, die Kunden zusätzliche Überwachung und Sicherheit für das Produkt bietet.

Microsoft arbeitet kontinuierlich an der Verbesserung seiner Produkte, und Azure SQL-Datenbank ist da nicht anders. Viele der neueren Features, die wir in SQL Server haben, wurden ursprünglich in Azure SQL-Datenbank eingeführt, einschließlich (aber nicht beschränkt auf) Always Encrypted, Dynamic Data Masking, Row Level Security und Query Store.

DTU-Preisstufe

Beim ersten Start von Azure SQL-Datenbank gab es eine einzelne Preisoption, bekannt als „DTUs“ oder Database Transaction Units. (Andy Mallon, @AMtwo, erklärt DTUs in „Was zum Teufel ist eine DTU?“) Das DTU-Modell bietet drei Dienstebenen:Basic, Standard und Premium. Der Basic-Tarif bietet bis zu 5 DTUs mit Standardspeicher. Die Standard-Stufe unterstützt 10 bis zu 3.000 DTUs mit Standardspeicher und die Premium-Stufe unterstützt 125 bis zu 4.000 DTUs mit Premium-Speicher, was um Größenordnungen schneller ist als Standardspeicher.

vCore-Preisstufe

Spulen Sie ein paar Jahre nach der Veröffentlichung von Azure SQL-Datenbank vor, als Azure SQL Managed Instance in der Public Preview war und „vCores“ (virtuelle Kerne) für Azure SQL-Datenbank angekündigt wurden. Diese führten die Allzweck- und geschäftskritischen Tiers mit Gen 4- und Gen 5-Prozessoren ein. Gen 5 ist jetzt die primäre Hardwareoption für die meisten Regionen, da Gen 4 veraltet ist.

Gen 5 unterstützt nur 2 virtuelle Kerne und bis zu 80 virtuelle Kerne, wobei RAM mit 5,1 GB pro virtuellem Kern zugewiesen wird. Die allgemeine Ebene bietet Remotespeicher mit maximalen Daten-IOPS von 640 für eine 2-vCore-Datenbank bis zu 25.600 für eine 80-vCore-Datenbank. Die geschäftskritische Ebene verfügt über eine lokale SSD, die eine viel bessere E/A-Leistung mit maximalen Daten-IOPS von 8000 für eine 2-vCore-Datenbank bis zu 204.800 für eine 80-vCore-Datenbank bietet. Sowohl allgemeine als auch geschäftskritische Tiers erreichen maximal 4.096 GB Speicherplatz, was für viele Kunden zu einer Einschränkung wurde.

HyperScale-Datenbank

Um das 4-TB-Limit von Azure SQL-Datenbank zu lösen, hat Microsoft die Hyperscale-Ebene erstellt. Hyperscale ermöglicht es Kunden, auf bis zu 100 TB Datenbankgröße zu skalieren und bietet darüber hinaus eine schnelle Skalierung für schreibgeschützte Knoten. Sie können innerhalb des vCore-Modells auch problemlos nach oben und unten skalieren. Hyperscale-Datenbanken werden mithilfe von virtuellen Kernen bereitgestellt. Mit Gen 5 kann eine Hyperscale-Datenbank zwischen 2 – 80 vCores und 500 – 204.800 IOPS verwenden. Hyperscale erzielt eine hohe Leistung von jedem Rechenknoten mit SSD-basierten Caches, wodurch die Netzwerk-Roundtrips zum Abrufen von Daten minimiert werden. Es gibt eine Menge großartiger Technologie, die mit Hyperscale verbunden ist, wie es für die Verwendung von SSD-basierten Caches und Seitenservern konzipiert ist. Ich empfehle Ihnen dringend, sich das Diagramm anzusehen, das die Architektur und die Funktionsweise in diesem Artikel aufschlüsselt.

Serverlose Datenbank

Eine weitere häufige Anfrage von Kunden war die Möglichkeit, ihre Azure SQL-Datenbank automatisch hoch- und herunterzuskalieren, wenn die Workloads steigen oder sinken. Kunden hatten traditionell die Möglichkeit, mithilfe von PowerShell, Azure Automation und anderen Methoden programmgesteuert nach oben und unten zu skalieren. Microsoft hat diese Idee aufgegriffen und eine neue Compute-Ebene namens Azure SQL Database Serverless entwickelt, die im November 2019 allgemein verfügbar wurde. Sie ermöglichen es dem Kunden, die minimale und maximale Anzahl von virtuellen Kernen festzulegen. Auf diese Weise können sie wissen, dass immer eine minimale Rechenstufe verfügbar ist, und sie können immer automatisch auf eine bestimmte Rechenstufe skalieren. Es besteht auch die Möglichkeit, eine Autopause-Verzögerung zu konfigurieren. Mit dieser Einstellung können Sie die Datenbank automatisch anhalten, nachdem die Datenbank eine bestimmte Zeit lang inaktiv war. Wenn eine Datenbank in die Autopause-Phase eintritt, gehen die Rechenkosten auf Null und es fallen nur Speicherkosten an. Die Gesamtkosten von Serverless setzen sich aus den Rechenkosten und den Speicherkosten zusammen. Wenn die Computenutzung zwischen den Mindest- und Höchstgrenzen liegt, basieren die Computekosten auf den verwendeten virtuellen Kernen und dem verwendeten Arbeitsspeicher. Wenn die tatsächliche Nutzung unter dem Mindestwert liegt, basieren die Rechenkosten auf den minimal konfigurierten virtuellen Kernen und dem minimal konfigurierten Arbeitsspeicher.

Die serverlose Ebene hat das Potenzial, Kunden viel Geld zu sparen und ihnen gleichzeitig die Möglichkeit zu geben, eine konsistente Datenbankbenutzererfahrung bereitzustellen, wobei die Datenbank je nach Bedarf skaliert werden kann.

Elastische Pools

Azure SQL-Datenbank verfügt über ein gemeinsam genutztes Ressourcenmodell, das Kunden eine höhere Ressourcenauslastung ermöglicht. Ein Kunde kann einen Pool für elastische Datenbanken erstellen und Datenbanken in diesen Pool verschieben. Jede Datenbank kann dann mit der gemeinsamen Nutzung vordefinierter Ressourcen innerhalb dieses Pools beginnen. Pools für elastische Datenbanken können mit dem DTU-Preismodell oder dem vCore-Modell konfiguriert werden. Kunden bestimmen die Menge an Ressourcen, die der Pool für elastische Datenbanken benötigt, um die Arbeitslast für alle seine Datenbanken zu bewältigen. Ressourcenlimits können pro Datenbank konfiguriert werden, sodass eine Datenbank nicht den gesamten Pool verbrauchen kann. Pools für elastische Datenbanken eignen sich hervorragend für Kunden, die eine große Anzahl von Datenbanken oder Szenarien mit mehreren Mandanten verwalten müssen.

Neue Hardwarekonfiguration für bereitgestellte Rechenstufe

Die Gen4/Gen5-Hardwarekonfigurationen gelten als „ausgewogener Arbeitsspeicher und Rechenleistung“. Dies funktioniert gut für viele SQL Server-Workloads, es gab jedoch Anwendungsfälle für eine geringere CPU-Latenz und eine höhere Taktrate für CPU-lastige Workloads und einen Bedarf an mehr Arbeitsspeicher pro virtuellem Kern. Microsoft hat wieder einmal eine rechen- und speicheroptimierte Hardwarekonfiguration geliefert und erstellt. Diese befinden sich derzeit in der Vorschau und sind nur in bestimmten Regionen verfügbar.

In der allgemein bereitgestellten Ebene können Sie die Fsv2-Serie auswählen, die mehr CPU-Leistung pro virtuellem Kern liefern kann als die Hardware der 5. Generation. Insgesamt kann die 72-vCore-Größe mehr CPU-Leistung bereitstellen als die 80-vCore-Gen 5, indem sie eine geringere CPU-Latenz und höhere Taktraten bietet. Die Fsv2-Serie hat weniger Arbeitsspeicher und tempdb pro vCore als Gen 5, das muss also berücksichtigt werden.

In der geschäftskritischen bereitgestellten Ebene können Sie auf die speicheroptimierte M-Serie zugreifen. Die M-Serie bietet 29 GB pro virtuellem Kern im Vergleich zu 5,1 GB pro virtuellem Kern in der Konfiguration „Speicher und Rechenleistung ausbalancieren“. Mit der M-Serie können Sie den virtuellen Kern auf bis zu 128 skalieren, was bis zu 3,7 TB Arbeitsspeicher bereitstellen würde. Um die M-Serie zu aktivieren, müssen Sie sich derzeit in einem Pay-As-You-Go- oder Enterprise-Vertrag befinden und eine Support-Anfrage öffnen. Selbst dann ist die M-Serie derzeit nur in „USA, Osten“, „Europa, Norden“, „Europa, Westen“, „USA, Westen 2“ erhältlich und möglicherweise auch in anderen Regionen nur begrenzt verfügbar.

Schlussfolgerung

Azure SQL-Datenbank ist eine funktionsreiche Datenbankplattform, die eine Vielzahl von Optionen für Compute und Skalierung bietet. Kunden können Rechenleistung für eine einzelne Datenbank oder einen Pool für elastische Datenbanken mithilfe von DTUs oder virtuellen Kernen konfigurieren. Für Datenbanken mit großem Speicherbedarf oder horizontaler Leseskalierung kann Hyperscale verwendet werden. Für Kunden mit unterschiedlichen Workload-Anforderungen kann Serverless verwendet werden, um automatisch nach oben und unten zu skalieren, wenn sich ihre Workload-Anforderungen ändern. Neu in Azure SQL-Datenbank ist die Vorschaufunktion einer rechen- und arbeitsspeicheroptimierten Hardwarekonfiguration für Kunden, die eine CPU mit geringerer Latenz benötigen, oder solche mit hohen Arbeitsspeicher-zu-CPU-Anforderungen.

Weitere Informationen zu Azure-Ressourcen finden Sie in meinen vorherigen Artikeln:

  • Leistungsoptimierungsoptionen für Azure SQL-Datenbank
  • Überlegungen zur Azure SQL Managed Instance-Leistung
  • Neue Standardstufengrößen für Azure SQL-Datenbank
  • Überbrückung der Azure-Lücke:Verwaltete Instanzen
  • Migration von Datenbanken zu Azure SQL-Datenbank