Google BigQuery

Présentation

Cette page explique comment configurer dans Looker une connexion au SQL standard Google BigQuery ou à l'ancien SQL Google BigQuery.

Pour configurer une connexion Google BigQuery Standard SQL ou Google BigQuery Legacy SQL, procédez comme suit:

  1. Dans votre base de données BigQuery, configurez l'authentification que Looker utilisera pour accéder à votre base de données BigQuery. Looker prend en charge les options d'authentification suivantes pour BigQuery:

  2. Sur votre base de données BigQuery, si vous souhaitez utiliser des tables dérivées persistantes (PDT) sur la connexion, créez un ensemble de données temporaire que Looker pourra utiliser pour générer des tables PDT dans votre base de données. Pour en savoir plus sur la procédure à suivre, consultez la section Créer un ensemble de données temporaire pour les tables dérivées persistantes sur cette page.

  3. Dans Looker, configurez la connexion entre Looker et votre base de données BigQuery. Pour en savoir plus sur la procédure à suivre, consultez la section Connecter Looker à BigQuery sur cette page.

  4. Dans Looker, testez la connexion entre Looker et votre base de données BigQuery. Pour en savoir plus sur la procédure à suivre, consultez la section Tester la connexion de cette page.

Chiffrement du trafic réseau

Il est recommandé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Envisagez l'une des options décrites sur la page de documentation Activer l'accès sécurisé à la base de données.

S'authentifier avec des comptes de service BigQuery

L'une des méthodes permettant à Looker de s'authentifier auprès de votre base de données BigQuery consiste à utiliser un compte de service BigQuery. Vous allez créer le compte de service sur votre base de données BigQuery à l'aide du gestionnaire d'API dans la console Google Cloud. Vous devez disposer des autorisations d'administrateur Google Cloud pour créer le compte de service. Consultez la documentation sur la création d'un compte de service et la génération d'une clé privée.

Créer un compte de service et télécharger le certificat d'identification JSON

Pour créer un compte de service BigQuery, procédez comme suit:

  1. Ouvrez la page des identifiants dans le gestionnaire d'API de la console Google Cloud, puis sélectionnez votre projet.

  2. Sélectionnez CRÉER DES IDENTIFIANTS, puis Compte de service.

  3. Saisissez un nom pour le nouveau compte de service, ajoutez éventuellement une description, puis sélectionnez CRÉER ET CONTINUER.

  4. Votre compte de service nécessite deux rôles prédéfinis Google BigQuery:

    • BigQuery > Éditeur de données BigQuery
    • BigQuery > Utilisateur de job BigQuery

    Sélectionnez le premier rôle dans le champ Sélectionner un rôle, cliquez sur AJOUTER UN AUTRE RÔLE, puis sélectionnez le second rôle.

    Après avoir sélectionné les deux rôles, cliquez sur CONTINUER, puis sur OK.

  5. Sur la page Identifiants, sélectionnez votre nouveau compte de service:

  6. Sélectionnez CLÉS, puis AJOUTER UNE CLÉ. Ensuite, dans la liste déroulante, sélectionnez Créer une clé:

  7. Sous Type de clé, sélectionnez JSON, puis cliquez sur CRÉER:

  8. La clé JSON sera enregistrée sur votre ordinateur.

    Après avoir noté l'emplacement de téléchargement, sélectionnez FERMER:

  9. Sélectionnez OK.

  10. Recherchez l'adresse e-mail correspondant au compte de service. Vous aurez besoin de cette adresse pour configurer la connexion entre Looker et BigQuery:

  11. Une fois le compte de service créé dans votre base de données BigQuery, vous devez saisir ces informations et les détails du fichier de certificat dans les champs Adresse e-mail du compte de service, Fichier JSON/P12 du compte de service et Mot de passe de la fenêtre Connexions de Looker lorsque vous configurez la connexion de Looker à BigQuery.

Authentification avec OAuth

Looker prend en charge OAuth pour les connexions Google BigQuery, ce qui signifie que chaque utilisateur Looker s'authentifie auprès de Google avec ses propres identifiants Google OAuth et autorise Looker à accéder à la base de données.

OAuth permet aux administrateurs de bases de données d'effectuer les tâches suivantes:

  • Auditez les utilisateurs Looker qui exécutent des requêtes sur la base de données.
  • Appliquez des contrôles d'accès basés sur les rôles à l'aide d'autorisations Google.
  • Utilisez des jetons OAuth pour tous les processus et actions qui accèdent à Google BigQuery, au lieu d'intégrer les ID et les mots de passe BigQuery à plusieurs endroits.

Notez les points suivants pour les connexions BigQuery avec OAuth:

  • Si un administrateur de base de données modifie les identifiants du client OAuth de BigQuery, toutes les planifications ou alertes qu'un utilisateur possède seront affectées. Les utilisateurs doivent se reconnecter si leur administrateur modifie les identifiants OAuth de BigQuery. Les utilisateurs peuvent également accéder à la page de leur compte Looker depuis la page du compte de leur profil utilisateur pour se connecter à Google.
  • Étant donné que les connexions BigQuery qui utilisent OAuth sont "par utilisateur", les règles de mise en cache sont également définies par utilisateur et pas seulement par requête. Cela signifie qu'au lieu d'utiliser les résultats mis en cache chaque fois que la même requête est exécutée pendant la période de mise en cache, Looker n'utilisera les résultats mis en cache que si le même utilisateur a exécuté la même requête pendant cette période. Pour en savoir plus sur la mise en cache, consultez la page de documentation Mettre en cache des requêtes.
  • Si vous souhaitez utiliser des tables dérivées persistantes (PDT) sur une connexion BigQuery avec OAuth, vous devez créer un compte de service supplémentaire pour que Looker puisse accéder à votre base de données pour les processus de tables dérivées persistantes. Pour en savoir plus, consultez la section Tables dérivées persistantes sur une connexion BigQuery sur cette page.
  • Lorsqu'ils exécutent une commande sudo pour un autre utilisateur, les administrateurs utilisent le jeton d'autorisation OAuth de cet utilisateur. Consultez la page de documentation Utilisateurs pour en savoir plus sur l'utilisation de la commande sudo.

Configuration d'un projet de base de données BigQuery pour OAuth.

Les sections suivantes expliquent comment générer des identifiants OAuth et configurer un écran de consentement OAuth. Si vous avez déjà configuré un écran d'autorisation OAuth pour une autre application de votre projet, vous n'avez pas besoin d'en créer un autre. Vous ne devez configurer qu'un seul écran d'autorisation pour toutes les applications d'un projet.

Les identifiants et l'écran de consentement OAuth doivent être configurés dans la console Google Cloud. La description générique Google est disponible sur le site d'assistance Google Cloud et sur le site de la console de développement Google.

Selon le type d'utilisateurs qui accèdent aux données BigQuery dans Looker et selon que vos données BigQuery sont publiques ou privées, OAuth n'est peut-être pas la méthode d'authentification la plus appropriée. De même, le type de données demandées à l'utilisateur et le degré d'accès requis à ses données lorsqu'il s'authentifie auprès de Google pour utiliser Looker peuvent nécessiter une vérification par Google. Pour en savoir plus sur la validation, consultez la section Générer des identifiants Google OAuth sur cette page.

Générer des identifiants Google OAuth

  1. Accédez à Google Cloud Console.

  2. Dans la liste déroulante Sélectionner un projet, accédez à votre projet BigQuery. Vous devriez être redirigé vers le tableau de bord de votre projet.

  3. Dans le menu de gauche, sélectionnez la page API et services. Sélectionnez ensuite Credentials (Identifiants). Sur la page Credentials (Identifiants), cliquez sur la flèche vers le bas du bouton Create credentials (Créer des identifiants), puis sélectionnez OAuth client ID (ID client OAuth) dans le menu déroulant:

  4. Google vous demande de configurer un écran de consentement OAuth, qui permet à vos utilisateurs de choisir comment accorder l'accès à leurs données privées, avant de pouvoir générer vos identifiants OAuth. Pour configurer votre écran de consentement OAuth, consultez la section Configurer un écran de consentement OAuth sur cette page.

  5. Si vous avez déjà configuré un écran de consentement OAuth, Google affiche la page Créer un ID client OAuth, qui vous permet de créer un ID client et un code secret OAuth à utiliser dans votre connexion BigQuery à Looker. Dans la liste déroulante Type d'application, sélectionnez Application Web. La page se développe et affiche des options supplémentaires:

  6. Dans le champ Name (Nom), saisissez un nom pour l'application, par exemple Looker.

  7. Dans la section Origines JavaScript autorisées, sélectionnez + AJOUTER UN URI pour afficher le champ URI 1. Dans le champ URI 1, saisissez l'URL de votre instance Looker, y compris https://. Exemple :

    • Si Looker héberge votre instance: https://<instancename>.looker.com
    • Si vous disposez d'une instance Looker hébergée par un client: https://looker.<mycompany>.com
    • Si votre instance Looker nécessite un numéro de port: https://looker.<mycompany>.com:9999
  8. Dans la section URI de redirection autorisés, sélectionnez + AJOUTER UN URI pour afficher le champ URI 1. Dans le champ URI 1, saisissez l'URL de votre instance Looker, suivie de /external_oauth/redirect. Exemples: https://<instancename>.looker.com/external_oauth/redirect ou https://looker.<mycompany>.com:9999/external_oauth/redirect.

  9. Sélectionnez Créer. Google affiche votre ID client et votre code secret du client.

  10. Copiez votre ID client et les valeurs de votre code secret du client. Vous en aurez besoin pour configurer OAuth pour la connexion BigQuery dans Looker.

Google exige que vous configuriez un écran de consentement OAuth, qui permet à vos utilisateurs de choisir comment accorder l'accès à leurs données privées et qui fournit un lien vers les conditions d'utilisation et les règles de confidentialité de votre organisation.

Dans le menu de gauche, sélectionnez la page Écran d'autorisation OAuth. Avant de pouvoir configurer votre écran de consentement OAuth, vous devez choisir le type d'utilisateurs pour lesquels vous mettez cette application à la disposition des utilisateurs. En fonction de votre sélection, votre application peut nécessiter une validation par Google.

Faites votre choix, puis sélectionnez Créer. Google affiche la page de l'écran de consentement OAuth. Vous pouvez configurer cet écran pour toutes les applications de votre projet, y compris les applications internes et publiques.

Google procédera à une vérification des applications publiques si l'une des conditions suivantes est remplie:

  • L'application utilise des API Google qui utilisent des portées restreintes ou sensibles.
  • L'écran de consentement OAuth inclut un logo de l'application.
  • Le projet a dépassé le seuil du domaine.

Procédez comme suit pour configurer votre écran de consentement OAuth:

  1. Dans le champ App name (Nom de l'application), saisissez le nom de l'application à laquelle l'utilisateur accorde l'accès. Dans ce cas, il s'agit de Looker.

  2. Dans le champ Adresse e-mail d'assistance utilisateur, saisissez l'adresse e-mail d'assistance à laquelle les utilisateurs doivent contacter s'ils rencontrent des problèmes de connexion ou de consentement.

  3. Sélectionnez AJOUTER UN DOMAINE pour afficher le champ Domaine autorisé 1. Dans ce champ, saisissez le domaine de l'URL de votre instance Looker. Par exemple, si Looker héberge votre instance à l'adresse https://<instance_name>.cloud.looker.com, le domaine est cloud.looker.com. Pour les déploiements de Looker hébergés par un client, saisissez le domaine sur lequel vous hébergez Looker.

  4. Dans la section Coordonnées du développeur, saisissez une ou plusieurs adresses e-mail que Google peut utiliser pour vous contacter au sujet de votre projet.

    Les champs restants sont facultatifs, mais vous pouvez les utiliser pour personnaliser davantage votre écran de consentement.

  5. Sélectionnez ENREGISTRER ET CONTINUER.

  6. Google affiche la page Champs d'application, dans laquelle vous pouvez configurer des champs d'application. Looker n'a besoin que des portées par défaut, aucune autre configuration de portée n'est nécessaire. Sélectionnez ENREGISTRER ET CONTINUER.

  7. Sur la page Récapitulatif, sélectionnez RETOUR AU TABLEAU DE BORD.

Vous pouvez maintenant poursuivre la procédure de génération de vos identifiants OAuth.

Pour en savoir plus sur la configuration de l'écran de consentement OAuth de Google, consultez la documentation de l'assistance Google.

Configurer la connexion Looker pour BigQuery avec OAuth

Pour activer OAuth pour votre connexion BigQuery, sélectionnez l'option OAuth sur la page Connexion à Looker lorsque vous configurez la connexion Looker à BigQuery. Lorsque vous activez l'option OAuth, Looker affiche les champs ID client OAuth et Code secret du client OAuth. Collez les valeurs ID client et Code secret du client que vous avez obtenues à l'étape de la procédure Générer des identifiants Google OAuth sur cette page.

Comment les utilisateurs de Looker s'authentifient auprès de BigQuery avec OAuth

Une fois la connexion Looker à BigQuery configurée pour OAuth, les utilisateurs peuvent utiliser Looker pour effectuer leur authentification initiale dans votre base de données BigQuery en effectuant l'une des opérations suivantes:

Authentification sur Google à partir d'une requête

Une fois la connexion de Looker à BigQuery configurée pour OAuth, Looker invite les utilisateurs à se connecter avec leur compte Google avant d'exécuter des requêtes utilisant la connexion BigQuery. Looker affiche cette requête issue des explorations, des tableaux de bord, des Looks et de l'exécuteur SQL.

L'utilisateur doit sélectionner Se connecter et s'authentifier avec OAuth. Une fois que l'utilisateur s'est authentifié dans BigQuery, il peut sélectionner le bouton Run (Exécuter) dans l'exploration pour que Looker y charge les données.

Authentification sur Google à partir de la page du compte utilisateur

Une fois la connexion Looker à BigQuery configurée pour OAuth, un utilisateur peut s'authentifier auprès de son compte Google depuis la page du compte utilisateur Looker:

  1. Dans Looker, sélectionnez l'icône de profil, puis Compte dans le menu utilisateur.
  2. Accédez à la section Identifiants de connexion OAuth, puis sélectionnez le bouton Connexion pour la connexion à la base de données BigQuery appropriée.
  3. Sélectionnez le compte approprié sur la page Se connecter avec Google.
  4. Sélectionnez Autoriser sur l'écran de consentement OAuth pour autoriser Looker à afficher et à gérer vos données dans Google BigQuery.

Une fois que vous vous êtes authentifié auprès de Google via Looker, vous pouvez vous déconnecter ou autoriser à nouveau vos identifiants à tout moment via votre page Compte, comme indiqué sur la page de documentation Personnaliser votre compte utilisateur. Bien que les jetons Google BigQuery n'expirent pas, un utilisateur peut sélectionner Autoriser à nouveau pour se connecter avec un autre compte Google.

Révocation de jetons OAuth

Les utilisateurs peuvent revoke l'accès d'applications comme Looker au compte Google en accédant aux paramètres de leur compte Google.

Les jetons Google BigQuery n'expirent pas. Toutefois, si un administrateur de base de données modifie les identifiants OAuth de la connexion à la base de données d'une manière qui invalide les identifiants existants, les utilisateurs devront se reconnecter avec leur compte Google avant d'exécuter des requêtes qui utilisent cette connexion.

Tables dérivées persistantes sur une connexion BigQuery

Si vous souhaitez utiliser des tables dérivées persistantes (PDT) pour votre connexion à BigQuery, vous devrez peut-être procéder comme suit, en fonction de la configuration de votre connexion:

  • À l'aide de la console Google Cloud, créez dans votre base de données BigQuery un ensemble de données temporaire que Looker pourra utiliser pour écrire des tables PDT. Pour en savoir plus sur la procédure à suivre, consultez la section Créer un ensemble de données temporaire pour les tables dérivées persistantes sur cette page. Cette étape est nécessaire pour les tables PDT, quelles que soient les autres options de configuration de la connexion.
  • Utilisez le gestionnaire d'API de la console Google Cloud afin de créer un compte de service distinct pour les processus PDT de Looker. Pour en savoir plus sur la procédure à suivre, consultez la section Créer un compte de service et télécharger le certificat d'identification JSON sur cette page. Le type d'authentification sur votre connexion détermine si un compte de service des tables PDT est requis ou non. Il détermine également l'endroit où vous saisissez les informations du compte de service des tables PDT dans la fenêtre Connexions de Looker lorsque vous configurez la connexion de Looker à BigQuery :
    • Si votre connexion utilise OAuth pour l'authentification des utilisateurs, vous devez créer un compte de service distinct pour les processus de PDT. Vous devrez saisir les informations du compte de service et les détails du fichier de certificat dans la section Remplacements PTC de la fenêtre Connexions de Looker. La fenêtre Connections (Connexions) de Looker affiche automatiquement la section PDT Overrides (Remplacements PDT) lorsque vous activez le bouton Enable PDTs (Activer les tables PDT) pour une connexion également configurée avec l'option OAuth dans le champ Authentification. Pour en savoir plus, consultez la section Activer les tables PDT pour les connexions Looker à BigQuery avec OAuth.
    • Si votre connexion utilise des comptes de service pour l'authentification des utilisateurs, vous avez la possibilité de créer un compte de service distinct pour les processus de PDT. Si vous choisissez de disposer d'un compte de service PDT distinct, vous devez saisir les informations du compte de service dans la section PDT Overrides (Remplacements PDT) des champs Service Account Email (Adresse e-mail du compte de service), Service Account JSON/P12 File (Fichier JSON/P12 du compte de service) et Password (Mot de passe) de la fenêtre Connexions de Looker. La section Remplacements pour les tables PDT s'affiche lorsque vous activez le bouton Activer les tables PDT pour une connexion Looker à BigQuery à l'aide de l'authentification par compte de service.

Créer un jeu de données temporaire pour stocker les tables dérivées persistantes

Pour activer les tables dérivées persistantes (PDT) pour votre connexion BigQuery, activez le bouton Activer les tables PDT sur la page Connexion à Looker lorsque vous configurez la connexion Looker à BigQuery. Lorsque vous activez les tables PDT, Looker affiche le champ Ensemble de données temporaire. Dans ce champ, vous allez saisir le nom de l'ensemble de données que Looker peut utiliser pour créer des tables PDT. Vous devez configurer cette base de données ou ce schéma à l'avance en utilisant les autorisations en écriture appropriées.

Vous pouvez configurer un ensemble de données temporaire à l'aide de la console Google Cloud:

  1. Ouvrez la console Google Cloud, puis sélectionnez votre projet.

  2. Sélectionnez le menu à trois points, puis Créer un ensemble de données.

  3. Saisissez un ID de l'ensemble de données (généralement looker_scratch), puis sélectionnez l'emplacement des données (facultatif), le délai d'expiration de la table par défaut et la solution de gestion des clés de chiffrement. Cliquez sur CRÉER L'ENSEMBLE DE DONNÉES pour terminer.

Maintenant que vous avez créé l'ensemble de données, vous pouvez indiquer son nom dans le champ Ensemble de données temporaire de la fenêtre Connexions de Looker lorsque vous configurez la connexion entre Looker et BigQuery.

Activation des tables PDT pour les connexions Looker à BigQuery avec OAuth

Pour les connexions BigQuery utilisant OAuth, vos utilisateurs s'authentifient auprès de Looker avec leurs identifiants OAuth. Looker prend en charge les tables PDT pour les connexions BigQuery avec OAuth, mais Looker lui-même ne peut pas utiliser OAuth. Vous devez donc configurer un compte de service BigQuery spécifiquement pour autoriser Looker à accéder à votre base de données pour les processus de tables PDT.

Vous pouvez configurer un compte de service PDT sur votre base de données BigQuery à l'aide du gestionnaire d'API Google Cloud. Consultez la section Créer un compte de service et télécharger le certificat d'identification JSON de cette page.

Une fois le compte de service créé dans votre base de données BigQuery, vous devez saisir les informations du compte de service et les détails du fichier de certificat dans la section PDT Overrides (Remplacements PTP) de la fenêtre Connexions de Looker lorsque vous configurez la connexion entre Looker et BigQuery. La fenêtre Connections (Connexions) de Looker affiche automatiquement la section PDT Overrides (Remplacements PDT) lorsque vous activez le bouton Enable PDTs (Activer les tables PDT) pour une connexion également configurée avec l'option OAuth dans le champ Authentification. Utilisez les champs suivants de la section PDT Overrides (Remplacements PDT) pour saisir les informations du compte de service que Looker peut utiliser pour les processus PDT de votre base de données:

  • Importer p12 ou json: cliquez sur le bouton Upload File (Importer un fichier) pour importer le fichier de certificat du compte de service BigQuery que vous souhaitez utiliser pour les processus PDT sur la connexion. Vous pouvez obtenir ce fichier à partir du gestionnaire d'API Google Cloud en tant qu'étape décrite dans la procédure Créer un compte de service et télécharger le certificat d'identification JSON.
  • Username (Nom d'utilisateur) : ce champ ne s'applique que si vous importez un fichier P12 dans le champ Upload p12 or json (Importer p12 ou json de la section PDT Overrides). Saisissez l'adresse e-mail du compte de service BigQuery que vous souhaitez utiliser pour les processus de PDT sur la connexion. Vous pouvez obtenir cette adresse e-mail à partir du gestionnaire d'API Google Cloud en suivant les étapes de la procédure Créer un compte de service et télécharger le certificat d'identification JSON.
  • : ce champ ne s'applique que si vous importez un fichier P12 dans le champ Importer p12 ou json de la section Remplacements P12. Saisissez le mot de passe du fichier d'identifiants .p12 du compte de service BigQuery que vous souhaitez utiliser pour les processus PDT sur la connexion.

Connecter Looker à BigQuery

Dans la section Admin de Looker, sélectionnez Connexions pour ouvrir la page Connexions, puis effectuez l'une des opérations suivantes:

  • Pour créer une connexion, sélectionnez le bouton Add Connection (Ajouter une connexion).
  • Pour modifier une connexion existante, recherchez-la dans le tableau Databases (Bases de données), puis sélectionnez le bouton Edit (Modifier) dans la liste des connexions.

Saisissez les informations de connexion. La majorité de ces paramètres sont communs à la plupart des dialectes de base de données. Ils sont décrits sur la page de documentation Connecter Looker à votre base de données. Les paramètres ci-dessous sont mentionnés pour les mettre en évidence ou pour clarifier la façon dont ils s'appliquent spécifiquement aux connexions BigQuery:

  • Dialecte: sélectionnez Google BigQuery Standard SQL ou Google BigQuery Legacy SQL.

  • ID du projet de facturation: nom du projet de facturation Google Cloud. Le projet de facturation est le projet Google Cloud facturé, mais vous pouvez toujours interroger les ensembles de données d'un autre projet Google Cloud si vos développeurs LookML spécifient des noms de tables complets dans le paramètre sql_table_name de vos vues, explorations ou jointures LookML. Pour BigQuery, un nom de table complet utilise le format <project_name>.<dataset_name>.<table_name>. Sans référence étendue, BigQuery recherche la table dans le projet de facturation et l'ensemble de données que vous spécifiez sur la page Connexions de Looker pour établir la connexion entre BigQuery et Looker. Consultez la documentation BigQuery pour obtenir une explication de la hiérarchie des ressources dans BigQuery.

  • nom de l'ensemble de données que Looker utilisera par défaut lorsqu'il interroge votre base de données. L'ensemble de données par défaut doit se trouver dans le projet de facturation spécifié pour la connexion. Vous ne pouvez pas saisir de valeur telle que project_name.dataset_name dans le champ Base de données pour spécifier un ensemble de données dans un autre projet.

    Votre projet LookML peut accéder aux tables d'autres ensembles de données (y compris les tables des ensembles de données publics) si vos développeurs LookML spécifient des noms de tables complets dans le paramètre sql_table_name de vos vues, explorations ou jointures LookML. Pour BigQuery, un nom de table complet utilise le format <project_name>.<dataset_name>.<table_name>. Pour qu'une table puisse être interrogée dans un autre ensemble de données, elle doit être accessible par le compte de service (pour les connexions utilisant l'authentification de compte de service) ou par l'utilisateur exécutant la requête (pour les connexions utilisant l'authentification OAuth). Si votre code LookML ne spécifie pas de noms de table complets, BigQuery recherche la table dans l'ensemble de données que vous spécifiez dans le champ Ensemble de données de la connexion BigQuery.

    Si votre projet ne comporte aucun ensemble de données (ce qui peut être le cas si vous séparez le calcul et le stockage dans des projets distincts), vous pouvez fournir une valeur Dataset arbitraire, mais vous devez toujours utiliser des noms de table complets dans votre LookML.

  • : type d'authentification que Looker utilisera pour accéder à votre base de données (Compte de service ou OAuth) :

    • Service Account (Compte de service) : sélectionnez cette option afin d'utiliser un compte de service BigQuery pour que Looker s'authentifie dans votre base de données (pour en savoir plus, consultez Authentification avec des comptes de service BigQuery). Lorsque Compte de service est sélectionné, les champs suivants s'affichent :
    • OAuth: sélectionnez cette option pour permettre à chaque utilisateur Looker de s'authentifier auprès de Google BigQuery et d'autoriser Looker à accéder à la base de données avec le compte BigQuery de l'utilisateur. Pour en savoir plus sur la mise en œuvre du protocole OAuth pour votre connexion BigQuery, consultez la section Authentification avec OAuth de cette page. Lorsque OAuth est sélectionné, les champs suivants s'affichent :
  • Activer les tables PDT: activez cette option pour autoriser les tables dérivées persistantes (PDT) sur la connexion. Vous devrez spécifier le jeu de données temporaire de votre base de données que Looker utilisera pour écrire des tables PDT. Pour en savoir plus sur la procédure à suivre, consultez la section Créer un ensemble de données temporaire pour les tables dérivées persistantes sur cette page. Remarque: Si votre connexion est configurée pour OAuth, vous devez utiliser la section Remplacements PTC pour spécifier un compte de service que Looker peut utiliser pour les processus PDT sur votre connexion BigQuery. Pour en savoir plus, consultez la section Activer les tables PDT pour les connexions Looker à BigQuery avec OAuth.

  • Ensemble de données temporaire: ensemble de données BigQuery que vous avez créé dans la console Google Cloud pour permettre à Looker d'écrire des tables dérivées persistantes dans votre base de données. Pour en savoir plus sur la procédure à suivre, consultez la section Créer un ensemble de données temporaire pour les tables dérivées persistantes.

  • Database Time Zone (Fuseau horaire de la base de données) : le fuseau horaire par défaut de BigQuery est UTC. Le fuseau horaire que vous spécifiez ici doit correspondre à votre paramètre de fuseau horaire BigQuery. Pour en savoir plus, consultez la section Fuseau horaire de la base de données de la page Connecter Looker à votre base de données.

  • Interroger le fuseau horaire: pour en savoir plus, consultez la section Interroger le fuseau horaire de la page Connecter Looker à votre base de données.

  • Paramètres JDBC supplémentaires: ajoutez des paramètres JDBC supplémentaires, tels que les étiquettes BigQuery. Pour en savoir plus, consultez la section Étiquettes de tâche et commentaires contextuels pour les connexions BigQuery sur cette page. Voici quelques-uns des autres paramètres pris en charge :

    • connectTimeout: nombre de millisecondes d'attente d'une connexion. La valeur par défaut est 240 000.
    • readTimeout: nombre de millisecondes d'attente avant la lecture. La valeur par défaut est 240 000.
    • rootUrl: si vous disposez d'une instance BigQuery dans un réseau privé, spécifiez un autre point de terminaison que le point de terminaison public par défaut pour vous connecter à BigQuery.
  • Facturation maximale en gigaoctets: avec les connexions BigQuery, chaque requête vous est facturée en fonction de sa taille. Pour éviter que les utilisateurs n'exécutent accidentellement une requête trop coûteuse, vous pouvez définir un nombre maximal de gigaoctets qu'un utilisateur est autorisé à extraire en une seule requête. Vous pouvez laisser le champ Max Billing Gigabytes vide si vous ne limitez pas la taille de la requête. Pour en savoir plus sur la tarification, consultez la page des tarifs de BigQuery.

  • Nombre maximal de connexions par nœud: vous pouvez conserver la valeur par défaut au départ. Pour en savoir plus sur ce paramètre, consultez la section Nombre maximal de connexions par nœud de la page de documentation Connecter Looker à votre base de données.

  • Connection Pool Timeout (Délai avant expiration du pool de connexions) : peut être initialement conservé sur la valeur par défaut. Pour en savoir plus sur ce paramètre, consultez la section Expiration du pool de connexions de la page de documentation Connecter Looker à votre base de données.

  • Désactiver le contexte: cette option désactive les commentaires contextuels sur une connexion BigQuery. Les commentaires contextuels sur les connexions Google BigQuery sont désactivés par défaut, car ils désactivent la capacité de Google BigQuery à mettre en cache et peuvent avoir un impact négatif sur les performances du cache. Vous pouvez activer les commentaires contextuels pour une connexion BigQuery en désactivant l'option Désactiver le contexte. Pour en savoir plus, consultez la section Libellés de tâche et commentaires de contexte pour les connexions BigQuery.

  • SQL Runner Precache (Pré-cache de l'exécuteur SQL) : si vous souhaitez que SQL Runner ne précharge pas les informations de la table et les charge uniquement lorsqu'une table est sélectionnée, désélectionnez cette option. Pour en savoir plus, consultez la section Précache de l'exécuteur SQL de la page Connecter Looker à votre base de données.

Une fois que vous avez rempli tous les champs applicables pour la connexion, vous pouvez tester votre connexion si nécessaire.

Pour enregistrer ces paramètres, cliquez sur Connecter.

Tester la connexion

Vous pouvez tester vos paramètres de connexion à plusieurs endroits dans l'interface utilisateur de Looker:

  • Sélectionnez le bouton Test en bas de la page Paramètres de connexion, comme décrit sur la page de documentation Connecter Looker à votre base de données.
  • Sélectionnez le bouton Tester à côté de la connexion sur la page d'administration Connexions, comme décrit sur la page de documentation Connexions.

Pour les nouvelles connexions, si Looker affiche Connexion autorisée, sélectionnez Ajouter une connexion. Looker exécutera les autres tests de connexion pour vérifier que le compte de service a été configuré correctement et avec les rôles appropriés.

Tester une connexion qui utilise OAuth

  1. Dans Looker, passez en mode Développement.
  2. Pour une connexion BigQuery existante utilisant OAuth, accédez aux fichiers de projet d'un projet Looker utilisant votre connexion BigQuery. Pour les nouvelles connexions BigQuery qui utilisent OAuth, ouvrez un fichier de modèle et remplacez la valeur connection du modèle par le nom de votre nouvelle connexion BigQuery, puis enregistrez le fichier de modèle.
  3. Ouvrez l'une des explorations ou l'un des tableaux de bord du modèle, puis exécutez une requête. Lorsque vous essayez d'exécuter une requête, Looker vous invite à vous connecter avec votre compte Google. Suivez les indications de la connexion Google OAuth.

Étiquettes de tâches et commentaires de contexte pour les connexions BigQuery

Pour les connexions BigQuery, Looker envoie le contexte de la requête sous la forme de libellés de tâche BigQuery. Par défaut, Looker envoie les clés d'étiquette de contexte suivantes pour les connexions BigQuery :

  • looker-context-user_id: identifiant unique de chaque utilisateur sur l'instance Looker. Vous pouvez faire correspondre cet ID utilisateur aux ID utilisateur indiqués sur la page Utilisateurs du menu Admin.
  • looker-context-history_slug: identifiant unique de chaque requête exécutée sur la base de données par l'instance Looker.

  • looker-context-instance_slug: numéro d'identification de l'instance Looker ayant émis la requête. Le support Looker peut utiliser ces informations pour vous aider à trouver des solutions, si nécessaire.

Vous pouvez configurer des étiquettes de job supplémentaires que Looker envoie avec chaque requête sur la connexion BigQuery à l'aide du champ de texte Paramètres JDBC supplémentaires de la page Connexions. Dans le champ Paramètres JDBC supplémentaires, ajoutez un paramètre JDBC supplémentaire, labels, puis fournissez une liste de paires key=value encodées au format URL, séparées par une virgule. Par exemple, si vous incluez ceci dans le champ Paramètres JDBC supplémentaires:

labels=this%3Dconnection-label,that%3Danother-connection-label

%3D correspond à l'encodage d'URL de =. Les deux libellés suivants sont donc ajoutés à chaque requête que Looker envoie à la base de données BigQuery, en plus des libellés de contexte Looker par défaut:

  • this : connection-label
  • that : another-connection-label

Notez que BigQuery applique des restrictions sur les libellés de tâche:

  • Toute étiquette de connexion qui a la même clé comme étiquette de contexte sera ignorée.
  • Si l'union des étiquettes de connexion et de contexte dépasse un total de 64 étiquettes maximum, les étiquettes de contexte sont les premières à être supprimées, suivies des étiquettes de connexion, jusqu'à ce que le nombre total d'étiquettes soit de 64 au plus.

Looker s'assure que les étiquettes de contexte sont conformes à toutes les exigences de validité des étiquettes de BigQuery, mais ne vérifie pas la validité des étiquettes de connexion. La configuration d'étiquettes de connexion invalides peut entraîner un échec des requêtes.

Les libellés de job BigQuery que Looker envoie par défaut (looker-context-user_id, looker-context-history_id et looker-context-instance_slug) correspondent aux commentaires de contexte SQL que Looker associe aux requêtes SQL pour les dialectes de base de données autres que BigQuery. Pour les connexions BigQuery, les commentaires de contexte sont désactivés par défaut, car ils désactivent la capacité de BigQuery à mettre en cache et peuvent affecter les performances du cache. Vous pouvez activer les commentaires contextuels pour une connexion BigQuery en désactivant l'option Désactiver le contexte pour la connexion BigQuery. Nous vous recommandons de conserver le paramètre par défaut Désactiver les commentaires de contexte afin de pouvoir utiliser le cache de BigQuery. En revanche, si vous désélectionnez l'option Désactiver les commentaires de contexte pour une connexion BigQuery, Looker enverra des commentaires de contexte SQL et des étiquettes de job BigQuery à votre base de données.

Les commentaires de contexte SQL et les libellés de job BigQuery transmettent les mêmes informations. Par exemple, Looker peut générer les commentaires de contexte SQL suivants pour une requête:

-- Looker Query Context

'{"user_id":1,"history_id":4757,"instance_slug":"ec2804ddef74c466f2a43e0afaa3ff6b"}'

Looker génère alors les étiquettes de job BigQuery suivantes pour la même requête:

[{"value":"1","key":"looker-context-user_id"},

 {"value":"4757","key":"looker-context-history_id"},

 {"value":"ec2804ddef74c466f2a43e0afaa3ff6b","key":"looker-context-instance_slug"}]

Prise en charge de fonctionnalités

Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.

SQL standard Google BigQuery

Le langage SQL standard de Google BigQuery est compatible avec les fonctionnalités suivantes à partir de Looker 24.10:

Sélection Compatible ?
Niveau d'assistance
Compatible
Looker (Google Cloud Core)
Oui
Agrégations symétriques
Oui
Tables dérivées
Oui
Tables dérivées SQL persistantes
Oui
Tables dérivées natives persistantes
Oui
Vues stables
Oui
Suppression des requêtes
Oui
Tableaux croisés dynamiques basés sur SQL
Oui
Fuseaux horaires
Oui
SSL
Oui
Sous-totaux
Oui
Paramètres supplémentaires JDBC
Oui
Sensible à la casse
Oui
Type d'emplacement
Oui
Type de liste
Oui
Centile
Oui
Centile distinct
Oui
Processus d'affichage de l'exécuteur SQL
Non
Table de description de l'exécuteur SQL
Non
Index d'affichage de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
SQL Explain
Non
Identifiants OAuth
Oui
Commentaires sur le contexte
Oui
Pooling des connexions
Non
HLL Sketches
Oui
Reconnaissance d'agrégats.
Oui
Augmentation de tables PDT
Oui
Millisecondes
Oui
Microsecondes
Oui
Vues matérialisées
Oui
Nombre approximatif distinct
Oui

Ancien SQL de Google BigQuery

Google BigQuery Legacy SQL prend en charge les fonctionnalités suivantes à partir de Looker 24.10:

Sélection Compatible ?
Niveau d'assistance
Compatible
Looker (Google Cloud Core)
Non
Agrégations symétriques
Oui
Tables dérivées
Oui
Tables dérivées SQL persistantes
Oui
Tables dérivées natives persistantes
Oui
Vues stables
Non
Suppression des requêtes
Oui
Tableaux croisés dynamiques basés sur SQL
Oui
Fuseaux horaires
Non
SSL
Oui
Sous-totaux
Non
Paramètres supplémentaires JDBC
Oui
Sensible à la casse
Oui
Type d'emplacement
Oui
Type de liste
Oui
Centile
Oui
Centile distinct
Oui
Processus d'affichage de l'exécuteur SQL
Non
Table de description de l'exécuteur SQL
Non
Index d'affichage de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
SQL Explain
Non
Identifiants OAuth
Oui
Commentaires sur le contexte
Oui
Pooling des connexions
Non
HLL Sketches
Non
Reconnaissance d'agrégats.
Oui
Augmentation de tables PDT
Non
Millisecondes
Oui
Microsecondes
Oui
Vues matérialisées
Non
Nombre approximatif distinct
Oui

Étapes suivantes

Une fois votre base de données connectée à Looker, configurez les options de connexion de vos utilisateurs.