Einführung in die Fehlerbehebung
Dieses Dokument bietet einen Überblick über die Diagnosetools, Telemetrie-Schnittstellen 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
Um ein Problem in BigQuery effektiv zu beheben, sollten Sie die folgenden Diagnosekriterien berücksichtigen:
- Symptom und Fehlermodus identifizieren: Sehen Sie sich die Ergebnisse des Tasks an, um festzustellen, ob es sich um einen schwerwiegenden Fehler (z. B. einen Fehlercode oder einen fehlgeschlagenen Job), eine Leistungsminderung (z. B. eine langsame Abfrage oder Slot-Starvation), eine verweigerte Berechtigung oder eine unerwartete Kostendifferenz handelt.
- Details zur Jobausführung ansehen Verwenden Sie den Job-Explorer in der Google Cloud Console, das Diagramm zur Ausführung von Abfragen oder Befehlszeilentools, um Zeitangaben auf Staging-Ebene, Slotzuweisung und Fehlerdetails zu untersuchen. Sie können Gemini Cloud Assist auch bitten, Ihr Problem zu untersuchen.
- Telemetrie und Metadaten analysieren: Sie können Informationsschemaansichten abfragen oder Cloud-Audit-Logs prüfen, um das Jobverhalten mit Ressourcenkonflikten, Reservierungslimits oder administrativen Änderungen in Beziehung zu setzen.
- Gezielte Maßnahmen ergreifen: Verwenden Sie kategoriespezifische Anleitungen zur Fehlerbehebung oder defensive SQL-Funktionen, um die zugrunde liegende Ursache zu beheben.
Fehlerbehebung von Optimierung unterscheiden
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: Hier geht es darum, die Ausführungsgeschwindigkeit, Latenz oder Ressourceneffizienz von Abfragen und Arbeitslasten zu verbessern, 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 ‑kostenmanagement. Weitere Informationen finden Sie unter Einführung in Best Practices.
Diagnosetools
In den folgenden Abschnitten werden verschiedene BigQuery-Schnittstellen und automatisierte Tools beschrieben, mit denen Sie Probleme in Ihren Arbeitslasten diagnostizieren können.
Visuelle Tools und Konsolentools
Mit den folgenden Tools können Sie Probleme mit BigQuery über dieGoogle Cloud -Konsole beheben.
- Job-Explorer Sie können vergangene und laufende Jobs in Projekten oder Organisationen suchen, 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 Sehen Sie sich den visuellen, stufenweisen Ausführungsplan für eine Abfrage an. Mithilfe des Ausführungsdiagramms können Sie Engpässe wie Shuffle-Spills auf die Festplatte, rechenintensive Phasen, Datenabweichungen oder Ein-/Ausgabe-Verzögerungen erkennen. Weitere Informationen finden Sie unter Statistiken zur Abfrageleistung abrufen.
- Query Insights und Ressourcendiagramme: Sie können sich Echtzeit- und Verlaufsdiagramme zur Slotnutzung, zur Nebenläufigkeit von Jobs und zu Reservierungszuweisungen ansehen, um Kapazitätsbeschränkungen zu diagnostizieren. Weitere Informationen finden Sie unter Diagramme zu administrativen Ressourcen verwenden.
- Gemini Cloud Assist in BigQuery Kontextbezogene, KI-gestützte Analyse fehlgeschlagener Abfragen und Leistungsengpässe Gemini Cloud Assist erläutert Fehlercodes, hebt problematische SQL-Syntax hervor und schlägt direkt in derGoogle Cloud Console Korrekturmaßnahmen vor. Weitere Informationen finden Sie unter Fehlerbehebung bei Abfragen mit Gemini Cloud Assist.
Befehlszeilen- und automatisierte Diagnosetools
Die folgenden Tools können Ihnen helfen, BigQuery-Probleme über eine Befehlszeilenschnittstelle zu diagnostizieren.
- bq-Befehlszeilentool Mit dem Befehl
bq show -j <var>JOB_ID</var>oder durch Hinzufügen des Flags--format=prettyjsonzu Abfragebefehlen können Sie detaillierte Fehlerstrukturen, Anforderungs-IDs und Jobmetadaten prüfen. Weitere Informationen finden Sie unter Fehlerbehebung bei CLI-Befehlen. gcpdiag-Tool Führen Sie automatisierte Diagnosen über die Befehlszeile aus, um häufige Google Cloud Konfigurationsprobleme zu erkennen, darunter fehlende IAM-Berechtigungen, Netzwerkeinschränkungen und Dienstkonto-Fehler. Weitere Informationen finden Sie unter Fehlerbehebung bei Abfragefehlern mitgcpdiag.
Metadaten- und Telemetrieansichten
Mit Information Schema-Ansichten können Sie Echtzeit- und Verlaufsmetadaten zu Jobs, Kapazität, Streaming-Aufnahme und Datasets mit Standard-SQL abfragen. Diese Ansichten umfassen Folgendes:
- Telemetrie zur Jobausführung. Verwenden Sie die Abfrage
INFORMATION_SCHEMA.JOBSundINFORMATION_SCHEMA.JOBS_TIMELINE, um den Verbrauch von Slotmillisekunden, die Anzahl der überschriebenen Bytes, die Wartezeiten in der Warteschlange und die Fehlercodes 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 analysieren. - Streaming und Aufnahme Mit der Abfrage
INFORMATION_SCHEMA.STREAMING_TIMELINEkönnen Sie die Latenz bei der Aufnahme und die Streamingratenbegrenzungen ermitteln. - Zustand von Speicher und Partition: Mit der Abfrage
INFORMATION_SCHEMA.TABLE_STORAGEkönnen Sie die physischen Tabellengrößen, den aktiven und langfristigen Speicher sowie die Partitionsverteilung 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, Aufruferidentitäten zu untersuchen und
PERMISSION_DENIED-Fehler zu beheben. Weitere Informationen finden Sie in der Referenz zu BigQuery-Audit-Logs. - Cloud Monitoring Behalten Sie Messwerte wie die Slot-Nutzung, die Dauer der Abfrageausführung und die Anzahl der hochgeladenen Bytes im Blick und konfigurieren Sie Benachrichtigungsrichtlinien, um Ihr Team zu informieren, wenn Grenzwerte oder Kontingente überschritten werden. Weitere Informationen finden Sie unter BigQuery mit Cloud Monitoring überwachen.
Defensive SQL-Funktionen und Debugging-Anweisungen
Um zu verhindern, dass Abfragen aufgrund von Laufzeitdatenfehlern unerwartet fehlschlagen, verwenden Sie Folgendes:
- 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 Funktionen debuggen undSAFE.-Präfix. - SQL-Assertions Verwenden Sie die
ASSERT-Anweisung in Transaktionen oder Skripts mit mehreren Anweisungen, um Datenvalidierungsbedingungen 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 eine Kategorie aus den folgenden Abschnitten aus, um detaillierte Fehlercodes, Ursachen und Anleitungen zur schrittweisen Fehlerbehebung aufzurufen.
Abfrageleistung und ‑ausführung
Diagnostizieren Sie Abfragen, die nicht ausgeführt werden können, Zeitüberschreitungen verursachen, Ressourcenbeschränkungen unterliegen oder unerwartete Verzögerungen aufweisen.
- Fehlerbehebung bei Abfrageproblemen
resourcesExceeded-Fehler, langsame Abfrageausführung, Shuffle-Spill, nicht genügend Arbeitsspeicher und Fehler bei geplanten Abfragen beheben - Lange Wartezeiten bei Anfragen beheben Nebenläufigkeitsengpässe und Abfragen diagnostizieren, die aufgrund von interaktiven oder Batch-Warteschlangenlimits in die Warteschlange gestellt wurden.
- Referenz zu Fehlermeldungen Suchen Sie nach bestimmten HTTP-Fehlercodes, Fehlerursachen-Strings und empfohlenen Maßnahmen.
Identity and Access Management (IAM) und Sicherheit
Fehler bei der Zugriffssteuerung, fehlende Rollenzuweisungen und Sperrungen aufgrund von Data Governance-Richtlinien diagnostizieren
- IAM-Berechtigungen in BigQuery beheben Fehler vom Typ „Berechtigung verweigert“ diagnostizieren, fehlende IAM-Rollen zuweisen und die Richtlinien-Fehlerbehebung verwenden.
- VPC Service Controls beheben Perimeterverstöße und Blöcke von Regeln für eingehenden oder ausgehenden Traffic identifizieren und beheben
- Fehlerbehebung bei der Sicherheit auf Zeilen- und Spaltenebene Beheben Sie Zugriffsprobleme im Zusammenhang mit Datenrichtlinien, Richtlinien-Tags und Filtern für den Zeilenzugriff.
Kontingente, Ratenbegrenzungen und Reservierungen
Probleme beheben, wenn Arbeitslasten die BigQuery-Dienstlimits oder ‑Kapazitätszuweisungen überschreiten
- Kontingent- und Limitfehler beheben Anpassbare und nicht anpassbare Kontingente identifizieren, Limits für gleichzeitige Abfragen verwalten und API-Ratenbegrenzungsfehler beheben
- Fehlerbehebung bei der BigQuery-Arbeitslastverwaltung Diagnostizieren Sie Probleme wie Slot-Engpässe, Abweichungen bei der Reservierungszuweisung, Verzögerungen bei der Kapazitätszusicherung, Slot-Konflikte und Probleme beim Monitoring von Reservierungen.
Datenaufnahme, ‑streaming und ‑übertragung
Fehler beim Laden von Daten, Streamen von Datensätzen oder Synchronisieren externer Quellen diagnostizieren
- Fehlerbehebung bei Datenübertragungen Probleme mit BigQuery Data Transfer Service, Netzwerkverbindungen für private Übertragungen und Fehler beim Laden von CSV-Daten diagnostizieren
- Fehlerbehebung bei Übertragungskonfigurationen Konfigurationsfehler im BigQuery Data Transfer Service für Quellen wie Amazon Simple Storage Service (Amazon S3), Salesforce, Google Ads und Cloud Storage beheben.
- Fehlerbehebung bei der BigQuery Storage API Fehlerbehebung bei Streamingaufnahmefehlern, Einfügungsfehlern auf Zeilenebene und Durchsatzkontingenten für die BigQuery Storage Read API, die BigQuery Storage Write API (gRPC) und die BigQuery Storage Write API (REST).
Data-Warehouse-Migration
Probleme bei der Bewertung, Übersetzung oder Migration externer Data Warehouses zu BigQuery diagnostizieren
- Probleme bei der Migration beheben Fehler bei der Migrationsbewertung, Probleme bei der interaktiven und Batch-SQL-Übersetzung sowie Fehler bei der Metadatenextraktion beheben.
Externe Datenquellen und föderierte Abfragen
Verbindungs-, Authentifizierungs- und Ausführungsfehler bei der Abfrage von Daten außerhalb von BigQuery diagnostizieren.
- Fehlerbehebung bei föderierten Cloud SQL-Abfragen Verbindungstimeouts, Probleme mit der Instanzkonfiguration und Anmeldedatenfehler beheben
Abweichungen bei Abrechnung und Kosten
Unerwartete Gebühren und Abrechnungsabweichungen bei Compute und Speicher untersuchen
- Abweichungen bei BigQuery-Kosten beheben Ursprung unerwarteter Gebühren ermitteln, abgerechnete On-Demand-Bytes analysieren und Nutzung der Kapazitätszusicherung prüfen.
Datenverlust vermeiden
Wenn Sie Verlaufsdaten wiederherstellen möchten, die geändert oder gelöscht wurden, oder die Geschäftskontinuität während eines regionalen Ausfalls aufrechterhalten möchten, verwenden Sie die folgenden Tools für die Notfallwiederherstellung und Datenaufbewahrung:
- 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. Aktualisierte oder gelöschte Daten werden in einem Dataset für einen konfigurierten Aufbewahrungszeitraum beibehalten, um vor versehentlichen Änderungen zu schützen. Weitere Informationen finden Sie unter Zeitreisen.
- Regionales Failover: Eine sekundäre Replikatrolle während eines regionalen Ausfalls zur primären Rolle hochstufen, wenn die von BigQuery verwaltete Notfallwiederherstellung verwendet wird. Weitere Informationen finden Sie unter Regionales Failover.
APIs verwenden
Wenn Sie programmatisch mit BigQuery interagieren, können Sie die folgenden Ressourcen verwenden, um die Anfragelatenz zu optimieren und Upload-Workflows zu verwalten:
- API-Leistungstipps Halten Sie sich an Best Practices für API-Aufrufe, z. B. zum Verwalten von Verbindungspools, zum Verwenden von Batchvorgängen und zum Verarbeiten von Wiederholungsversuchen. Weitere Informationen finden Sie unter API-Leistungstipps.
- API-Uploads Fehlerbehebung und Verwaltung der Datenaufnahme mit fortsetzbaren und mehrteiligen Uploadanfragen über die REST API Weitere Informationen finden Sie unter API-Uploads.
Nächste Schritte
- Weitere Informationen zum Monitoring von BigQuery
- BigQuery
INFORMATION_SCHEMA-Referenz - Wenden Sie sich bei anhaltenden oder kritischen Produktionsproblemen an den Cloud Customer Care.