Mehrinstanzenfähigkeit und Azure SQL-Datenbank
Mehrinstanzenfähige Lösungen in Azure verwenden in der Regel Azure SQL-Datenbank. Auf dieser Seite werden einige der Funktionen von Azure SQL Database beschrieben, die nützlich sind, wenn Sie ein mehrmandantenfähiges Systemen entwerfen. Darüber hinaus finden Sie Links zu Anleitungen und Beispielen für die Verwendung von Azure SQL in einer mehrinstanzenfähigen Lösung.
Leitfaden
Das Azure SQL-Datenbank-Team veröffentlicht umfassende Anleitungen zur Implementierung mehrinstanzenfähiger Architekturen mit Azure SQL-Datenbank. Weitere Informationen finden Sie unter Multitenant SaaS-Muster mit Azure SQL-Datenbank. Beachten Sie auch die Anleitung zum Partitionieren von Azure SQL-Datenbanken.
Features von Azure SQL-Datenbank, die Mehrinstanzenfähigkeit unterstützen
Azure SQL-Datenbank enthält viele Features, die Mehrinstanzenfähigkeit unterstützen.
Pools für elastische Datenbanken
Mit Pools für elastische Datenbanken können Sie Computeressourcen zwischen vielen Datenbanken auf demselben Server freigeben. Durch die Verwendung von Pools für elastische Datenbanken können Sie Leistungselastizität für jede Datenbank erzielen und gleichzeitig Kosteneffizienz, indem Sie Ihre bereitgestellten Ressourcen datenbankübergreifend freigeben. Pools für elastische Datenbanken bieten integrierten Schutz vor dem Noisy Neighbor-Problem.
Weitere Informationen:
- Pools für elastische SQL-Datenbank-Instanzen
- Ressourcenverwaltung in umfangreichen Pools für elastische Datenbanken
- Strategien für die Notfallwiederherstellung für Anwendungen mit Pools für elastische SQL-Datenbank-Instanzen
Tools für elastische Datenbanken
Mit dem Shardingmuster können Sie Ihre Workload auf mehrere Datenbanken skalieren. Azure SQL-Datenbank stellt Tools zur Unterstützung von Sharding zur Verfügung. Zu diesen Tools gehören die Verwaltung von Shard-Maps (eine Datenbank, die die Mandanten trackt, die den einzelnen Shards zugewiesen sind). Sie umfassen auch das Initiieren und Nachverfolgen von Abfragen und Verwaltungsvorgängen auf mehreren Shards mithilfe von elastischen Aufträgen.
Weitere Informationen:
- Mehrinstanzenfähige Anwendungen mit elastischen Datenbanktools und zeilenbasierter Sicherheit
- Erweitern mit Azure SQL-Datenbank
- Aufträge für die elastische Datenbank
- Im Tutorial zu elastischen Aufträgen wird der Prozess des Erstellens, Konfigurierens und Verwaltens von elastischen Aufträgen beschrieben.
Sicherheit auf Zeilenebene
Sicherheit auf Zeilenebene ist nützlich, um die Isolation auf Mandantenebene zu erzwingen, wenn Sie freigegebene Tabellen verwenden.
Weitere Informationen:
- Videoübersicht
- Dokumentation
- Mehrinstanzenfähige Anwendungen mit elastischen Datenbanktools und zeilenbasierter Sicherheit
Schlüsselverwaltung
Das „Always Encrypted“-Feature stellt die End-to-End-Verschlüsselung Ihrer Datenbanken zur Verfügung. Wenn Ihre Mandanten ihre eigenen Verschlüsselungsschlüssel bereitstellen müssen, erwägen Sie die Bereitstellung separater Datenbanken für jeden Mandanten sowie die Aktivierung des „Always Encrypted“-Features.
Weitere Informationen:
Beitragende
Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:
Hauptautor:
- Paul Burpo | Principal Customer Engineer, FastTrack for Azure
- John Downs | Principal Software Engineer
Andere Mitwirkende:
- Silvano Coriani | Principal Program Manager, Azure SQL
- Dimitri Furman | Principal Program Manager, Azure SQL
- Sanjay Mishra | Principal Group Program Manager, Azure SQL
- Arsen Vladimirskiy | Principal Customer Engineer, FastTrack for Azure
Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.
Nächste Schritte
Überprüfen Sie dieSpeicher- und Datenansätze für Mehrinstanzenfähigkeit.
Zugehörige Ressourcen
- Datenpartitionierungsstrategien für Azure SQL-Datenbank
- Fallstudie: Ausführen von 1M-Datenbanken in Azure SQL für einen großen SaaS-Anbieter: Microsoft Dynamics 365 und Power Platform
- Beispiel: Die SaaS-Anwendung „Wingtip Tickets“ bietet drei mehrinstanzenfähige Beispiele für dieselbe App, von denen jedes ein anderes Datenbank-Mandantenmuster in Azure SQL-Datenbank untersucht. Das erste verwendet eine eigenständige Anwendung pro Mandant mit eigener Datenbank. Das zweite verwendet eine mehrinstanzenfähige App mit einer Datenbank pro Mandant. Das dritte verwendet eine mehrinstanzenfähige App mit mehrinstanzenfähigen Datenbanken mit Sharding.
- Video: Mehrinstanzenfähige Entwurfsmuster für SaaS-Anwendungen in Azure SQL-Datenbank