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 y accéder. Looker prend en charge les options d'authentification suivantes pour BigQuery:

  2. Dans 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 peut utiliser pour créer des PDT dans votre base de données. Pour connaître la procédure, consultez la section Créer un jeu de données temporaire pour stocker 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 connaître la procédure, consultez la section Connecter Looker à BigQuery de cette page.

  4. Dans Looker, testez la connexion entre Looker et votre base de données BigQuery. Pour connaître la procédure, consultez la section Tester la connexion sur 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.

Authentification avec des comptes de service BigQuery

Looker peut s'authentifier dans votre base de données BigQuery à l'aide d'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. Pour créer le compte de service, vous devez disposer d'autorisations d'administrateur Google Cloud. 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, sélectionnez AJOUTER UN AUTRE RÔLE, puis sélectionnez le deuxième 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 CLOSE (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 que vous avez créé le compte de service dans votre base de données BigQuery, vous devez saisir les informations de ce compte de service 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 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 base de données d'effectuer les fonctions suivantes :

  • Effectuez un audit des 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.
  • utiliser des jetons OAuth pour tous les processus et actions qui accèdent à Google BigQuery, au lieu d'intégrer des identifiants et des 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 de leur profil utilisateur pour se connecter à Google.
  • Les connexions BigQuery utilisant OAuth étant "par utilisateur", les stratégies de mise en cache sont également par utilisateur et pas seulement par requête. Autrement dit, au lieu d'utiliser des résultats mis en cache lorsque la même requête est exécutée au cours de la période de mise en cache, Looker utilise les résultats mis en cache uniquement si le même utilisateur a exécuté la même requête au cours de la période de mise en cache. 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 PDT. Pour en savoir plus, consultez la section Tables dérivées persistantes sur une connexion BigQuery de cette page.
  • Lorsqu'ils exécutent une commande sudo pour un autre utilisateur, les administrateurs utilisent le jeton d'autorisation OAuth de cet utilisateur. Pour plus d'informations sur l'utilisation de la commande sudo, consultez la page de documentation Utilisateurs.

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.

Dans les cas suivants, vous n'avez pas besoin de suivre ces procédures:

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 si 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 niveau d'accès requis aux données de cet utilisateur 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 de cette page.

Générer des identifiants Google OAuth

  1. Accédez à Google Cloud Console.

  2. Dans le menu déroulant 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, sur laquelle vous pouvez créer un ID client OAuth et un secret à utiliser dans votre connexion BigQuery à Looker. Dans le menu déroulant Type d'application, sélectionnez Application Web. La page se développe et affiche des options supplémentaires :

  6. Dans le champ 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. Par exemple: 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 les valeurs de votre ID client et de votre code secret client. Vous en aurez besoin pour configurer l'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 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 lancera une vérification pour les applications publiques si l'une des affirmations suivantes est vraie :

  • 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 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 de Looker lorsque vous configurez la connexion Looker à BigQuery. Lorsque vous sélectionnez l'option OAuth, Looker affiche les champs ID client OAuth et Secret client OAuth. Collez les valeurs ID client et Secret client que vous avez obtenues à l'étape de la procédure de génération d'identifiants Google OAuth sur cette page.

Si vous avez défini une durée de session pour OAuth BigQuery, vous devez utiliser la fonctionnalité Exempter les applications approuvées pour ajouter Looker à vos applications approuvées afin d'éviter les expirations de session Looker. Pour connaître la procédure à suivre, consultez Définir la durée de session pour les services Google Cloud.

Comment les utilisateurs Looker s'authentifient-ils 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 procédant comme suit :

Authentification sur Google à partir d'une requête

Une fois la connexion Looker à BigQuery configurée pour OAuth, Looker invite les utilisateurs à se connecter avec leur compte Google avant d'exécuter des requêtes qui utilisent la connexion BigQuery. Looker affiche cette invite dans les explorations, les tableaux de bord, les looks et SQL Runner.

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 réautoriser vos identifiants à tout moment sur la page Compte, comme décrit sur la page de documentation Personnaliser votre compte utilisateur. Même si 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 révoquer l'accès des applications telles que 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 pour 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, ainsi que 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 saisirez les informations du compte de service et les détails du fichier de certificat dans la section Remplacements PDT de la fenêtre Connexions de Looker. La fenêtre Connexions de Looker affiche automatiquement la section Remplacements PTP lorsque vous activez l'option Activer les 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 de tables PDT s'affiche lorsque vous activez l'option 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 pouvez saisir le nom du jeu de données que Looker peut utiliser pour créer des 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 Forcer les tables de données temporaires pour saisir les informations du compte de service que Looker peut utiliser pour les processus de PDT dans votre base de données :

  • Importer un fichier P12 ou JSON : utilisez le bouton 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.
  • Nom d'utilisateur : ce champ ne s'applique que si vous importez un fichier P12 dans le champ Importer un fichier P12 ou JSON de la section Forcer le PDT. 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 de certificat .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 Ajouter une connexion.
  • Pour modifier une connexion existante, recherchez-la dans le tableau Bases de données, puis sélectionnez le bouton Modifier dans la fiche de la connexion.

Saisissez les informations de connexion. La plupart de ces paramètres sont communs à la plupart des dialectes de base de données et sont décrits sur la page de documentation Connecter Looker à votre base de données. Les paramètres suivants sont mentionnés soit pour les mettre en avant, soit pour préciser comment ils s'appliquent spécifiquement aux connexions BigQuery :

  • Dialecte : sélectionnez SQL standard de Google BigQuery ou Ancien SQL de Google BigQuery.

  • ID du projet de facturation: ID de projet (identifiant unique) du projet de facturation Google Cloud. Le projet de facturation est le projet Google Cloud qui est facturé. Toutefois, vous pouvez toujours interroger des ensembles de données dans un autre projet Google Cloud si vos développeurs LookML spécifient des noms de table à portée complète 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 complète, 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 la connexion BigQuery à Looker. Consultez la documentation BigQuery pour en savoir plus sur la hiérarchie des ressources dans BigQuery.

  • Dataset (Ensemble de données) : nom de l'ensemble de données que vous souhaitez utiliser par défaut lorsque Looker interroge votre base de données. L'ensemble de données par défaut doit être situé 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 Database (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 à portée complète utilise le format <project_name>.<dataset_name>.<table_name>. Pour interroger une table dans un autre ensemble de données, le compte de service (pour les connexions utilisant l'authentification par compte de service) ou l'utilisateur exécutant la requête (pour les connexions utilisant l'authentification OAuth) doivent y avoir accès. Si votre code LookML ne spécifie pas de noms de table complets, BigQuery recherchera la table dans l'ensemble de données que vous spécifiez dans le champ Dataset (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.

  • Authentification : type d'authentification que Looker utilisera pour accéder à votre base de données. Certaines de ces options ne sont compatibles qu'avec les instances Looker (Google Cloud Core):

    • Identifiants par défaut de l'application : (Looker (Google Cloud Core) uniquement) sélectionnez cette option pour utiliser les identifiants par défaut de l'application (ADC) pour vous authentifier dans votre base de données (pour en savoir plus, consultez la documentation Looker (Google Cloud Core)).
    • Service Account (Compte de service) : sélectionnez cette option pour utiliser un compte de service BigQuery afin 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 connaître la procédure, consultez la section Créer un jeu de données temporaire pour stocker 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 des étiquettes BigQuery (pour en savoir plus, consultez la section Étiquettes de tâches et commentaires de contexte 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 une lecture. La valeur par défaut est 240 000.
    • rootUrl : si vous avez une instance BigQuery sur un réseau privé, indiquez un point de terminaison alternatif pour vous connecter à BigQuery différent du point de terminaison public par défaut.
  • 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 le nombre maximal de gigaoctets qu'un utilisateur peut extraire dans 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.

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

  • Délai avant expiration du pool de connexions : vous pouvez conserver la valeur par défaut indiquée. 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 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 en savoir plus, consultez la section Libellés de tâche et commentaires de contexte pour les connexions BigQuery.

  • Effectuer une mise en cache préalable de l'exécuteur SQL : si vous ne souhaitez pas que SQL Runner précharge les informations d'une 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 des connexions, 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 de nouvelles connexions, si Looker affiche Can connect (Peut se connecter), sélectionnez Add connection (Ajouter une connexion). Looker exécute les autres tests de connexion pour vérifier que le compte de service a été configuré correctement et avec les rôles adéquats.

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'ID de l'instance Looker qui a émis la requête. Le support Looker peut utiliser ces informations pour vous aider à trouver des solutions, si nécessaire.

Vous pouvez configurer des libellés de tâche supplémentaires que Looker enverra 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 Additional JDBC parameters (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 tâche 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 contextuels sont désactivés par défaut, car ils annulent la capacité de BigQuery à mettre en cache et peuvent avoir un impact négatif sur les performances des caches. 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 pour Désactiver le commentaire de contexte, afin de pouvoir utiliser le cache de BigQuery. Toutefois, si vous désélectionnez l'option Désactiver les commentaires de contexte pour une connexion BigQuery, Looker enverra à votre base de données des commentaires de contexte SQL et des étiquettes de tâche BigQuery.

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"}]

Compatibilité des caractéristiques

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

SQL standard de Google BigQuery

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

Caractéristique Compatibilité
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
Arrêt 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
Exécuteur SQL : afficher les processus
Non
Table de description de SQL Runner
Non
Index d'affichage de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
Expliquer SQL
Non
Identifiants OAuth
Oui
Commentaires sur le contexte
Oui
Regroupement de 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 est compatible avec les fonctionnalités suivantes à partir de Looker 24.16 :

Caractéristique Compatibilité
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
Arrêt 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
Exécuteur SQL : afficher les processus
Non
Table de description de SQL Runner
Non
Index d'affichage de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
Expliquer SQL
Non
Identifiants OAuth
Oui
Commentaires sur le contexte
Oui
Regroupement de 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.