Einführung in die Fehlerbehebung

Dieses Dokument bietet eine Übersicht über die Diagnosetools, Telemetrieoberflächen und Dokumentationsressourcen, die Ihnen bei der Fehlerbehebung in BigQuery zur Verfügung stehen.

Wenn Sie auf Abfragefehler, Leistungsengpässe, Berechtigungsfehler, Kontingentlimits oder Probleme bei der Datenaufnahme stoßen, bietet BigQuery integrierte Tools, mit denen Sie die Ursachen ermitteln und Probleme schnell beheben können.

Fehlerbehebung beim Workflow

Berücksichtigen Sie die folgenden Diagnosekriterien, um ein Problem in BigQuery effektiv zu beheben:

  1. Symptom und Fehlermodus identifizieren Prüfen Sie die Ergebnisse Ihrer Aufgabe, um festzustellen, ob es sich um einen schwerwiegenden Fehler (z. B. einen Fehlercode oder einen Jobfehler), eine Leistungsminderung (z. B. eine langsame Abfrage oder Slot-Engpässe), eine Berechtigungsverweigerung oder eine unerwartete Kostenabweichung handelt.
  2. Details zur Jobausführung prüfen Verwenden Sie den Google Cloud Job-Explorer in der Console, das Diagramm zur Abfrageausführungoder Befehlszeilentools , um die Zeitmessungen auf Stufe der einzelnen Phasen, die Slot-Zuweisung und die Fehlerdetails zu untersuchen. Sie können auch Gemini Cloud Assist bitten, das Problem zu untersuchen.
  3. Telemetrie und Metadaten analysieren Fragen Sie Informationsschemaansichten ab oder prüfen Sie Cloud-Audit-Logs, um das Jobverhalten mit Ressourcenkonflikten, Reservierungslimits oder administrativen Änderungen in Beziehung zu setzen.
  4. Gezielte Maßnahmen zur Fehlerbehebung anwenden Verwenden Sie kategoriespezifische Leitfäden zur Fehlerbehebung oder defensive SQL-Funktionen, um die zugrunde liegende Ursache zu beheben.

Unterscheidung zwischen Fehlerbehebung und Optimierung

Wenn Sie mit BigQuery arbeiten, ist es wichtig, zwischen Fehlerbehebung, Leistungsoptimierung und Best Practices zu unterscheiden:

  • Fehlerbehebung Konzentriert sich auf die Diagnose und Behebung unerwarteter Fehler, Laufzeitfehler, fehlerhafter Pipelines, Kontingentüberschreitungen oder unerwünschten Verhaltens, das verhindert, dass Jobs erfolgreich abgeschlossen werden.
  • Leistungsoptimierung Konzentriert sich auf die Verbesserung der Ausführungsgeschwindigkeit, Latenz oder Ressourceneffizienz von Abfragen und Arbeitslasten, die bereits erfolgreich ausgeführt werden. Weitere Informationen finden Sie unter Abfrageleistung optimieren.
  • Best Practices Konzentriert sich auf Architektur- und Designmuster für Datenmodellierung, Speicherung, Sicherheit und Kostenverwaltung. Weitere Informationen finden Sie unter Einführung in Best Practices.

Diagnose-Tools

In den folgenden Abschnitten werden verschiedene BigQuery-Oberflächen und automatisierte Tools beschrieben, mit denen Sie Probleme in Ihren Arbeitslasten diagnostizieren können.

Visuelle Tools und Console-Tools

Mit den folgenden Tools können Sie Probleme in BigQuery über die Google Cloud Console beheben.

  • Job-Explorer Sie können in Projekten oder Organisationen nach vergangenen und laufenden Jobs suchen, sie filtern und prüfen, ohne SQL-Abfragen schreiben zu müssen. Sie können Fehlermeldungen, die Slot-Nutzung, Ausführungszeitachsen und Job-Metadaten aufrufen. Weitere Informationen finden Sie unter Jobs im Job-Explorer überwachen.
  • Diagramm zur Abfrageausführung Sie können den visuellen Ausführungsplan für eine Abfrage auf Stufe der einzelnen Phasen prüfen. Mit dem Ausführungsdiagramm können Sie Engpässe wie Shuffle-Überläufe auf die Festplatte, rechenintensive Phasen, Datenverzerrungen oder Verzögerungen bei der Ein-/Ausgabe ermitteln. Weitere Informationen finden Sie unter Informationen zur Abfrageleistung abrufen.
  • Query Insights und Ressourcendiagramme Sie können Echtzeit- und Verlaufsdiagramme zur Slot-Auslastung, Job-Nebenläufigkeit und Reservierungszuweisungen aufrufen, um Kapazitätsbeschränkungen zu diagnostizieren. Weitere Informationen finden Sie unter Diagramme zu administrativen Ressourcen verwenden.
  • Gemini Cloud Assist in BigQuery Sie erhalten kontextbezogene, KI-gestützte Analysen von fehlgeschlagenen Abfragen und Leistungsengpässen. Gemini Cloud Assist erklärt Fehlercodes, hebt problematische SQL-Syntax hervor und schlägt direkt in der Google Cloud Console Maßnahmen zur Fehlerbehebung vor. Weitere Informationen finden Sie unter Fehlerbehebung bei Abfragen mit Gemini Cloud Assist.

Befehlszeilen- und automatisierte Diagnosetools

Mit den folgenden Tools können Sie Probleme in BigQuery über eine Befehlszeilenschnittstelle diagnostizieren.

  • bq-Befehlszeilentool Sie können detaillierte Fehlerstrukturen, Anforderungs-IDs und Job Metadaten mit dem bq show -j <var>JOB_ID</var> Befehl oder durch Hinzufügen des --format=prettyjson Flags zu Abfragebefehlen prüfen. Weitere Informationen finden Sie unter Fehlerbehebung bei Befehlszeilenbefehlen.
  • Tool gcpdiag Sie können automatisierte Diagnosen über die Befehlszeile ausführen, um häufige Google Cloud Konfigurationsprobleme zu erkennen, darunter Lücken bei IAM-Berechtigungen, Netzwerkeinschränkungen und Dienstkonto-Fehler. Weitere Informationen finden Sie unter Fehlerbehebung bei Abfragefehlern mit gcpdiag.

Metadaten- und Telemetrieansichten

Mit Informationsschemaansichten können Sie mithilfe von Standard-SQL Echtzeit- und Verlaufsmetadaten zu Jobs, Kapazität, Streamingaufnahme und Datasets abfragen. Diese Ansichten umfassen Folgendes:

Weitere Informationen finden Sie unter Einführung in BigQuery INFORMATION_SCHEMA.

Cloud Monitoring und Cloud-Audit-Logs

  • Cloud-Audit-Logs Prüfen Sie die Audit-Logs zu Administratoraktivitäten und zum Datenzugriff, um nachzuvollziehen, wer bestimmte Vorgänge initiiert hat, die Identitäten der Aufrufer zu prüfen und PERMISSION_DENIED-Fehler zu diagnostizieren. Weitere Informationen finden Sie in der Referenz zu BigQuery-Audit-Logs.
  • Cloud Monitoring Sie können Messwerte wie die Slot-Nutzung, die Dauer der Abfrageausführung und die Anzahl der hochgeladenen Byte verfolgen und Benachrichtigungsrichtlinien konfigurieren, um Ihr Team zu benachrichtigen, wenn Grenzwerte oder Kontingente überschritten werden. Weitere Informationen finden Sie unter BigQuery mit Cloud Monitoring überwachen.

Defensive SQL-Funktionen und Debugging-Anweisungen

Verwenden Sie Folgendes, um zu verhindern, dass Abfragen aufgrund von Laufzeitdatenfehlern unerwartet fehlschlagen:

  • Sichere Ausdrücke Verwenden Sie SAFE_CAST(), SAFE_DIVIDE(), SAFE_OFFSET() und SAFE_ORDINAL(), um NULL zurückzugeben, anstatt Laufzeitfehler zu generieren, wenn Datentypen oder Arraygrenzen nicht übereinstimmen. Die meisten Skalarfunktionen unterstützen das Präfix SAFE.. Weitere Informationen finden Sie unter Debugging-Funktionen und SAFE. Präfix.
  • SQL-Assertions Verwenden Sie die Anweisung ASSERT in Transaktionen oder Skripts mit mehreren Anweisungen, um Bedingungen für die Datenvalidierung zu erzwingen und mit benutzerdefinierten Fehlermeldungen zu scheitern, bevor nachgelagerte Vorgänge ausgeführt werden. Weitere Informationen finden Sie unter Debugging-Anweisungen.

Fehlerbehebung nach Problemkategorie

Wählen Sie in den folgenden Abschnitten eine Kategorie aus, um detaillierte Fehlercodes, Ursachen und Schritt-für-Schritt-Anleitungen zur Fehlerbehebung aufzurufen.

Abfrageleistung und -ausführung

Diagnostizieren Sie Abfragen, die nicht ausgeführt werden können, ein Zeitlimit überschreiten, Ressourcenbeschränkungen unterliegen oder unerwartete Verzögerungen aufweisen.

Identity and Access Management (IAM) und Sicherheit

Diagnostizieren Sie Fehler bei der Zugriffssteuerung, fehlende Rollenzuweisungen und Blöcke durch Richtlinien zur Data Governance.

Kontingente, Ratenlimits und Reservierungen

Beheben Sie Probleme, wenn Arbeitslasten die BigQuery-Dienstlimits oder Kapazitätszuweisungen überschreiten.

Datenaufnahme, Streaming und Übertragungen

Diagnostizieren Sie Fehler beim Laden von Daten, beim Streamen von Datensätzen oder beim Synchronisieren externer Quellen.

Externe Datenquellen und föderierte Abfragen

Diagnostizieren Sie Fehler bei der Verbindung, Authentifizierung und Ausführung beim Abfragen von Daten außerhalb von BigQuery.

Abrechnungs- und Kostenabweichungen

Untersuchen Sie unerwartete Kosten und Abrechnungsabweichungen bei Compute und Speicher.

Maßnahmen zur Vermeidung von Datenverlusten

Verwenden Sie die folgenden Tools zur Notfallwiederherstellung und Datenaufbewahrung, um Verlaufsdaten wiederherzustellen, die geändert oder gelöscht wurden, oder um die Geschäftskontinuität bei einem regionalen Ausfall aufrechtzuerhalten:

  • Daten wiederherstellen Sie können Tabellendaten abfragen oder wiederherstellen, die innerhalb des Zeitreisezeitraums geändert oder gelöscht wurden. Weitere Informationen finden Sie unter Daten wiederherstellen.
  • Zeitreise Sie können aktualisierte oder gelöschte Daten für einen konfigurierten Aufbewahrungszeitraum in einem Dataset aufbewahren, um sich vor versehentlichen Änderungen zu schützen. Weitere Informationen finden Sie unter Zeitreise.
  • Regionales Failover Sie können eine sekundäre Replik bei einem regionalen Ausfall in die primäre Rolle hochstufen, wenn Sie die von BigQuery verwaltete Notfallwiederherstellung verwenden. Weitere Informationen finden Sie unter Regionales Failover.

APIs verwenden

Wenn Sie programmatisch mit BigQuery interagieren, verwenden Sie die folgenden Ressourcen, um die Anfragelatenz zu optimieren und Upload-Workflows zu verwalten:

  • API-Leistungstipps Beachten Sie die Best Practices für API-Aufrufe, z. B. das Verwalten von Verbindungspools, die Verwendung von Batchvorgängen und die Verarbeitung von Wiederholungsversuchen. Weitere Informationen finden Sie unter API-Leistungstipps.
  • API-Uploads Sie können die Datenaufnahme mit wiederaufnehmbaren und mehrteiligen Upload-Anfragen der REST API verwalten und Fehler beheben. Weitere Informationen finden Sie unter API-Uploads.

Nächste Schritte