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ête, 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 total (tel qu'un code d'erreur ou un échec de tâche), une dégradation des performances (telle qu'une requête lente ou une pénurie d'emplacements), un refus d'autorisation ou un écart de coût inattendu.
  2. Inspectez les détails de l'exécution de la tâche. Utilisez l' Google Cloud explorateur de tâches de la console, le graphique d'exécution de la requête ou les outils de ligne de commande pour examiner les délais au niveau de l'étape, 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 de schéma d'informations ou inspectez Cloud Audit Logs pour corréler le comportement des tâches avec la contention des ressources, les limites de réservation ou les modifications administratives.
  4. Appliquez des mesures d'atténuation ciblées. Utilisez des guides de dépannage spécifiques à une catégorie ou des fonctions SQL défensives pour corriger la cause sous-jacente.

Distinguer le dépannage de l'optimisation

Lorsque vous utilisez 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 des quotas ou des comportements involontaires qui empêchent les tâches de se terminer correctement.
  • Optimisation des performances. Se concentre sur l'amélioration de la vitesse d'exécution, de la latence ou de l'efficacité des ressources des requêtes et des charges de travail qui s'exécutent déjà correctement. Pour en savoir plus, consultez la section Optimiser les performances des requêtes.
  • Bonnes pratiques. Se concentre sur les modèles architecturaux 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 la section Présentation des bonnes pratiques.

Outils de diagnostic

Les sections suivantes décrivent plusieurs interfaces BigQuery et outils automatisés 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 à partir de Google Cloud la console.

  • Explorateur de tâches. Recherchez, filtrez et inspectez les tâches passées et en cours d'exécution 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 tâches. Pour en savoir plus, consultez la section Surveiller les tâches dans l'explorateur de tâches.
  • 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 mélange sur 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 la section 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 de l'utilisation des emplacements, de la simultanéité des tâches et des allocations de réservation pour diagnostiquer les contraintes de capacité. Pour en savoir plus, consultez la section Utiliser les 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 Google Cloud console. Pour en savoir plus, consultez la section Résoudre les problèmes liés aux requêtes à l'aide de Gemini Cloud Assist.

Outils de diagnostic automatisés et de ligne de commande

Les outils suivants peuvent vous aider à diagnostiquer les problèmes liés à 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 des tâches à 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 la section Résoudre les problèmes liés aux commandes CLI.
  • Outil gcpdiag Exécutez des diagnostics automatisés à partir de la ligne de commande pour détecter les problèmes de configuration Google Cloud courants, y compris les lacunes d'autorisation IAM, les restrictions réseau et les erreurs de compte de service. Pour en savoir plus, consultez la section Résoudre les échecs de requête à l'aide de gcpdiag.

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

Les vues de schéma d'informations vous permettent d'interroger les métadonnées en temps réel et historiques sur les tâches, la capacité, l'ingestion en flux continu et les ensembles de données à l'aide de SQL standard. Ces vues incluent les éléments suivants :

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

Cloud Monitoring et Cloud Audit Logs

  • Journaux d'audit Cloud. Consultez les journaux d'audit des activités d'administration et des accès aux données pour savoir qui a initié des opérations spécifiques, inspecter les identités de l'appelant 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 la section Surveiller BigQuery à l'aide de Cloud Monitoring.

Fonctions SQL défensives et instructions de débogage

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

  • Expressions sécurisées. 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 tableau ne correspondent pas. La plupart des fonctions scalaires sont compatibles avec le préfixe SAFE.. Pour en savoir plus, consultez la section Fonctions de débogage et SAFE. préfixe.
  • Assertions SQL. Utilisez l'instruction ASSERT dans les transactions ou les 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 la section 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 profondes et les guides de résolution pas à pas.

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ôle manquantes et les blocages de 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é de BigQuery.

Ingestion, streaming et transferts de données

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

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ûts

Examinez les frais inattendus et les écarts de facturation entre le calcul et le stockage.

Atténuation des pertes 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 de panne régionale, utilisez les outils de reprise après sinistre et de conservation des données suivants :

  • Restaurer les données. Interrogez ou restaurez les données de table qui ont été modifiées ou supprimées dans votre fenêtre temporelle. Pour en savoir plus, consultez la section Restaurer les 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 la section Fonctionnalité temporelle.
  • Basculement régional. Promouvez un réplica secondaire au rôle principal lors d'une panne régionale lorsque vous utilisez la reprise après sinistre gérée par BigQuery. Pour en savoir plus, consultez la section Basculement régional.

Utiliser des API

Lorsque vous interagissez avec BigQuery par programmation, utilisez les ressources suivantes pour optimiser la latence des requêtes et gérer les workflows d'importation :

  • Conseils concernant les performances de l'API. Suivez les bonnes pratiques pour effectuer des appels d'API, telles que la gestion des pools de connexions, l'utilisation d'opérations par lot et la gestion des nouvelles tentatives. Pour en savoir plus, consultez la section Conseils concernant les performances de l'API.
  • Importer via l'API. Résolvez les problèmes liés à l'ingestion de données et gérez-la à l'aide de requêtes d'importation multipart et pouvant être reprises de l'API REST. Pour en savoir plus, consultez la section Importer via l'API.

Étape suivante