Problembehandlung für Warehouses

Gilt für: Warehouse in Microsoft Fabric

Dieser Artikel enthält Anleitungen zur Behandlung häufiger Probleme mit Warehouses in Microsoft Fabric.

Vorübergehende Verbindungsfehler

Bei einem vorübergehenden Fehler liegt ein Problem zugrunde, das sich nach kurzer Zeit von selbst löst. Wenn eine Verbindung mit einem Warehouse früher gut funktioniert hat, aber nun Fehler auftreten, obwohl keine Änderungen an Benutzerberechtigungen, Firewallrichtlinien und Netzwerkkonfiguration vorgenommen wurden, führen Sie die folgenden Schritte aus, bevor Sie sich an den Support wenden:

  1. Überprüfen Sie die Status des Warehouse, und stellen Sie sicher, dass es nicht angehalten ist.
  2. Wiederholen Sie den fehlgeschlagenen Befehl nicht sofort. Warten Sie stattdessen fünf bis zehn Minuten, stellen Sie eine neue Verbindung her, und wiederholen Sie dann den Befehl. Das Azure-System verschiebt Hardwareressourcen manchmal kurzfristig für einen besseren Lastenausgleich bei verschiedenen Workloads. Die meisten dieser Neukonfigurationsereignisse dauern weniger als 60 Sekunden. Während der Neukonfiguration kann es beim Herstellen von Verbindungen mit der Datenbank zu Problemen kommen. Die Verbindung kann auch fehlschlagen, wenn der Dienst automatisch neu gestartet wird, um bestimmte Probleme zu beheben.
  3. Stellen Sie eine Verbindung mit einer anderen Anwendung und/oder von einem anderen Computer her.

Abfragefehler aufgrund eines tempdb-Speicherplatzproblems

Bei tempdb handelt es sich um eine Systemdatenbank, die von der Engine für verschiedene temporäre Speicherzwecke während der Abfrageausführung verwendet wird. Benutzer*innen können nicht darauf zugreifen oder sie konfigurieren. Bei Abfragen kann ein Fehler auftreten, da der Speicherplatz von tempdb knapp wird. Führen Sie die folgenden Schritte aus, um die Speicherauslastung von tempdb zu reduzieren:

  1. Lesen Sie den Artikel über Statistiken, um zu überprüfen, ob für alle Tabellen richtige Spaltenstatistiken erstellt wurden.
  2. Stellen Sie sicher, dass alle Tabellenstatistiken nach großen DML-Transaktionen aktualisiert werden.
  3. Abfragen mit komplexen JOIN-, GROUP BY- und ORDER BY-Klauseln, die wahrscheinlich große Resultsets zurückgeben, belegen mehr tempdb-Speicherplatz bei der Ausführung. Bearbeiten Sie diese Abfragen, um die Anzahl der GROUP BY- und ORDER BY-Spalten nach Möglichkeit zu reduzieren.
  4. Führen Sie die Abfrage erneut aus, wenn keine anderen aktiven Abfragen ausgeführt werden, um Ressourceneinschränkungen während der Abfrageausführung zu vermeiden.

Nachlassende Abfrageleistung im Laufe der Zeit

Viele Faktoren können sich auf die Leistung einer Abfrage auswirken, z. B. Veränderungen der Tabellengröße, Datenschiefe, Workloadparallelität, verfügbare Ressourcen oder das Netzwerk. Nur weil eine Abfrage langsamer ausgeführt wird, bedeutet das nicht unbedingt, dass es ein Problem mit der Abfrageleistung gibt. Führen Sie die folgenden Schritte aus, um die Zielabfrage zu untersuchen:

  1. Ermitteln Sie die Unterschiede bei allen leistungsrelevanten Faktoren zwischen Ausführungen mit guter und schlechter Leistung.
  2. Lesen Sie den Artikel über Statistiken, um zu überprüfen, ob für alle Tabellen richtige Spaltenstatistiken erstellt wurden.
  3. Stellen Sie sicher, dass alle Tabellenstatistiken nach großen DML-Transaktionen aktualisiert werden.
  4. Überprüfen Sie in den Basistabellen, ob Datenschiefe vorhanden ist.
  5. Halten Sie den Dienst an, und setzen Sie ihn fort. Führen Sie dann die Abfrage erneut aus, wenn keine anderen aktiven Abfragen ausgeführt werden. Sie können die Warehouseworkload mithilfe von DMV überwachen.

Abfragefehler nach langer Ausführungsdauer ohne an den Client zurückgegebene Daten

Eine SELECT-Anweisung konnte im Back-End erfolgreich abgeschlossen werden und schlägt fehl, wenn versucht wird, das Resultset der Abfrage an den Client zurückzugeben. Probieren Sie die folgenden Schritte aus, um das Problem zu isolieren:

  1. Verwenden Sie verschiedene Clienttools, um dieselbe Abfrage erneut auszuführen:
  2. Wenn Schritt 1 nicht weiterhilft, führen Sie einen CTAS-Befehl mit der fehlerhaften SELECT-Anweisung aus, um das SELECT-Abfrageergebnis an eine andere Tabelle im selben Warehouse zu senden. Durch die Verwendung von CTAS wird vermieden, dass das Resultset der Abfrage an den Clientcomputer zurückgesendet wird. Wenn der CTAS-Befehl erfolgreich abgeschlossen und die Zieltabelle aufgefüllt wird, wird der ursprüngliche Abfragefehler wahrscheinlich durch das Warehouse-Front-End oder Clientprobleme verursacht.

Welche Informationen sollten Sie zusammentragen, bevor Sie den Microsoft-Support kontaktieren?

  • Geben Sie die Arbeitsbereichs-ID des Warehouse an.
  • Geben Sie die Anweisungs-ID und die verteilte Anforderungs-ID an. Diese werden als Meldungen zurückgegeben, nachdem eine Abfrage abgeschlossen wurde oder fehlschlägt.
  • Geben Sie den genauen Text der Fehlermeldung an.
  • Geben Sie den Zeitpunkt an, zu dem die Abfrage abgeschlossen wurde oder fehlgeschlagen ist.