Partager via


Google BigQuery

Résumé

Élément Descriptif
État de publication Disponibilité générale
PRODUITS Power BI (Modèles sémantiques)
Power BI (Flux de données)
Fabric (Dataflow Gen2)
Power Apps (Flux de données)
Customer Insights (flux de données)
Types d’authentification pris en charge Compte organisationnel
Compte de service

Remarque

Certaines fonctionnalités peuvent être présentes dans un produit, mais pas d’autres en raison de planifications de déploiement et de fonctionnalités spécifiques à l’hôte.

Remarque

À compter de juillet 2021, Google a cessé de prendre en charge les connexions aux comptes Google à partir des infrastructures de navigateur intégrées. En raison de cette modification, vous devez mettre à jour votre version de Power BI Desktop en juin 2021 ou à une version ultérieure pour prendre en charge la connexion à Google.

Remarque

Depuis mai 2025, nous avons introduit une nouvelle implémentation pour le connecteur Google BigQuery, actuellement disponible en préversion. En savoir plus sur cette fonctionnalité.

Prérequis

Vous avez besoin d’un compte Google ou d’un compte de service Google pour vous connecter à Google BigQuery.

Fonctionnalités prises en charge

  • Importer
  • DirectQuery (pour les modèles sémantiques Power BI)

Se connecter aux données Google BigQuery à partir de Power Query Desktop

Pour vous connecter à Google BigQuery à partir de Power Query Desktop, procédez comme suit :

  1. Sélectionnez Google BigQuery dans l’interface de récupération de données. L’expérience d’obtention de données dans Power Query Desktop varie selon les applis. Pour plus d’informations sur l'expérience d’obtention de données avec Power Query Desktop pour votre application, accédez à Où obtenir des données.

  2. Si vous souhaitez utiliser des options avancées, sélectionnez Options avancées. Sinon, sélectionnez OK pour continuer. Pour plus d’informations, accédez à Connect à l’aide d’options avancées.

    Capture d’écran de la boîte de dialogue initiale avec la sélection d’options avancées.

  3. Le connecteur Google BigQuery prend en charge la connexion via un compte d’organisation ou un compte de service. Cet exemple utilise le compte d’organisation pour se connecter. Sélectionnez Se connecter pour continuer.

    Capture d’écran de la boîte de dialogue d’authentification utilisée pour se connecter à Google BigQuery.

    Vous pouvez également vous connecter à l’aide d’un compte de service Google. Dans ce cas, sélectionnez Connexion au compte de service et entrez l’e-mail de votre compte de service et le contenu du fichier de clé JSON de votre compte de service. Ensuite, sélectionnez Connect.

  4. Une boîte de dialogue Se connecter avec Google s’affiche. Sélectionnez votre compte Google et approuvez la connexion à Power BI Desktop.

    Capture d’écran de la boîte de dialogue de connexion à Google.

  5. Une fois identifié, sélectionnez Se connecter pour continuer.

    Capture d’écran de la boîte de dialogue d’authentification où vous vous connectez aux données Google BigQuery.

  6. Lorsque vous êtes connecté, une fenêtre Navigateur apparaît et affiche les données disponibles sur le serveur. Sélectionnez vos données dans le navigateur. Ensuite, sélectionnez Transformer des données pour transformer les données dans Power Query ou Charger pour charger les données dans Power BI Desktop.

    Capture d’écran du navigateur Power Query qui charge les données Google BigQuery dans l’application de bureau.

Se connecter aux données Google BigQuery à partir de Power Query Online

Pour vous connecter à Google BigQuery à partir de Power Query Online, procédez comme suit :

  1. Sélectionnez l’option Google BigQuery dans l’interface de récupération des données. Chaque appli a sa propre façon d’accéder à l’expérience d’obtention de données de Power Query Online. Pour plus d’informations sur la façon d’accéder à l’expérience d’obtention de données avec Power Query Online à partir de votre application, accédez à Où obtenir des données.

    Screenshot of the Get Data dialog with emphasis on the Google BigQuery connector.Capture d'écran de la boîte de dialogue Obtenir des données avec un accent sur le connecteur Google BigQuery.

  2. Dans la boîte de dialogue Google BigQuery Database, vous devrez peut-être soit créer une nouvelle connexion, soit sélectionner une connexion existante. Sélectionnez un compte d’organisation ou de service pour vous connecter. Si vous utilisez des données locales, sélectionnez une passerelle de données locale. Ensuite, sélectionnez Se connecter.

    Capture d’écran de la boîte de dialogue Se connecter à la source de données où vous vous connectez à Google BigQuery.

  3. Une boîte de dialogue Se connecter avec Google s’affiche. Sélectionnez votre compte Google et approuvez la connexion.

    Remarque

    Bien que la boîte de dialogue de connexion indique que vous passez à Power BI Desktop une fois que vous vous connectez, vous êtes envoyé à votre application en ligne à la place.

    Capture d’écran de la boîte de dialogue de connexion Google où vous vous connectez à votre compte.

  4. Si vous souhaitez utiliser des options avancées, sélectionnez Options avancées. Informations supplémentaires : Se connecter à l’aide d’options avancées

  5. Une fois connecté, sélectionnez Suivant pour continuer.

    Capture d’écran de la boîte de dialogue Connecter à la source de données avec l’utilisateur correctement connecté.

  6. Lorsque vous êtes connecté, une fenêtre Navigateur apparaît et affiche les données disponibles sur le serveur. Sélectionnez vos données dans le navigateur. Ensuite, sélectionnez Suivant pour transformer les données avec Power Query.

    Capture d’écran du navigateur Power Query qui charge les données Google BigQuery dans l’application en ligne.

Se connecter à l’aide d’options avancées

Power Query Desktop et Power Query Online fournissent tous deux un ensemble d’options avancées que vous pouvez ajouter à votre requête si nécessaire.

Le tableau suivant répertorie toutes les options avancées que vous pouvez définir dans Power Query Desktop et Power Query Online.

Option avancée Descriptif
ID du projet de facturation Projet sur lequel Power Query exécute des requêtes. Les autorisations et la facturation sont liées à ce projet. Si aucun ID de projet de facturation n’est fourni, par défaut, le premier projet disponible retourné par les API Google est utilisé.
Utiliser l’API de stockage Un indicateur permettant d'utiliser l'API de stockage de Google BigQuery. Cette option a la valeur true par défaut. Cette option peut être définie sur false afin de ne pas utiliser l’API de stockage et utiliser les API REST à la place.
Durée du délai d’expiration de la connexion Paramètre de connexion standard (en secondes) qui contrôle la durée pendant laquelle Power Query attend la fin d’une connexion. Vous pouvez modifier cette valeur si votre connexion ne se termine pas avant 15 secondes (valeur par défaut).
Durée du délai d’expiration de la commande La durée pendant laquelle Power Query attend qu’une requête se termine et retourne les résultats. La valeur par défaut dépend du pilote par défaut. Vous pouvez entrer une autre valeur en minutes pour maintenir la connexion ouverte plus longtemps.
ID Projet Projet sur lequel vous souhaitez exécuter des requêtes natives.
Instruction SQL Pour plus d’informations, consultez Importer des données à partir d’une base de données à l’aide d’une requête de base de données native. Dans cette version de la fonctionnalité de requête de base de données native, vous devez utiliser des noms de table complets au format Database.Schema.Table, par exemple SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE. Cette option n’est disponible que dans Power Query Desktop.

Une fois que vous avez sélectionné les options avancées dont vous avez besoin, sélectionnez OK dans Power Query Desktop, ou Suivant dans Power Query Online, pour vous connecter à vos données Google BigQuery.

Nouvelle implémentation du connecteur Google BigQuery (préversion)

Depuis mai 2025, nous avons introduit une nouvelle implémentation pour le connecteur Google BigQuery afin d’améliorer l’intégration à Google BigQuery, actuellement disponible en préversion. Il utilise Arrow Database Connectivity (ADBC) au lieu d’ODBC pour se connecter et récupérer des données à partir de Google BigQuery, ce qui améliore les performances en particulier pour les jeux de résultats volumineux. À mesure que nous continuons à améliorer et à ajouter de nouvelles fonctionnalités à ce connecteur, nous vous encourageons à effectuer une mise à niveau vers la dernière version pour l’essayer et nous fournir des commentaires.

Remarque

Cette fonctionnalité est prise en charge dans la version 64 bits de Power BI Desktop et ne fonctionne pas dans la version 32 bits.

Pour accéder à cette fonctionnalité dans Power BI Desktop, accédez aux options et paramètres (sous l’onglet Fichier) Fonctionnalités> des >, puis cochez la case pour activer l’option Utiliser l’option d’implémentation du connecteur Google BigQuery. Une fois l’option activée, toutes les connexions nouvellement créées utilisent automatiquement la nouvelle implémentation du connecteur.

Vos connexions existantes restent inchangées. Vous pouvez essayer la fonctionnalité en ajoutant l’indicateur Implementation="2.0" dans GoogleBigQuery.Database vos requêtes comme suit. Cette propriété différencie la version du connecteur que vous utilisez.

Pour accéder à cette fonctionnalité dans Dataflow Gen2, après avoir configuré l’obtention de données à partir de Google BigQuery, accédez à l’éditeur Avancé dans le ruban supérieur et ajoutez l’indicateur Implementation="2.0" dans GoogleBigQuery.Database vos requêtes comme suit pour utiliser ce nouveau connecteur.

Source = GoogleBigQuery.Database([Implementation = "2.0"])

Remarque

Lorsque vous utilisez la passerelle de données locale, notez que la version minimale prise en charge est mai 2025. Vous êtes recommandé d’utiliser la dernière version pour évaluer cette fonctionnalité avec les fonctionnalités les plus récentes.

Pour faciliter le diagnostic de tout problème potentiel, vous pouvez trouver l'élément Implementation comme « 2.0 » et l'élément DriverType comme « ADBC » dans vos journaux Mashup.

Actuellement, ce connecteur présente les limitations connues suivantes :

  • Les relations ne sont pas prises en charge.
  • Le proxy n’est pas pris en charge.

Limitations et considérations

Cette section décrit les limitations du connecteur Google BigQuery ou les considérations à prendre en compte le concernant.

Connexion à Google BigQuery dans Power BI Desktop

Il y a quelques limites et considérations à garder à l’esprit lors de l’utilisation du connecteur Google BigQuery avec Power BI.

Disponibilité du connecteur

Le connecteur Google BigQuery est disponible dans Power BI Desktop et dans le service Power BI. Dans le service Power BI, le connecteur est accessible à l’aide de la connexion cloud-à-cloud de Power BI à Google BigQuery.

Erreur « Accès refusé »

Lorsque vous essayez de vous connecter à Google BigQuery à partir de Power BI Desktop, vous pouvez recevoir le message d’erreur suivant :

Datasource.Error: ODBC: ERROR [HY000][Microsoft][BigQuery] (100) Error interacting with REST API: Access Denied: Project <project name>: The user <user name> bigquery.jobs.create permissions in project <project name>.

Dans ce cas, vous devrez peut-être entrer un ID de projet de facturation dans l’option avancée Projet de facturation dans les paramètres de connexion Power Query.

En outre, si vous créez également un rapport dans le service Power BI à l’aide d’une passerelle, vous pouvez toujours obtenir cette erreur. Dans ce cas, vous devez inclure manuellement l’ID de projet de facturation dans le code M de la connexion à l’aide de l’éditeur Power Query ou de la barre de formule Power Query. Par exemple :

Source = GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-Here"])

Prise en charge de la connexion pour un seul cloud

Google BigQuery ne prend pas en charge plusieurs connexions cloud, car il manque un champ de paramètres pour configurer plusieurs connexions cloud. Par conséquent, une seule connexion cloud peut être utilisée.

Champs imbriqués

Pour optimiser les considérations relatives aux performances, Google BigQuery fonctionne mieux avec des jeux de données volumineux lorsqu’il est dénormalisé, aplati et imbriqué.

Le connecteur Google BigQuery prend en charge les champs imbriqués, qui sont chargés en tant que colonnes de texte au format JSON.

Capture d’écran du navigateur montrant la prise en charge des champs imbriqués Google BigQuery.

Les utilisateurs doivent sélectionner transformer des données, puis utiliser les fonctionnalités d’analyse JSON dans l’éditeur Power Query pour extraire les données.

  1. Sous l’onglet de ruban Transformations, sous la catégorie Colonne de texte, sélectionnez Analyser, puis JSON.
  2. Extrayez les champs d’enregistrement JSON à l’aide de l’option Développer la colonne.

Configuration d’un compte de service Google

Pour plus d’informations sur la configuration ou l’utilisation de comptes de service Google, accédez à Création et gestion des clés de compte de service dans Google Docs.

Authentification via un compte de service Google

Lorsque vous vous authentifiez via un compte de service Google dans Power BI Desktop, un format d’informations d’identification spécifique est requis par le connecteur.

  • Adresse e-mail du compte de service : doit être au format e-mail.
  • Contenu du fichier de clé JSON du compte de service : une fois cette clé JSON téléchargée, toutes les nouvelles lignes doivent être supprimées du fichier afin que le contenu soit en une seule ligne. Une fois le fichier JSON dans ce format, le contenu peut être collé dans ce champ.

Lorsque vous vous authentifiez via un compte de service Google dans le service Power BI ou Power Query Online, les utilisateurs doivent utiliser l’authentification « de base ». Le champ Nom d’utilisateur est mappé au champ E-mail du compte de service, et le champ Mot de passe est mappé au champ Contenu du fichier de clé JSON du compte de service. Les exigences de format pour chaque information d’identification restent identiques pour Power BI Desktop, le service Power BI et Power Query Online.

Authentification impossible avec l’API de stockage Google BigQuery

Le connecteur Google BigQuery utilise l'API de stockage Google BigQuery par défaut. Cette fonctionnalité est contrôlée par l’option avancée appelée UseStorageApi. Vous pouvez rencontrer des problèmes avec cette fonctionnalité si vous utilisez des autorisations granulaires. Dans ce scénario, vous pouvez voir le message d’erreur suivant ou ne pas obtenir les données de votre requête :

ERROR [HY000] [Microsoft][BigQuery] (131) Unable to authenticate with Google BigQuery Storage API. Check your account permissions

Vous pouvez résoudre ce problème en ajustant correctement les autorisations utilisateur pour l’API de stockage BigQuery. Ces autorisations d’API de stockage sont requises pour accéder correctement aux données avec l’API de stockage BigQuery :

  • bigquery.readsessions.create : crée une nouvelle session de lecture via l’API de stockage BigQuery.
  • bigquery.readsessions.getData : lit des données à partir d’une session de lecture via l’API de stockage BigQuery.
  • bigquery.readsessions.update : met à jour une session de lecture via l’API de stockage BigQuery.

Ces autorisations sont généralement fournies dans le rôle BigQuery.User. Pour plus d’informations, accédez à Rôles et autorisations prédéfinis de Google BigQuery.

Si les étapes ci-dessus ne résolvent pas le problème, vous pouvez désactiver l’API de stockage BigQuery.

Impossible d’utiliser les données de type DateTime en mode Direct Query

Il existe un problème connu où le type DateTime n’est pas pris en charge par le biais de Direct Query. La sélection d’une colonne avec le type DateTime provoque une erreur Invalid query ou une erreur visuelle.

Limitations relatives à l’interrogation d’une colonne portant le même nom que le nom de la table

Lorsqu’on interroge une colonne qui a le même nom que la table, BigQuery traite cette colonne comme une struct qui inclut toutes les colonnes de la table plutôt que la colonne spécifiée. Par exemple, SELECT debug FROM dataset.debug renvoie un struct avec toutes les colonnes de la table de débogage, au lieu de la colonne de débogage spécifiée. Ce comportement n’est pas intuitif et un correctif est en cours d’examen. Il y a trois solutions de contournement disponibles :

  • Solution de contournement 1 : encapsulez la table dans une vue qui n’entre pas en conflit avec le nom de colonne – CREATE VIEW dataset.new_view AS SELECT * FROM dataset.debug
  • Solution de contournement 2 : renommez la colonne pour éviter les conflits avec le nom de la table – ALTER TABLE dataset.debug RENAME COLUMN debug to new_debug
  • Solution de contournement 3 : modifiez la requête SELECT pour utiliser table.colonne afin de référencer la colonne en conflit – SELECT debug.debug FROM dataset.debug

Les vues matérialisées ne sont pas prises en charge dans le navigateur Power BI Desktop

Un problème connu est que le connecteur Google BigQuery ne prend actuellement pas en charge les vues matérialisées dans le navigateur Power BI Desktop.

  • Solution de contournement : utilisez des instructions SQL de requête native pour récupérer (fetch) des vues matérialisées à partir de Google BigQuery.

Erreur HTTP 403 : quotaExceeded (Quota dépassé : Votre utilisateur a dépassé le quota de requêtes simultanées project.lists)

  • Le quota est dépassé dans le cadre de l'utilisation par le compte client des appels de l'API project.lists à Google. Lorsque plusieurs rapports sont actualisés simultanément, une erreur peut se produire dans différentes requêtes ou différents rapports. Pour éviter cette erreur, planifiez l'actualisation des rapports à intervalles réguliers.
  • Mettre à jour la requête pour inclure un ID de projet de facturation - GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-Here"]).
  • Les appels à GoogleBigQuery.Database doivent se trouver dans la même requête que la définition du schéma et de la table pour éviter l'erreur.

Échec ExecuteQueryInternalAsync lors de l’utilisation d’ADBC

Certains utilisateurs rencontrent des problèmes lors de la connexion à BigQuery à l’aide du Implementation="2.0" chemin d’accès et reçoivent l’erreur Cannot execute <ExecuteQueryInternalAsync>b__2 after 5 tries. Ce problème peut être dû à quelques facteurs :

  • Problème d’autorisation décrit dans la section suivante.
  • Si LargeResultDataset est transmis, le pilote tente de créer le jeu de données de sortie avec le nom fourni. Cette création nécessite les autorisations appropriées pour ce faire.
  • Lorsqu’aucune région n’est spécifiée explicitement lors de la création du jeu de données, l’API BigQuery est définie par défaut sur la multirégion américaine. Ce comportement est piloté par l’API elle-même et non par le connecteur ou la configuration du client.

Options de contournement

Création manuelle d’un jeu de données

Pour éviter les valeurs par défaut de région inattendues, créez manuellement le jeu de données dans votre région souhaitée à l’aide de la console BigQuery.

Configuration du connecteur de bureau

Si vous utilisez Power BI Desktop et que vous rencontrez des erreurs lors de la navigation dans les tables :

  1. Accéder aux options de fichier>et aux paramètres>
  2. Sous Fonctionnalités en préversion, décochez l’option Utiliser la nouvelle implémentation du connecteur Google BigQuery.

Si vous recevez ce message avec des détails supplémentaires qui contiennent Last exception: ..., où ... sont des détails supplémentaires de l’échec, créez un cas pour une enquête plus approfondie.

Problèmes d’autorisation lors de la connexion avec ADBC

Certains environnements peuvent nécessiter des autorisations supplémentaires pour se connecter à l’aide de Implementation="2.0"/ADBC. Cela est dû au fait que le chemin ADBC utilise différentes API BigQuery pour interroger et charger des données que ODBC. Les autorisations requises sont décrites dans le référentiel GitHub du pilote.

Impossible d’actualiser les modèles partitionnés avec ADBC

Un problème connu dans le connecteur Google BigQuery est que les modèles sémantiques partitionnés peuvent ne pas s’actualiser correctement. Cela s’affiche souvent avec l’erreur Cannot execute <ReadChunkWithRetries>b__0 after 5 tries . Un correctif récent a été publié pour ce problème et doit être déployé en octobre 2025. Si vous recevez ce message avec des détails supplémentaires qui contiennent Last exception: ..., où ... sont des détails supplémentaires de l’échec, créez un cas pour une enquête plus approfondie.