Bewährte Methoden für die Architektur für Azure SQL-Datenbank
Azure SQL Database ist eine vollständig verwaltete Plattform als Dienst(PaaS)-Datenbankmodul, die die meisten Datenbankverwaltungsfunktionen ohne Benutzereingriff verarbeitet. Verwaltungsfunktionen umfassen Upgrades, Patches, Sicherungen und Überwachung.
Der Ressourcentyp einer einzelnen Datenbank erstellt eine Datenbank in der Azure SQL-Datenbank mit eigenen Ressourcen und wird über einen logischen Serververwaltet. Sie können zwischen dem DTU-basierten Einkaufsmodell oder dem vCore-basierten Einkaufsmodellwählen. Sie können in einem einzigen Ressourcenpool mehrere Datenbanken mit Pools für elastische Datenbanken erstellen.
Die folgenden Abschnitte enthalten eine Entwurfsprüfliste und empfohlene Designoptionen speziell für die Azure SQL-Datenbanksicherheit. Die Leitlinien basieren auf den fünf Säulen der architektonischen Exzellenz:
- Zuverlässigkeit
- Sicherheit
- Kostenoptimierung
- Operative Exzellenz
- Leistungseffizienz
Voraussetzungen
Das Verständnis der Well-Architected Framework-Säulen kann dazu beitragen, eine qualitativ hochwertige, stabile und effiziente Cloudarchitektur zu erzeugen. Sehen Sie sich die Übersichtsseite Azure Well-Architected Framework an, um die fünf Säulen der architekturlichen Exzellenz zu überprüfen.
Lesen Sie die Kernkonzepte von Azure SQL Database und Was ist neu in Azure SQL Database?.
Azure SQL-Datenbank und Zuverlässigkeit
Azure SQL Database ist eine vollständig verwaltete Plattform als Dienst(PaaS)-Datenbankmodul, die die meisten Datenbankverwaltungsfunktionen ohne Benutzereingriff verarbeitet. Verwaltungsfunktionen umfassen:
- Verbesserungen
- Patches
- Datensicherungen
- Überwachung
Mit diesem Dienst können Sie eine hoch verfügbare und leistungsstarke Datenspeicherschicht für Ihre Azure-Anwendungen und -Workloads erstellen. Die Azure SQL-Datenbank läuft immer auf der neuesten stabilen Version des SQL Server-Datenbankmoduls und einem mit Patches versehenen Betriebssystem mit 99.99%
-Verfügbarkeit.
Weitere Informationen dazu, wie die Azure SQL-Datenbank die Zuverlässigkeit fördert und es Ihrem Unternehmen ermöglicht, bei Unterbrechungen weiterhin zu arbeiten, finden Sie unter Verfügbarkeitsfunktionen.
Die folgenden Abschnitte umfassen Entwurfsüberlegungen, eine Konfigurationsprüfliste und empfohlene Konfigurationsoptionen speziell für Azure SQL-Datenbank und Zuverlässigkeit.
Entwurfsüberlegungen
Azure SQL-Datenbank enthält die folgenden Entwurfsüberlegungen:
Die mit Georeplikation konfigurierte Azure SQL-Datenbank-Dienstebene „Unternehmenskritisch“ bietet für
100%
der Bereitstellungsstunden eine garantierte Wiederherstellungszeit (Recovery Time Objective, RTO) von30
Sekunden.Verwenden Sie Sharding-, um Daten und Prozesse über viele identisch strukturierte Datenbanken zu verteilen. Sharding bietet eine Alternative zu herkömmlichen Skalierungsansätzen für Kosten und Flexibilität. Erwägen Sie die Verwendung von Sharding, um die Datenbank horizontal zu partitionieren. Sharding kann Fehlerisolation bereitstellen. Weitere Informationen finden Sie unter Horizontales Hochskalieren mit Azure SQL-Datenbank.
Azure SQL-Datenbank Business Critical oder Premium-Stufen, die nicht für zonenredundante Bereitstellungen konfiguriert sind, sowie General Purpose-, Standard- oder Basic-Stufen oder Hyperscale-Stufen mit zwei oder mehr Replikaten haben eine Verfügbarkeitsgarantie. Weitere Informationen zur Verfügbarkeitsgarantie, siehe SLA für Azure SQL Database.
Bietet integrierte regionale Hochverfügbarkeit und schlüsselfertige Georeplikation für alle Azure-Regionen. Es umfasst Intelligenz zur Unterstützung von selbstfahrenden Features, z. B.:
- Leistungsoptimierung
- Bedrohungsüberwachung
- Sicherheitsrisikobewertungen
- Vollständig automatisiertes Patchen und Aktualisieren der Codebasis
Definieren Sie eine SLA für die Anwendungsleistung, und überwachen Sie sie mit Warnungen. Erkennen Sie schnell, wenn die Anwendungsleistung versehentlich unter einem akzeptablen Niveau beeinträchtigt wird, was wichtig ist, um hohe Resilienz aufrechtzuerhalten. Verwenden Sie die zuvor definierte Überwachungslösung, um Warnungen für wichtige Abfrageleistungsmetriken festzulegen, sodass Sie Maßnahmen ergreifen können, wenn die SLA durch die Leistung unterbrochen wird. Weitere Informationen finden Sie unter Meine Datenbank überwachen und Warnungstools.
Verwenden Sie "Geo-Restore", um sich von einem Dienstausfall zu erholen. Sie können eine Datenbank auf jedem SQL-Datenbankserver oder einer Instanzdatenbank in jeder verwalteten Instanz in einer beliebigen Azure-Region aus den neuesten georeplizierten Sicherungen wiederherstellen. Geowiederherstellung verwendet eine georeplizierte Sicherung als Quelle. Sie können geowiederherstellung anfordern, auch wenn aufgrund eines Ausfalls auf die Datenbank oder das Rechenzentrum nicht zugegriffen werden kann. Geo-Restore stellt eine Datenbank aus einer georedundanten Sicherung wieder her. Weitere Informationen finden Sie unter Wiederherstellen einer Azure SQL-Datenbank mithilfe von automatisierten Datenbanksicherungen.
Verwenden Sie die mit der Georeplikation konfigurierte Business Critical-Stufe, die ein garantiertes Wiederherstellungspunktziel (RPO) von
5
Sekunden für100%
bereitgestellter Stunden aufweist.PaaS-Funktionen, die in Azure SQL-Datenbank integriert sind, ermöglichen es Ihnen, sich auf die domänenspezifischen Datenbankverwaltungs- und Optimierungsaktivitäten zu konzentrieren, die für Ihr Unternehmen von entscheidender Bedeutung sind.
Verwenden Sie die Point-in-Time-Wiederherstellung für eine Wiederherstellung nach einem menschlichen Fehler. Die Point-in-Time-Wiederherstellung gibt Ihre Datenbank zu einem früheren Zeitpunkt zurück, um Daten aus versehentlich vorgenommenen Änderungen wiederherzustellen. Weitere Informationen finden Sie in der Dokumentation zur Zeitpunktwiederherstellung (Point-in-time restore, PITR).
Geschäftskritische oder Premium-Stufen werden als Zonenredundanzbereitstellungen konfiguriert, die über eine Verfügbarkeitsgarantie verfügen. Weitere Informationen zur Verfügbarkeitsgarantie finden Sie unter SLA für Azure SQL Database.
Prüfliste
Haben Sie die Azure SQL-Datenbank unter Berücksichtigung der Zuverlässigkeit konfiguriert?
- Verwenden Sie Active Geo-Replication, um eine lesbare Sekundäre in einem anderen Bereich zu erstellen.
- Verwenden Sie automatische Failovergruppen, die eine oder mehrere Datenbanken enthalten können, die in der Regel von derselben Anwendung verwendet werden.
- Verwenden Sie eine Zone-Redundant Datenbank.
- Überwachen Sie Ihre Azure SQL-Datenbank in nahezu Echtzeit, um Zuverlässigkeitsvorfälle zu erkennen.
- Implementieren Sie die Wiederholungslogik.
- Sichern Sie Ihre Schlüssel.
Konfigurationsempfehlungen
Sehen Sie sich die folgende Tabelle mit Empfehlungen an, um Ihre Azure SQL-Datenbankkonfiguration für Zuverlässigkeit zu optimieren:
Empfehlung | Beschreibung |
---|---|
Verwenden Sie Active Geo-Replication, um eine lesbare Sekundäre in einem anderen Bereich zu erstellen. | Wenn die primäre Datenbank fehlschlägt, führen Sie ein manuelles Failover für die sekundäre Datenbank aus. Bis Sie ein Failover ausführen, bleibt die sekundäre Datenbank schreibgeschützt. Aktive Georeplikation ermöglicht es Ihnen, lesbare Replikate zu erstellen und bei einem Ausfall eines Rechenzentrums oder einem Anwendungsupgrade manuell zu einem Replikat zu wechseln. Bis zu vier Sekundärsysteme werden in denselben oder verschiedenen Regionen unterstützt, und die Sekundärsysteme können auch für schreibgeschützte Abfragezugriffe verwendet werden. Das Failover muss manuell von der Anwendung oder dem Benutzer initiiert werden. Nach dem Failover weist die neue Primäre einen anderen Verbindungsendpunkt auf. |
Verwenden Sie automatische Failovergruppen, die eine oder mehrere Datenbanken enthalten können, die in der Regel von derselben Anwendung verwendet werden. | Sie können die lesbaren sekundären Datenbanken zur Auslagerung schreibgeschützter Abfrageworkloads verwenden. Da autofailover-Gruppen mehrere Datenbanken umfassen, müssen diese Datenbanken auf dem primären Server konfiguriert werden. AutoFailover-Gruppen unterstützen die Replikation aller Datenbanken in der Gruppe auf nur einen sekundären Server oder eine Instanz in einer anderen Region. Erfahren Sie mehr über Autofailover-Gruppen und den Entwurf für die Notfallwiederherstellung. |
Verwenden Sie eine Zone-Redundant Datenbank. | Standardmäßig wird der Cluster von Knoten für das Premium-Verfügbarkeitsmodell im selben Rechenzentrum erstellt. Mit der Einführung von Azure-Verfügbarkeitszonen kann die SQL-Datenbank unterschiedliche Replikate der Business Critical-Datenbank auf verschiedene Verfügbarkeitszonen in derselben Region platzieren. Um einen einzelnen Fehlerpunkt zu vermeiden, wird der Steuerring auch über mehrere Zonen als drei Gatewayringe (GW) dupliziert. Das Routing an einen bestimmten Gatewayring wird durch Azure Traffic Manager (ATM)gesteuert. Da die zonenredundante Konfiguration in den Dienstebenen Premium oder Business Critical keine zusätzliche Datenbankredundanz erzeugt, können Sie sie ohne zusätzliche Kosten aktivieren. Erfahren Sie mehr über zonenredundante Datenbanken. |
Überwachen Sie Ihre Azure SQL-Datenbank in nahezu Echtzeit, um Zuverlässigkeitsvorfälle zu erkennen. | Verwenden Sie eine der verfügbaren Lösungen, um SQL DB zu überwachen, um potenzielle Zuverlässigkeitsvorfälle frühzeitig zu erkennen und Ihre Datenbanken zuverlässiger zu machen. Wählen Sie eine nahezu echtzeitbasierte Überwachungslösung aus, um schnell auf Vorfälle zu reagieren. Weitere Informationen finden Sie unter Azure SQL Analytics. |
Implementieren Sie die Wiederholungslogik. | Obwohl Azure SQL-Datenbank ausfallsicher ist, wenn es sich um transitive Infrastrukturfehler handelt, können sich diese Fehler auf Ihre Konnektivität auswirken. Wenn beim Arbeiten mit der SQL-Datenbank ein vorübergehender Fehler auftritt, stellen Sie sicher, dass der Code den Aufruf wiederholen kann. Weitere Informationen finden Sie unter Implementieren von Wiederholungslogik. |
Sichern Sie Ihre Schlüssel. | Wenn Sie nicht verschlüsselungsschlüssel in Azure Key Vault verwenden, um Ihre Datenzu schützen, sichern Sie Ihre Schlüssel. |
Azure SQL-Datenbank und Sicherheit
SQL-Datenbank bietet eine Reihe von integrierten Sicherheits- und Compliance- Features, die Ihrer Anwendung dabei helfen, verschiedene Sicherheits- und Complianceanforderungen zu erfüllen.
Entwurfsprüfliste
Haben Sie Ihre Workload entworfen und Azure SQL-Datenbank mit Sicherheit konfiguriert?
- Machen Sie sich mit logischen Servern und mit der Art und Weise, wie Sie Anmeldungen für mehrere Datenbanken verwalten können (falls erforderlich) vertraut.
- Aktivieren Sie Microsoft Entra-Authentifizierung mit Azure SQL. Die Microsoft Entra-Authentifizierung ermöglicht vereinfachte Berechtigungsverwaltung und zentralisierte Identitätsverwaltung.
- Für logische Azure SQL-Server sollte ein Microsoft Entra-Administrator bereitgestellt werden.
- Überprüfen Sie, ob die E-Mail-Adresse der Kontaktinformationen in Ihrem Azure-Abonnement für Dienstadministratoren und Co-Administratoren die richtigen Parteien innerhalb Ihres Unternehmens erreicht. Sie möchten keine wichtigen Sicherheitsbenachrichtigungen von Azure verpassen oder ignorieren!
- Lesen Sie die Informationen zur Verbindungsarchitektur der Azure SQL-Datenbank. Wählen Sie nach Bedarf die
Redirect
- oderProxy
Verbindungsrichtlinie aus. - Lesen Sie die Informationen zu Firewallregeln für die Azure SQL-Datenbank.
- Verwenden Sie Regeln für virtuelle Netzwerke, um die Kommunikation von bestimmten Subnetzen in virtuellen Netzwerken zu steuern.
- Wenn Sie die Azure-Firewall verwenden, konfigurieren Sie die Azure Firewall-Anwendungsregeln mit SQL-FQDNs.
Empfehlungen
Empfehlung | Nutzen |
---|---|
Überprüfen Sie die TLS-Mindestversion. | Ermitteln Sie, ob Sie ältere TLS- oder unverschlüsselte Verbindungen benötigen. Nachdem Sie eine Version von TLS erzwungen haben, ist es nicht möglich, auf die Standardeinstellung zurückgesetzt zu werden. Überprüfen und konfigurieren Sie die mindeste TLS-Version für SQL-Datenbankverbindungen über das Azure-Portal. Wenn nicht, legen Sie die neueste TLS-Version auf das Minimum fest. |
Ledger | Erwägen Sie das Entwerfen von Datenbanktabellen Ledger-Basis, um Überwachungsfunktionen und Funktionen zum Nachweisen von Manipulationen bereitzustellen und die Vertrauenswürdigkeit aller Datenänderungen zu gewährleisten. |
Immer verschlüsselt | Erwägen Sie, den Anwendungszugriff basierend auf Always Encrypted zu entwerfen, um vertrauliche Daten in Anwendungen zu schützen, indem Sie den Datenzugriff auf Verschlüsselungsschlüssel delegieren. |
Private Endpunkte und private Verknüpfung | Private Endpunktverbindungen erzwingen sichere Kommunikation, indem sie private Konnektivität zur Azure SQL-Datenbank ermöglichen. Sie können einen privaten Endpunkt verwenden, um Verbindungen zu sichern und standardmäßig den Zugriff auf öffentliche Netzwerke zu verweigern. Azure Private Link for Azure SQL Database ist eine Art privater Endpunkt, der für Azure SQL-Datenbank empfohlen wird. |
Automatisierte Sicherheitsrisikobewertungen | Überwachen Sie die Überprüfungsergebnisse der Sicherheitsrisikobewertung und die Empfehlungen zum Beheben von Sicherheitsrisiken für Datenbanken. |
Erweiterter Bedrohungsschutz | Erkennen Sie anomale Aktivitäten, die ungewöhnliche und potenziell schädliche Versuche zeigen, auf Datenbanken mit Advanced Threat Protection für Azure SQL-Datenbankzuzugreifen oder auszunutzen. Advanced Threat Protection integriert seine Warnungen in Microsoft Defender für Cloud. |
Rechnungsprüfung | Verfolgen Sie mit Überwachung für Azure SQL-Datenbank die Datenbankereignisse nach. |
Verwaltete Identitäten | Erwägen Sie die Konfiguration einer vom Benutzer zugewiesenen verwalteten Identität (User-Assigned Managed Identity, UMI). Verwaltete Identitäten für Azure-Ressourcen vermeiden, dass Anmeldeinformationen im Code verwaltet werden müssen. |
Microsoft Entra-only-Authentifizierung | Erwägen Sie die Deaktivierung der SQL-basierten Authentifizierung und nur das Zulassen mit der Microsoft Entra-Authentifizierung. |
Richtliniendefinitionen
Überprüfen Sie die Azure-Sicherheitsbasislinie für die Azure SQL-Datenbank und die integrierten Azure-Richtliniendefinitionen.
Alle eingebauten Richtliniendefinitionen im Zusammenhang mit Azure SQL werden in den integrierten Richtlinien aufgeführt.
Lesen Sie das Tutorial: Schützen einer Datenbank in der Azure SQL-Datenbank.
Azure SQL-Datenbank und Kostenoptimierung
Azure SQL Database ist eine vollständig verwaltete Plattform als Dienst(PaaS)-Datenbankmodul, die die meisten Datenbankverwaltungsfunktionen ohne Benutzereingriff verarbeitet. Verwaltungsfunktionen umfassen:
- Verbesserungen
- Patches
- Sicherungen
- Überwachung
Mit diesem Dienst können Sie eine hoch verfügbare und leistungsstarke Datenspeicherschicht für Ihre Azure-Anwendungen und -Workloads erstellen. SQL-Datenbank enthält integrierte Intelligenz, mit der Sie die Kosten für die Ausführung und Verwaltung von Datenbanken durch automatische Leistungsüberwachung und Optimierung erheblich reduzieren können.
Weitere Informationen dazu, wie Azure SQL-Datenbank kostensparende Features bereitstellt, finden Sie unter Planen und Verwalten von Kosten für azure SQL-Datenbank.
Die folgenden Abschnitte enthalten eine Konfigurationsprüfliste und empfohlene Konfigurationsoptionen speziell für Azure SQL-Datenbank und Kostenoptimierung.
Prüfliste
Haben Sie azure SQL-Datenbank mit Kostenoptimierung konfiguriert?
- Optimieren sie Abfragen.
- Bewertung der Ressourcennutzung.
- Optimieren Sie den Sicherungsspeicherverbrauch.
- Werten Sie Azure SQL-Datenbank – serverlos aus.
- Erwägen Sie das Verwenden der reservierten Kapazität für Azure SQL-Datenbank.
- Erwägen Sie die Verwendung von elastischen Pools zum Verwalten und Skalieren mehrerer Datenbanken.
Konfigurationsempfehlungen
Sehen Sie sich die folgende Tabelle mit Empfehlungen an, um Ihre Azure SQL-Datenbankkonfiguration für Kosteneinsparungen zu optimieren:
Empfehlung | Beschreibung |
---|---|
Optimieren sie Abfragen. | Optimieren Sie die Abfragen, Tabellen und Datenbanken mithilfe von Abfrageleistungseinblicken und Leistungsempfehlungen, um den Ressourcenverbrauch zu vermindern und eine geeignete Konfiguration zu erreichen. |
Bewerten Sie die Ressourcennutzung. | Bewerten Sie die Ressourcennutzung für alle Datenbanken, und ermitteln Sie, ob sie ordnungsgemäß angepasst und bereitgestellt wurden. Berücksichtigen Sie bei Nichtproduktionsdatenbanken, die Ressourcen entsprechend zu reduzieren. Die DTUs oder vCores für eine Datenbank können bei Bedarf skaliert werden, z. B. wenn ein Auslastungstest oder ein Benutzerakzeptanztest ausgeführt wird. |
Backup-Speichernutzung optimieren | Bei vCore-Datenbanken in der Azure SQL-Datenbank wird der Speicherplatz für jeden Sicherungstyp (Voll-, Differential- und Protokollsicherung) im Überwachungsbereich der Datenbank als separate Metrik gemeldet. Der Sicherungsspeicherverbrauch bis zur maximalen Datengröße für eine Datenbank wird nicht belastet. Die übermäßige Speicherauslastung des Sicherungsspeichers hängt von der Arbeitsauslastung und der maximalen Größe der einzelnen Datenbanken ab. Weitere Informationen finden Sie unter Sicherungsspeicherverbrauch. |
Auswerten von Azure SQL-Datenbank – serverlos | Erwägen Sie die Verwendung von Azure SQL-Datenbank – serverlos anstelle der bereitgestellte Compute-Ebene. Serverless ist eine Berechnungsschicht für einzelne Datenbanken, die die Rechenleistung automatisch basierend auf den Workload-Anforderungen skaliert und die Kosten auf Grundlage der pro Sekunde genutzten Rechenleistung berechnet. Die serverlose Computeebene hält Datenbanken auch während inaktiver Zeiträume automatisch an, wenn nur Speicher in Rechnung gestellt wird. Sie nimmt Datenbanken automatisch wieder auf, wenn die Aktivität zurückkehrt. Azure SQL-Datenbank im serverlosen Modus eignet sich nicht für alle Szenarien. Wenn Sie über eine Datenbank mit unvorhersehbaren oder schwankenden Nutzungsmustern verfügen, die sich mit Zeiträumen mit geringer oder gar keiner Nutzung abwechseln, ist Serverless eine Lösung, die Ihnen helfen kann, das Preis-Leistungs-Verhältnis zu optimieren. |
Erwägen Sie die reservierte Kapazität für die Azure SQL-Datenbank. | Mit Reservierungsrabattkönnen Sie die Berechnungskosten reduzieren, die mit der Azure SQL-Datenbank verknüpft sind. Nachdem Sie die Gesamtberechnungskapazität und die Leistungsebene für Azure SQL-Datenbanken in einer Region ermittelt haben, können Sie diese Informationen verwenden, um die Kapazität zu reservieren. Die Reservierung kann ein oder drei Jahre umfassen. Weitere Informationen finden Sie unter Sparen von Kosten für Ressourcen mit reservierter Kapazität. |
Elastic Pools helfen Ihnen, mehrere Datenbanken in Azure SQL-Datenbank zu verwalten und zu skalieren. | Flexible Azure SQL-Datenbankpools sind eine einfache, kostengünstige Lösung zum Verwalten und Skalieren mehrerer Datenbanken, die unterschiedliche und unvorhersehbare Nutzungsanforderungen aufweisen. Die Datenbanken in einem elastischen Pool befinden sich auf einem einzelnen Server und teilen eine festgelegte Anzahl von Ressourcen zu einem festgelegten Preis. Weitere Informationen finden Sie unter Elastic Pools zum Verwalten und Skalieren mehrerer Datenbanken. |
Weitere Informationen finden Sie unter Planen und Verwalten von Kosten für die Azure SQL-Datenbank.
Azure SQL-Datenbank und operative Exzellenz
Azure SQL Database ist eine vollständig verwaltete Plattform als Dienst(PaaS)-Datenbankmodul, die die meisten Datenbankverwaltungsfunktionen ohne Benutzereingriff verarbeitet. Verwaltungsfunktionen umfassen:
- Verbesserungen
- Patches
- Sicherungen
- Überwachung
Mit diesem Dienst können Sie eine hoch verfügbare und leistungsstarke Datenspeicherschicht für Ihre Azure-Anwendungen und -Workloads erstellen. Azure SQL-Datenbank bietet erweiterte Überwachungs- und Optimierungsfunktionen, die von künstlicher Intelligenz unterstützt werden, um Ihnen bei der Problembehandlung und Maximierung der Leistung Ihrer Datenbanken und Lösungen zu helfen.
Weitere Informationen dazu, wie die Azure SQL-Datenbank Betriebsexzellenz fördert und es Ihrem Unternehmen ermöglicht, den Betrieb während Unterbrechungen fortzusetzen, finden Sie unter Überwachung und Leistungsoptimierung in Azure SQL-Datenbank.
Die folgenden Abschnitte umfassen Entwurfsüberlegungen, eine Konfigurationsprüfliste und empfohlene Konfigurationsoptionen speziell für Azure SQL-Datenbank und operative Exzellenz.
Entwurfsüberlegungen
Azure SQL-Datenbank enthält die folgenden Entwurfsüberlegungen:
Die Azure SQL-Datenbankstufe Business Critical, die mit Geo-Replikation konfiguriert ist, hat ein garantiertes Wiederherstellungsziel (RTO) von
30
Sekunden für100%
der bereitgestellten Stunden.Verwenden Sie Sharding-, um Daten und Prozesse über viele identisch strukturierte Datenbanken zu verteilen. Sharding bietet eine Alternative zu herkömmlichen Skalierungsansätzen für Kosten und Flexibilität. Erwägen Sie die Verwendung von Sharding, um die Datenbank horizontal zu partitionieren. Sharding kann Fehlerisolation bereitstellen. Weitere Informationen finden Sie unter Horizontales Hochskalieren mit Azure SQL-Datenbank.
Azure SQL-Datenbankstufen Business Critical oder Premium, die nicht für zonenredundante Bereitstellungen konfiguriert sind, sowie die Stufen Allgemeiner Zweck, Standard oder Basis oder die Hyperscale-Stufe mit zwei oder mehr Replikaten haben eine Verfügbarkeitsgarantie. Weitere Informationen finden Sie unter SLA für Azure SQL-Datenbank.
Bietet integrierte regionale Hochverfügbarkeit und schlüsselfertige Georeplikation für alle Azure-Regionen. Es umfasst Intelligenz zur Unterstützung von selbstfahrenden Features, z. B.:
- Leistungsoptimierung
- Bedrohungsüberwachung
- Sicherheitsrisikobewertungen
- Vollständig automatisiertes Patchen und Aktualisieren der Codebasis
Definieren Sie eine SLA für die Anwendungsleistung, und überwachen Sie sie mit Warnungen. Erkennen Sie schnell, wenn die Anwendungsleistung versehentlich unter einem akzeptablen Niveau beeinträchtigt wird, was wichtig ist, um hohe Resilienz aufrechtzuerhalten. Verwenden Sie die zuvor definierte Überwachungslösung, um Warnungen für wichtige Abfrageleistungsmetriken festzulegen, sodass Sie Maßnahmen ergreifen können, wenn die SLA durch die Leistung unterbrochen wird. Weitere Informationen finden Sie unter Überwachen Ihrer Datenbank.
Verwenden Sie die Geo-Wiederherstellung, um sich von einem Dienstausfall zu erholen. Sie können eine Datenbank auf jedem SQL-Datenbankserver oder einer Instanzdatenbank in jeder verwalteten Instanz in einer beliebigen Azure-Region aus den neuesten georeplizierten Sicherungen wiederherstellen. Geowiederherstellung verwendet eine georeplizierte Sicherung als Quelle. Sie können geowiederherstellung anfordern, auch wenn aufgrund eines Ausfalls auf die Datenbank oder das Rechenzentrum nicht zugegriffen werden kann. Geo-Restore stellt eine Datenbank aus einer georedundanten Sicherung wieder her. Weitere Informationen finden Sie unter Wiederherstellen einer Azure SQL-Datenbank mithilfe von automatisierten Datenbanksicherungen.
Verwenden Sie die mit der Georeplikation konfigurierte Business Critical-Stufe, die ein garantiertes Wiederherstellungspunktziel (RPO) von
5
Sekunden für100%
bereitgestellter Stunden aufweist.PaaS-Funktionen, die in Azure SQL-Datenbank integriert sind, ermöglichen es Ihnen, sich auf die domänenspezifischen Datenbankverwaltungs- und Optimierungsaktivitäten zu konzentrieren, die für Ihr Unternehmen von entscheidender Bedeutung sind.
Verwenden Sie die Point-in-Time-Wiederherstellung für eine Wiederherstellung nach einem menschlichen Fehler. Die Point-in-Time-Wiederherstellung gibt Ihre Datenbank zu einem früheren Zeitpunkt zurück, um Daten aus versehentlich vorgenommenen Änderungen wiederherzustellen. Weitere Informationen finden Sie in der Dokumentation zur Zeitpunktwiederherstellung (Point-in-time restore, PITR).
Geschäftskritische oder Premium-Stufen werden als Zonenredundanzbereitstellungen konfiguriert. Weitere Informationen zur Verfügbarkeitsgarantie finden Sie unter SLA für Azure SQL-Datenbank.
Azure Backup ist eine Alternative zum integrierten Azure SQL-Sicherungssystem. Es bietet zentrale, infrastrukturfreie Lösungen für vollständige, differenzielle und Protokollsicherungen. Zu den wichtigsten Features gehören point-in-time Recovery, langfristige Aufbewahrung und zentrale Verwaltung von SQL Server-Datenbanken auf Azure-VMs. Es verwendet sql native APIs und lässt sich reibungslos in den Wiederherstellungsdienste-Tresor von Azure integrieren, um sichere und effiziente Sicherungs- und Wiederherstellungsvorgänge zu ermöglichen. Weitere Informationen finden Sie unter Übersicht über die SQL Server-Sicherung in Azure VMs.
Prüfliste
Haben Sie die Azure SQL-Datenbank mit Blick auf Betriebsexzellenz konfiguriert?
- Verwenden Sie Active Geo-Replication, um eine lesbare Sekundäre in einem anderen Bereich zu erstellen.
- Verwenden Sie automatische Failovergruppen, die eine oder mehrere Datenbanken enthalten können, die in der Regel von derselben Anwendung verwendet werden.
- Verwenden Sie eine Zone-Redundant Datenbank.
- Überwachen Sie Ihre Azure SQL-Datenbank in nahezu Echtzeit, um Zuverlässigkeitsvorfälle zu erkennen.
- Implementieren Sie die Wiederholungslogik.
- Sichern Sie Ihre Schlüssel.
- Verwenden Sie Azure Backup, um einen Azure SQL-Datenbankserver zu schützen.
Konfigurationsempfehlungen
Sehen Sie sich die folgende Tabelle mit Empfehlungen an, um Ihre Azure SQL-Datenbankkonfiguration für operative Exzellenz zu optimieren:
Empfehlung | Beschreibung |
---|---|
Verwenden Sie Active Geo-Replication, um eine lesbare Sekundäre in einem anderen Bereich zu erstellen. | Wenn die primäre Datenbank fehlschlägt, führen Sie ein manuelles Failover für die sekundäre Datenbank aus. Bis Sie ein Failover ausführen, bleibt die sekundäre Datenbank schreibgeschützt. Aktive Georeplikation ermöglicht es Ihnen, lesbare Replikas zu erstellen und bei einem Ausfall eines Rechenzentrums oder einem Anwendungsupgrade manuell auf ein Replika umzuschalten. Bis zu vier sekundäre Datenbanken werden in derselben oder verschiedenen Regionen unterstützt, und die sekundären Datenbanken können auch für schreibgeschützten Abfragezugriff verwendet werden. Das Failover muss manuell von der Anwendung oder dem Benutzer initiiert werden. Nach dem Failover weist die neue Primäre einen anderen Verbindungsendpunkt auf. |
Verwenden Sie automatische Failovergruppen, die eine oder mehrere Datenbanken enthalten können, die in der Regel von derselben Anwendung verwendet werden. | Sie können die lesbaren sekundären Datenbanken zur Auslagerung schreibgeschützter Abfrageworkloads verwenden. Da autofailover-Gruppen mehrere Datenbanken umfassen, müssen diese Datenbanken auf dem primären Server konfiguriert werden. AutoFailover-Gruppen unterstützen die Replikation aller Datenbanken in der Gruppe auf nur einen sekundären Server oder eine Instanz in einer anderen Region. Erfahren Sie mehr über Autofailover-Gruppen und DR-Entwurf. |
Verwenden Sie eine Zone-Redundant Datenbank. | Standardmäßig wird der Cluster von Knoten für das Premium-Verfügbarkeitsmodell im selben Rechenzentrum erstellt. Mit der Einführung von Azure-Verfügbarkeitszonen kann die SQL-Datenbank unterschiedliche Replikate der Business Critical-Datenbank auf verschiedene Verfügbarkeitszonen in derselben Region platzieren. Um einen einzelnen Fehlerpunkt zu vermeiden, wird der Steuerring auch über mehrere Zonen als drei Gatewayringe (GW) dupliziert. Das Routing an einen bestimmten Gatewayring wird durch Azure Traffic Manager (ATM)gesteuert. Da die zonenredundante Konfiguration in den Dienstebenen Premium oder Business Critical keine zusätzliche Datenbankredundanz erzeugt, können Sie sie ohne zusätzliche Kosten aktivieren. Erfahren Sie mehr über zonenredundante Datenbanken. |
Überwachen Sie Ihre Azure SQL-Datenbank in nahezu Echtzeit, um Zuverlässigkeitsvorfälle zu erkennen. | Verwenden Sie eine der verfügbaren Lösungen, um SQL DB zu überwachen, um potenzielle Zuverlässigkeitsvorfälle frühzeitig zu erkennen und Ihre Datenbanken zuverlässiger zu machen. Wählen Sie eine nahezu echtzeitbasierte Überwachungslösung aus, um schnell auf Vorfälle zu reagieren. Weitere Informationen finden Sie unter Azure SQL Analytics. |
Implementieren Sie die Wiederholungslogik. | Obwohl Azure SQL-Datenbank ausfallsicher ist, wenn es sich um transitive Infrastrukturfehler handelt, können sich diese Fehler auf Ihre Konnektivität auswirken. Wenn beim Arbeiten mit der SQL-Datenbank ein vorübergehender Fehler auftritt, stellen Sie sicher, dass der Code den Aufruf wiederholen kann. Weitere Informationen finden Sie in zur Implementierung von Wiederholungslogik und in zur konfigurierbaren Wiederholungslogik in der Einleitung zu SqlClient. |
Sichern Sie Ihre Schlüssel. | Wenn Sie nicht verschlüsselungsschlüssel in Azure Key Vault verwenden, um Ihre Datenzu schützen, sichern Sie Ihre Schlüssel. |
Verwenden Sie Azure Backup, um einen Azure SQL-Datenbankserver zu schützen. | Die Verwendung von Azure Backup zum Schutz Ihres Azure SQL-Datenbankservers ermöglicht es Ihnen, Geschäftskontinuität und Notfallwiederherstellung zentral über den Wiederherstellungsdiensttresor zu verwalten, Wiederherstellungspunkte für einen langfristigen Speicher beizubehalten und cross Region Restore und Cross Subscription Restoredurchzuführen. Mit den [integrierten Datenschutzfunktionen] im Azure Recovery Services Vault](/azure/backup/backup-azure-recovery-services-vault-overview#key-features) können Sie verhindern, dass Sicherungen versehentlich oder böswillig gelöscht werden. |
Azure SQL-Datenbank und Leistungseffizienz
Azure SQL Database ist eine vollständig verwaltete Plattform als Dienst(PaaS)-Datenbankmodul, die die meisten Datenbankverwaltungsfunktionen ohne Benutzereingriff verarbeitet. Verwaltungsfunktionen umfassen:
- Verbesserungen
- Patches
- Datensicherungen
- Überwachung
Die folgenden Abschnitte enthalten eine Prüfliste für den Entwurf und empfohlene Designoptionen, die für die Leistungseffizienz der Azure SQL-Datenbank spezifisch sind.
Entwurfsprüfliste
Haben Sie Ihre Workload entworfen und die Azure SQL-Datenbank unter Berücksichtigung der Leistungseffizienz konfiguriert?
- Überprüfen Sie die Ressourcengrenzen. Informationen zu bestimmten Ressourcenlimits gemäß Tarif (auch als Dienstziel bezeichnet) für Einzeldatenbanken finden Sie unter Ressourcengrenzwerte für Einzeldatenbanken, die das DTU-Kaufmodell verwenden: Azure SQL-Datenbank oder Ressourcenlimits für Singletons mit dem auf virtuellen Kernen (V-Kernen) basierenden Kaufmodell. Die Grenzwerte für Pools für elastische Datenbanken finden Sie unter Grenzwerte für Ressourcen für Pools für elastische Datenbanken, die das DTU-Kaufmodell verwenden oder Ressourcenlimits für Pools für elastische Datenbanken, die das V-Kern-Kaufmodell verwenden.
- Wählen Sie das richtige Bereitstellungsmodell für Ihre Arbeitslast aus: vCore oder DTU. Vergleichen Sie die vCore- und DTU-basierten Einkaufsmodelle.
- Microsoft empfiehlt die neueste vCore-Datenbankstandard- oder Premium-Serie-Hardware. Ältere Gen4-Hardware wurde eingestellt.
- Machen Sie sich mit der Ressourcengovernance vertraut, wenn Sie Pools für elastische Datenbanken verwenden.
- Überprüfen Sie den Standardwert für maximale Parallelität (MAXDOP) und konfigurieren Sie ihn je nach Bedarf basierend auf der migrierten oder erwarteten Arbeitsbelastung.
- Erwägen Sie für kritische Datenbanken die Verwendung von schreibgeschützten Replikaten, um schreibgeschützte Abfrageworkloads auszulagern.
- Informationen finden Sie unter Leistungscenter für SQL Server-Datenbank-Engine und Azure SQL-Datenbank.
- Anwendungen, die eine Verbindung mit Azure SQL-Datenbank herstellen, sollten die neuesten Verbindungsanbieter verwenden, z. B. den neuesten OLE DB-Treiber oder ODBC-Treiber.
Empfehlungen
Empfehlung | Nutzen |
---|---|
Diagnostizieren und Beheben von Problemen mit hoher CPU-Auslastung. | Azure SQL-Datenbank bietet integrierte Tools, um die Ursachen einer hohen CPU-Auslastung zu identifizieren und die Workloadleistungzu optimieren. |
Verstehen von Problemen durch Blockierungs- und Deadlock-Situationen. | Für Blockierungen aufgrund von Parallelität und aufgrund von Deadlocks beendete Sitzungen gibt es unterschiedliche Ursachen und Ergebnisse. |
Optimieren Sie Anwendungen und Datenbanken auf Leistung. | Optimieren Sie Ihre Anwendung und Datenbank, um die Leistung zu verbessern. Bewährte Methodenüberprüfen. |
Überprüfen Sie die Berichterstellung und Skalierung der Azure-Portalnutzung entsprechend. | Verwenden Sie nach der Bereitstellung die integrierte Berichterstellung im Azure-Portal, um regelmäßig die Spitzen- und durchschnittliche Datenbankauslastung zu überprüfen und die Größe nach oben oder unten anzupassen. Sie können einzelne Datenbanken oder Pools für elastische Datenbanken ganz einfach ohne Datenverlust und mit minimalen Ausfallzeiten skalieren. |
Überprüfen Sie die Leistungsempfehlungen. | Navigieren Sie im Azure-Portal zur Datenbankseite und zum Menü „Intelligente Leistung“, um weitere Informationen zu erhalten und erwägen Sie eine Aktion aus den Leistungsempfehlungen und implementieren Sie alle Index-, Schema- und Parametrisierungsprobleme. |
Lesen Sie Query Performance Insight. | Lesen Sie die Berichte Query Performance Insight für die Azure SQL-Datenbank, um die Abfragen mit dem höchsten Ressourcenverbrauch, Abfragen mit langer Ausführungsdauer und mehr zu ermitteln. |
Konfigurieren Sie die automatische Optimierung. | Bieten Sie Spitzenleistung und stabile Workloads durch kontinuierliche Leistungsoptimierung basierend auf KI und maschinellem Lernen. Erwägen Sie die Verwendung von Azure Automation, um E-Mail-Benachrichtigungen für die automatische Optimierung zu konfigurieren. |
Potenzielle Nutzung von In-Memory-Datenbankobjekten bewerten. | In-Memory-Technologien ermöglichen es Ihnen, die Leistung Ihrer Anwendung zu verbessern und die Kosten ihrer Datenbank potenziell zu senken. Erwägen Sie das Entwerfen einiger Datenbankobjekte in OLTP-Anwendungen mit hohem Volumen. |
Verwenden Sie den Abfragespeicher. | Der in der Azure SQL-Datenbank standardmäßig aktivierte Abfragespeicher enthält zahlreiche Daten zu Abfrageleistung und Ressourcenverbrauch sowie erweiterte Optimierungsfeatures wie Abfragespeicherhinweise und automatische Plankorrektur. Überprüfen Sie Standardeinstellungen für den Abfragespeicher in der Azure SQL-Datenbank. |
Implementieren Sie die Wiederholungslogik für vorübergehende Fehler. | Die Anwendungen sollten automatische Logik zur Wiederholung von Transaktionen für vorübergehende Fehler einschließlich häufig auftretender Verbindungsfehler enthalten. Nutzen Sie die Logik für exponentielle Wiederholungsintervalle. |
Weitere Ressourcen
Informationen zu den unterstützten Features finden Sie unter Features und Auflösen von Transact-SQL-Unterschieden während der Migration zur SQL-Datenbank.
Migrieren zur Azure SQL-Datenbank? Lesen Sie unsere Azure Database Migration Guides.
Sehen Sie sich Episoden von Data Exposed zu Azure SQL-Themen und mehr an.