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:
- 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.
- 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.
- 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.
- 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=prettyjsonFlags zu Abfragebefehlen prüfen. Weitere Informationen finden Sie unter Fehlerbehebung bei Befehlszeilenbefehlen. - Tool
gcpdiagSie 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 mitgcpdiag.
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:
- Telemetrie zur Jobausführung Fragen Sie
INFORMATION_SCHEMA.JOBSundINFORMATION_SCHEMA.JOBS_TIMELINEab, um den Verbrauch von Slot-Millisekunden, die Anzahl der ausgelagerten Byte, die Warteschlangenzeiten und die Fehler codes für verschiedene Jobs zu analysieren. - Reservierungen und Kapazität Fragen Sie
INFORMATION_SCHEMA.RESERVATIONSundINFORMATION_SCHEMA.CAPACITY_COMMITMENTSab, um die Slot-Zuweisung, Reservierungslimits und das Autoscaling-Verhalten zu diagnostizieren. - Streaming und Aufnahme Fragen Sie
INFORMATION_SCHEMA.STREAMING_TIMELINEab, um die Aufnahme-Latenz und die Streaming-Ratenlimits zu ermitteln. - Speicher- und Partitionierungszustand Fragen Sie
INFORMATION_SCHEMA.TABLE_STORAGEab, um die physischen Tabellengrößen, den aktiven im Vergleich zum langfristigen Speicher und die Partitionierungsverteilung zu prüfen.
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()undSAFE_ORDINAL(), umNULLzurückzugeben, anstatt Laufzeitfehler zu generieren, wenn Datentypen oder Arraygrenzen nicht übereinstimmen. Die meisten Skalarfunktionen unterstützen das PräfixSAFE.. Weitere Informationen finden Sie unter Debugging-Funktionen undSAFE.Präfix. - SQL-Assertions Verwenden Sie die Anweisung
ASSERTin 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.
- Fehlerbehebung bei Abfrageproblemen. Beheben Sie
resourcesExceeded-Fehler, langsame Abfrageausführung, Shuffle-Überläufe, nicht genügend Arbeitsspeicher und Fehler bei geplanten Abfragen. - Fehlerbehebung bei langen Warteschlangenzeiten für Abfragen. Diagnostizieren Sie Engpässe bei der Nebenläufigkeit und Abfragen, die aufgrund von Limits für interaktive oder Batch-Warteschlangen in die Warteschlange gestellt werden.
- Referenz zu Fehlermeldungen. Suchen Sie nach bestimmten HTTP-Fehlercodes, Fehlerursachen und empfohlenen Maßnahmen.
Identity and Access Management (IAM) und Sicherheit
Diagnostizieren Sie Fehler bei der Zugriffssteuerung, fehlende Rollenzuweisungen und Blöcke durch Richtlinien zur Data Governance.
- Fehlerbehebung bei IAM-Berechtigungen in BigQuery. Diagnostizieren Sie Fehler aufgrund verweigerter Berechtigungen, gewähren Sie fehlende IAM-Rollen und verwenden Sie die Richtlinien-Fehlerbehebung.
- Fehlerbehebung bei VPC Service Controls. Ermitteln und beheben Sie Perimeterverstöße und Blöcke durch Regeln für eingehenden oder ausgehenden Traffic.
- Fehlerbehebung bei der Sicherheit auf Zeilen- und Spaltenebene. Beheben Sie Zugriffsprobleme im Zusammenhang mit Datenrichtlinien, Richtlinientags und Filtern für den Zeilenzugriff.
Kontingente, Ratenlimits und Reservierungen
Beheben Sie Probleme, wenn Arbeitslasten die BigQuery-Dienstlimits oder Kapazitätszuweisungen überschreiten.
- Fehlerbehebung bei Kontingent- und Limitfehlern. Ermitteln Sie anpassbare und nicht anpassbare Kontingente, verwalten Sie Limits für gleichzeitige Abfragen und beheben Sie Fehler bei API-Ratenlimits.
- Fehlerbehebung bei Problemen mit Reservierungen. Diagnostizieren Sie Slot-Engpässe, Abweichungen bei der Reservierungszuweisung und Engpässe bei der Referenzkapazität.
Datenaufnahme, Streaming und Übertragungen
Diagnostizieren Sie Fehler beim Laden von Daten, beim Streamen von Datensätzen oder beim Synchronisieren externer Quellen.
- Fehlerbehebung bei Übertragungskonfigurationen. Beheben Sie Fehler im BigQuery Data Transfer Service für Quellen wie Amazon S3, Salesforce, Google Ads und Cloud Storage.
- Fehlerbehebung bei Streaming-Einfügungen. Beheben Sie Fehler bei der Storage Write API und bei der Legacy-Streamingaufnahme, Fehler bei der Einfügung auf Zeilenebene und Probleme mit Durchsatzkontingenten.
- Fehlerbehebung beim Laden von Daten. Beheben Sie Fehler beim Parsen von CSV-, JSON-, Parquet- oder Avro-Schemas und Fehler bei Trennzeichen.
Externe Datenquellen und föderierte Abfragen
Diagnostizieren Sie Fehler bei der Verbindung, Authentifizierung und Ausführung beim Abfragen von Daten außerhalb von BigQuery.
- Fehlerbehebung bei föderierten Cloud SQL-Abfragen. Beheben Sie Probleme mit Zeitüberschreitungen bei der Verbindung, Probleme mit der Instanzkonfiguration und Fehler bei den Anmeldedaten.
Abrechnungs- und Kostenabweichungen
Untersuchen Sie unerwartete Kosten und Abrechnungsabweichungen bei Compute und Speicher.
- Fehlerbehebung bei Kostenabweichungen in BigQuery. Ermitteln Sie die Ursache unerwarteter Kosten, analysieren Sie die in Rechnung gestellten On-Demand-Byte und prüfen Sie die Nutzung von Kapazitätszusicherungen.
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
- Weitere Informationen zum Überwachen von BigQuery.
- Referenz zu BigQuery
INFORMATION_SCHEMA - Wenden Sie sich an Cloud Customer Care, wenn Sie Unterstützung bei anhaltenden oder kritischen Produktionsproblemen benötigen.