Présentation du dépannage

Ce document présente les outils de diagnostic, les interfaces de télémétrie et les ressources de documentation disponibles pour vous aider à résoudre les problèmes dans BigQuery.

Lorsque vous rencontrez des échecs de requêtes, des goulots d'étranglement des performances, des erreurs d'autorisation, des limites de quota ou des problèmes d'ingestion de données, BigQuery fournit des outils intégrés pour vous aider à identifier les causes profondes et à résoudre rapidement les problèmes.

Résoudre un problème lié aux workflows

Pour résoudre efficacement un problème dans BigQuery, tenez compte des critères de diagnostic suivants :

  1. Identifiez le symptôme et le mode de défaillance. Examinez les résultats de votre tâche pour déterminer si le problème est un échec complet (par exemple, un code d'erreur ou un échec de tâche), une dégradation des performances (par exemple, une requête lente ou une pénurie de créneaux), un refus d'autorisation ou un écart de coût inattendu.
  2. Inspectez les détails d'exécution du job. Utilisez l'explorateur de jobs de la console Cloud de Confiance , le graphique d'exécution des requêtes ou les outils de ligne de commande pour examiner les timings au niveau des étapes, l'allocation des emplacements et les détails des erreurs. Vous pouvez également demander à Gemini Cloud Assist d'examiner votre problème.
  3. Analysez la télémétrie et les métadonnées. Interrogez les vues du schéma d'information ou inspectez Cloud Audit Logs pour corréler le comportement des jobs avec la contention des ressources, les limites de réservation ou les modifications administratives.
  4. Appliquez des mesures d'atténuation ciblées. Utilisez les guides de dépannage spécifiques à chaque catégorie ou les fonctions SQL défensives pour résoudre le problème sous-jacent.

Distinguer le dépannage de l'optimisation

Lorsque vous travaillez avec BigQuery, il est important de faire la distinction entre le dépannage, l'optimisation des performances et les bonnes pratiques :

  • Dépannage. Se concentre sur le diagnostic et la résolution des échecs inattendus, des erreurs d'exécution, des pipelines défectueux, de l'épuisement du quota ou des comportements involontaires qui empêchent les jobs de se terminer correctement.
  • Optimisation des performances Il s'agit d'améliorer la vitesse d'exécution, la latence ou l'efficacité des ressources des requêtes et des charges de travail qui s'exécutent déjà correctement. Pour en savoir plus, consultez Optimiser les performances des requêtes.
  • Bonnes pratiques : Se concentre sur les modèles d'architecture et de conception pour la modélisation, le stockage, la sécurité et la gestion des coûts des données. Pour en savoir plus, consultez Présentation des bonnes pratiques.

Outils de diagnostic

Les sections suivantes décrivent plusieurs interfaces et outils automatisés BigQuery pour vous aider à diagnostiquer les problèmes liés à vos charges de travail.

Outils visuels et de console

Les outils suivants vous aident à résoudre les problèmes liés à BigQuery depuis la consoleCloud de Confiance .

  • Explorateur de jobs : Recherchez, filtrez et inspectez les jobs passés et en cours dans les projets ou les organisations sans écrire de requêtes SQL. Vous pouvez afficher les messages d'erreur, l'utilisation des emplacements, les chronologies d'exécution et les métadonnées des jobs. Pour en savoir plus, consultez Surveiller les jobs dans l'explorateur de jobs.
  • Graphique d'exécution de la requête Inspectez le plan d'exécution visuel étape par étape d'une requête. Le graphique d'exécution vous aide à identifier les goulots d'étranglement, tels que les déversements de shuffle sur le disque, les étapes liées au calcul, l'asymétrie des données ou les retards d'entrée/sortie. Pour en savoir plus, consultez Obtenir des insights sur les performances des requêtes.
  • Insights sur les requêtes et graphiques de ressources. Affichez des graphiques en temps réel et historiques sur l'utilisation des emplacements, la simultanéité des jobs et les allocations de réservations pour diagnostiquer les contraintes de capacité. Pour en savoir plus, consultez Utiliser des graphiques de ressources d'administration.
  • Gemini Cloud Assist dans BigQuery Obtenez une analyse contextuelle assistée par l'IA des requêtes ayant échoué et des goulots d'étranglement des performances. Gemini Cloud Assist explique les codes d'erreur, met en évidence la syntaxe SQL problématique et suggère des étapes de correction directement dans la consoleCloud de Confiance . Pour en savoir plus, consultez Résoudre les problèmes liés aux requêtes à l'aide de Gemini Cloud Assist.

Outils de diagnostic automatisés et en ligne de commande

Les outils suivants peuvent vous aider à diagnostiquer les problèmes BigQuery à partir d'une interface de ligne de commande.

  • Outil de ligne de commande bq Inspectez les structures d'erreur détaillées, les ID de requête et les métadonnées de job à l'aide de la commande bq show -j <var>JOB_ID</var> ou en ajoutant l'indicateur --format=prettyjson aux commandes de requête. Pour en savoir plus, consultez Dépannage des commandes CLI.
  • Outil gcpdiag Exécutez des diagnostics automatisés à partir de la ligne de commande pour détecter les problèmes de configuration courants Cloud de Confiance , y compris les lacunes d'autorisation IAM, les restrictions réseau et les erreurs de compte de service. Pour en savoir plus, consultez Résoudre les échecs de requêtes à l'aide de gcpdiag.

Vues des métadonnées et de la télémétrie

Les vues du schéma d'information vous permettent d'interroger des métadonnées historiques et en temps réel sur les jobs, la capacité, l'ingestion en flux continu et les ensembles de données à l'aide du langage SQL standard. Voici quelques exemples de vues :

Pour en savoir plus, consultez la page Présentation de BigQuery INFORMATION_SCHEMA.

Cloud Monitoring et Cloud Audit Logs

  • Cloud Audit Logs Consultez les journaux d'audit des activités d'administration et des accès aux données pour savoir qui a lancé des opérations spécifiques, inspecter les identités des appelants et diagnostiquer les erreurs PERMISSION_DENIED. Pour en savoir plus, consultez la documentation de référence sur la journalisation d'audit BigQuery.
  • Cloud Monitoring Suivez des métriques telles que l'utilisation des emplacements, la durée d'exécution des requêtes et les octets importés, et configurez des règles d'alerte pour avertir votre équipe lorsque des seuils ou des quotas sont dépassés. Pour en savoir plus, consultez Surveiller BigQuery à l'aide de Cloud Monitoring.

Fonctions SQL défensives et instructions de débogage

Pour éviter que les requêtes échouent de manière inattendue en raison d'erreurs de données d'exécution, utilisez les éléments suivants :

  • Expressions sûres Utilisez SAFE_CAST(), SAFE_DIVIDE(), SAFE_OFFSET() et SAFE_ORDINAL() pour renvoyer NULL au lieu de générer des erreurs d'exécution lorsque les types de données ou les limites de tableaux ne correspondent pas. La plupart des fonctions scalaires sont compatibles avec le préfixe SAFE.. Pour en savoir plus, consultez Déboguer des fonctions et Préfixe SAFE..
  • Assertions SQL Utilisez l'instruction ASSERT dans les transactions ou scripts à plusieurs instructions pour appliquer des conditions de validation des données et échouer avec des messages d'erreur personnalisés avant l'exécution des opérations en aval. Pour en savoir plus, consultez Instructions de débogage.

Résoudre les problèmes par catégorie

Sélectionnez une catégorie dans les sections suivantes pour afficher les codes d'erreur détaillés, les causes premières et les guides de résolution étape par étape.

Performances et exécution des requêtes

Diagnostiquez les requêtes qui ne s'exécutent pas, qui expirent, qui rencontrent des contraintes de ressources ou qui subissent des retards inattendus.

Identity and Access Management (IAM) et sécurité

Diagnostiquez les échecs de contrôle des accès, les attributions de rôles manquantes et les blocages des règles de gouvernance des données.

Quotas, limites de débit et réservations

Résolvez les problèmes lorsque les charges de travail dépassent les limites de service ou les allocations de capacité BigQuery.

Ingestion, flux et transferts de données

Diagnostiquez les échecs lors du chargement de données, du streaming d'enregistrements ou de la synchronisation de sources externes.

Migration d'entrepôts de données

Diagnostiquer les problèmes lors de l'évaluation, de la traduction ou de la migration d'entrepôts de données externes vers BigQuery

  • Résoudre les problèmes de migration Résolvez les erreurs d'évaluation de la migration, les problèmes de traduction SQL interactive et par lot, ainsi que les échecs d'extraction de métadonnées.

Sources de données externes et requêtes fédérées

Diagnostiquez les erreurs de connectivité, d'authentification et d'exécution lorsque vous interrogez des données en dehors de BigQuery.

Écarts de facturation et de coût

Enquêter sur les frais inattendus et les écarts de facturation pour le calcul et le stockage

Atténuation de la perte de données

Pour récupérer des données historiques qui ont été modifiées ou supprimées, ou pour assurer la continuité des activités en cas d'indisponibilité régionale, utilisez les outils de reprise après sinistre et de conservation des données suivants :

  • Restaurez les données. Interrogez ou restaurez les données de table qui ont été modifiées ou supprimées pendant votre fenêtre de fonctionnalité temporelle. Pour en savoir plus, consultez Restaurer des données.
  • Fonctionnalité temporelle Conservez les données mises à jour ou supprimées dans un ensemble de données pendant une période de conservation configurée pour vous protéger contre les modifications accidentelles. Pour en savoir plus, consultez Fonctionnalité temporelle.
  • Basculement régional : Promouvoir une réplique secondaire au rôle principal en cas d'indisponibilité régionale lorsque vous utilisez la reprise après sinistre gérée par BigQuery. Pour en savoir plus, consultez la page Basculement régional.

Utiliser des API

Lorsque vous interagissez avec BigQuery de manière programmatique, utilisez les ressources suivantes pour optimiser la latence des requêtes et gérer les workflows d'importation :

  • Conseils sur les performances de l'API Suivez les bonnes pratiques pour effectuer des appels d'API, comme la gestion des pools de connexions, l'utilisation d'opérations par lot et la gestion des nouvelles tentatives. Pour en savoir plus, consultez Astuces relatives aux performances de l'API.
  • Importations via l'API : Résolvez les problèmes d'ingestion de données et gérez-la à l'aide des requêtes d'importation multipartie et reprise de l'API REST. Pour en savoir plus, consultez Importations par API.

Étapes suivantes