Der Import/Export-Dienst von Azure SQL-Datenbank und SQL Managed Instance benötigt viel Zeit, um eine Datenbank zu importieren oder zu exportieren.
Gilt für:Azure SQL-DatenbankAzure SQL Managed Instance
Wenn Sie den Import/Export-Dienst verwenden, kann der Vorgang länger dauern als erwartet. In diesem Artikel werden die möglichen Gründe für diese Verzögerung sowie alternative Methoden zur Umgehung dieses Problems beschrieben.
Import-/Exportdienst von Azure SQL-Datenbank
Der Import-/Exportdienst von Azure SQL-Datenbank ist ein REST-basierter Webdienst, der in jedem Azure-Rechenzentrum ausgeführt wird. Dieser Dienst wird aufgerufen, wenn Sie im Azure-Portal eine der Optionen zum Importieren oder Exportieren einer Datenbank verwenden, um Ihre Datenbank zu verschieben. Der Dienst bietet kostenlose Anforderungswarteschlangen und Computedienste für Importe und Exporte zwischen Azure SQL-Datenbank und Azure Blob Storage.
Bei den Import- und Exportvorgängen handelt es sich nicht um eine herkömmliche physische Datenbanksicherung, sondern um eine logische Sicherung der Datenbank in einem speziellen BACPAC-Format. Mit dem BACPAC-Format können Sie vermeiden, ein physisches Format zu verwenden, das sich möglicherweise zwischen den Versionen von Microsoft SQL Server, Azure SQL-Datenbank und Azure SQL Managed Instance unterscheidet.
Wodurch wird der Prozess verzögert?
Der Import-/Exportdienst von Azure SQL-Datenbank stellt für die Verarbeitung von Import- und Exportvorgängen eine begrenzte Anzahl von Compute-VMs (virtual machines, virtuelle Computer) pro Region bereit. Die Compute-VMs werden pro Region gehostet, um regionsübergreifende Bandbreitenverzögerungen und -gebühren bei Import- oder Exportvorgängen zu vermeiden. Eine zu hohe Anzahl gleichzeitiger Anforderungen in einer Region kann zu erheblichen Verzögerungen bei der Vorgangsverarbeitung führen. Die für die Anforderungsausführung benötigte Zeit kann wenige Sekunden, aber auch mehrere Stunden betragen.
Da der Import/Export-Dienst eine logische Sicherung der Datenbank durchführt, ist die dazu erforderliche Zeit stärker abhängig von der Anzahl der Objekte in der Datenbank als bei einer herkömmlichen physischen Datenbanksicherung.
Hinweis
Nachdem Ressourcen zugewiesen wurden und die Verarbeitung einer Anforderung gestartet wurde, bricht der Dienst die Anforderung nach zwei Tagen automatisch ab.
Empfohlene Lösungen
Wenn Ihre Datenbankexporte nur für die Wiederherstellung nach versehentlichem Löschen von Daten verwendet werden, bieten alle Editionen von Azure SQL-Datenbank eine Self-Service-Wiederherstellungsfunktion auf der Grundlage von systemgenerierten Sicherungen. Falls diese Exporte aber aus anderen Gründen erforderlich sind und Sie eine konsistente oder besser planbare Import-/Exportleistung benötigen, ziehen Sie die folgenden Optionen in Betracht:
- Exportieren in eine BACPAC-Datei mit dem Hilfsprogramm „SQLPackage“
- Exportieren in eine BACPAC-Datei mithilfe von Azure Data Studio.
- Exportieren in eine BACPAC-Datei mit SQL Server Management Studio (SSMS)
- Direktes Ausführen des BACPAC-Imports oder -Exports in Ihrem Code mithilfe der Microsoft SQL Server Data-Tier Application Framework-API (DACFx). Weitere Informationen finden Sie hier:
Überlegungen beim Exportieren oder Importieren einer Datenbank
- Alle in diesem Artikel behandelten Methoden nutzen Datenbanktransaktionseinheiten (Database Transaction Units, DTUs) oder das CPU-Kontingent, was eine Drosselung durch den Azure SQL-Datenbank-Dienst zur Folge hat. Sie können die DTU-Statistiken für die Datenbank im Azure-Portal anzeigen. Wenn die Datenbank ihre Ressourcenlimits erreicht hat, führen Sie ein Upgrade der Dienstebene aus, um weitere Ressourcen hinzuzufügen.
- Clientanwendungen (wie etwa das Hilfsprogramm SqlPackage oder Ihre benutzerdefinierte DAC-Anwendung) sollten im Idealfall auf einer VM in derselben Region ausgeführt werden, in der sich auch Ihre Datenbank befindet. Andernfalls treten ggf. durch Netzwerklatenz bedingte Leistungsproblemen auf.
- Das Exportieren großer Tabellen ohne gruppierte Indizes kann sehr langsam sein oder sogar Fehler zur Folge haben. Dieses Verhalten tritt auf, da die Tabelle nicht parallel aufgeteilt und exportiert werden kann. Stattdessen muss sie in einer einzelnen Transaktion exportiert werden, was besonders bei großen Tabellen die Leistung beeinträchtigt und unter Umständen zu einem Exportfehler führt.
Zugehörige Dokumente
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für