Connecter Looker (Google Cloud Core) à votre base de données

Une fois votre instance Looker (Google Cloud Core) provisionnée, elle est répertoriée sur la page Instances de votre projet Google Cloud. Cliquez sur l'URL de l'instance pour y accéder et vous authentifier auprès de celle-ci.

Une fois connecté à votre instance Looker (Google Cloud Core), vous pouvez configurer une connexion de base de données à cette instance.

Configurer une connexion à une base de données

Looker (Google Cloud Core) doit être connecté à une base de données pour permettre l'exploration des données. Consultez la liste des dialectes compatibles pour découvrir ceux qui sont acceptés par Looker (Google Cloud Core).

Vous pouvez créer une connexion de base de données dans une instance Looker (Google Cloud Core) si vous disposez de l'une des autorisations suivantes:

Vous pouvez suivre le guide Configurer Looker qui s'affiche de manière dynamique dans l'instance Looker (Google Cloud Core) pour connecter votre base de données, ou suivre les étapes indiquées sur la page de documentation Connecter Looker à votre base de données et sur les pages de documentation spécifiques au dialecte.

Si votre instance Looker (Google Cloud Core) utilise une connexion IP privée, vous devez configurer une route ou une connexion privée pour la connecter à l'un des types de bases de données suivants:

  • Une base de données sur un autre réseau dans Google Cloud
  • Une base de données hébergée par un autre fournisseur de services cloud
  • Une base de données sur site

Pour en savoir plus sur les réseaux privés et les services externes, consultez la page de documentation Mise en réseau IP privée avec Looker (Google Cloud Core).

Une fois la connexion à la base de données configurée, vous pouvez configurer un projet LookML.

Utiliser les identifiants par défaut de l'application pour se connecter à une base de données BigQuery

Les instances Looker (Google Cloud Core) peuvent utiliser les identifiants par défaut de l'application pour s'authentifier lorsque vous configurez une connexion à une base de données SQL standard BigQuery. Lorsque vous utilisez ADC, la connexion s'authentifie auprès de la base de données à l'aide des identifiants du compte de service du projet Looker (Google Cloud Core).

Pour utiliser ADC avec une base de données BigQuery, sélectionnez Identifiants par défaut de l'application dans le champ Authentification de la page Paramètres de connexion de l'instance Looker. Pour connaître la procédure complète, consultez la documentation sur la connexion de Looker à une base de données BigQuery.

Si vous vous connectez à une base de données BigQuery qui se trouve dans un projet différent de votre instance Looker (Google Cloud Core), une configuration supplémentaire est nécessaire. Consultez la section Utiliser les identifiants par défaut de l'application avec une base de données BigQuery dans un autre projet Google Cloud.

Emprunter l'identité d'un compte de service

Si vous souhaitez vous authentifier auprès de la base de données BigQuery à l'aide d'un compte de service autre que celui du projet Looker (Google Cloud Core), vous pouvez créer un flux de requêtes déléguées en saisissant un autre compte de service ou une chaîne de comptes de service séparés par une virgule dans le champ Compte de service emprunté. Le compte de service Looker (Google Cloud Core) est automatiquement utilisé comme premier compte de service de la chaîne et n'a pas besoin d'être ajouté au champ. Le dernier compte de service de la chaîne (également appelé compte de service usurpé) est celui qui s'authentifie auprès de la base de données.

Lorsque vous utilisez l'emprunt d'identité d'un compte de service, procédez comme suit:

Utiliser les identifiants par défaut de l'application avec une base de données BigQuery dans un autre projet Google Cloud

La procédure à suivre pour utiliser les identifiants par défaut de l'application pour une base de données BigQuery Standard SQL située en dehors du projet hébergeant votre instance Looker (Google Cloud Core) est la même que celle permettant de configurer une connexion dans le même projet. Toutefois, avant de configurer la connexion dans votre instance Looker (Google Cloud Core), le compte de service de votre projet Looker (Google Cloud Core) doit disposer des rôles IAM suivants:

Si le compte de service Looker (Google Cloud Core) ne dispose pas encore de rôles IAM dans le projet qui contient l'ensemble de données BigQuery, utilisez l'adresse e-mail du compte de service lorsque vous attribuez des rôles dans ce projet. Pour trouver l'adresse e-mail du compte de service, accédez à la page IAM de la console Google Cloud et cochez la case Inclure les attributions de rôles fournies par Google. L'e-mail est au format service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Utilisez cette adresse e-mail pour attribuer les rôles appropriés au compte de service.

Une fois les rôles appropriés attribués, suivez les étapes pour utiliser les identifiants par défaut de l'application.

Vous pouvez désormais utiliser les identifiants par défaut de l'application avec cette base de données BigQuery SQL standard. Le projet associé au compte de service spécifié sur la page Paramètres de connexion sera utilisé pour la facturation et servira de projet par défaut.

Utiliser les identifiants par défaut de l'application pour se connecter à une base de données Cloud SQL

Les instances Looker (Google Cloud Core) peuvent utiliser ADC pour authentifier une connexion à une base de données Cloud SQL (Cloud SQL pour PostgreSQL ou Cloud SQL pour MySQL). Lorsque vous utilisez ADC pour vous authentifier dans votre base de données Cloud SQL, le projet Google Cloud dans lequel la base de données Cloud SQL est exécutée est le projet facturé pour les requêtes Looker.

Pour les connexions Looker à Cloud SQL qui utilisent l'ADC, l'ADC emprunte l'identité d'un compte de service ou d'une chaîne de comptes de service pour accéder à votre base de données. Lorsque vous créez la connexion Looker à votre base de données, utilisez le champ Nom d'utilisateur de la base de données IAM pour spécifier le compte de service ou la chaîne de comptes de service que l'ADC doit emprunter. Le compte de service Looker qui a été créé automatiquement lors de la création de l'instance Looker (Google Cloud Core) est automatiquement utilisé comme premier compte de service de la chaîne et n'a pas besoin d'être ajouté au champ.

Si vous souhaitez vous authentifier auprès de votre base de données Cloud SQL à l'aide d'un compte de service autre que le compte de service Looker, vous pouvez créer un flux de requêtes déléguées en saisissant un autre compte de service ou une chaîne de comptes de service séparés par une virgule dans le champ Noms d'utilisateur de la base de données IAM.

Le dernier compte de service de la chaîne (également appelé compte de service emprunté) est celui qui s'authentifie auprès de la base de données. Ce compte doit être ajouté en tant qu'utilisateur à votre base de données Cloud SQL. Si vous utilisez le compte de service Looker comme dernier compte de service de la chaîne (en laissant le champ Noms d'utilisateur des bases de données IAM vide), vous devez ajouter le compte de service Looker en tant qu'utilisateur de votre base de données Cloud SQL.

Voici les étapes générales à suivre pour connecter une base de données Cloud SQL pour PostgreSQL ou Cloud SQL pour MySQL à Looker à l'aide de l'ADC:

  1. Ajoutez le compte de service dont l'identité a été empruntée à votre base de données Cloud SQL.
  2. Configurez l'emprunt d'identité de compte de service sur votre base de données Cloud SQL.
  3. Connectez-vous à votre base de données afin d'exécuter des commandes de configuration supplémentaires pour Cloud SQL pour PostgreSQL ou Cloud SQL pour MySQL.
  4. Créez une connexion Looker à votre base de données.

Ajouter le compte de service dont l'identité a été empruntée à votre base de données Cloud SQL

Lorsque vous créez une connexion Looker à votre base de données, utilisez le champ Nom d'utilisateur de la base de données IAM pour spécifier le compte de service, ou la chaîne de comptes de service, que l'ADC emprunte l'identité pour effectuer des actions sur votre base de données. Le dernier compte de service de la chaîne d'emprunt d'identité est considéré comme le compte de service emprunté.

Pour utiliser ADC avec Cloud SQL, vous devez ajouter le compte de service dont l'identité a été empruntée à votre base de données Cloud SQL:

  • Dans le cas par défaut, si vous laissez le champ Noms d'utilisateur de la base de données IAM vide, l'ADC emprunte l'identité du compte de service Looker. Dans ce cas, le compte de service Looker correspond au compte de service dont l'identité a été empruntée. Vous devez donc ajouter le compte de service Looker à votre base de données Cloud SQL. Consultez la page de documentation Créer une instance Looker (Google Cloud Core) pour en savoir plus sur le compte de service Looker et découvrir comment afficher l'adresse e-mail du compte de service Looker.
  • Si vous spécifiez un compte de service autre que le compte de service Looker ou si vous spécifiez une chaîne de comptes de service dans le champ Noms d'utilisateur des bases de données IAM, vous devez ajouter le dernier compte de service de la chaîne d'emprunt d'identité à votre base de données Cloud SQL.

Pour ajouter un compte de service à votre base de données Cloud SQL, vous devez disposer du rôle IAM Administrateur Cloud SQL.

Suivez la procédure "Ajouter un utilisateur ou un compte de service IAM à votre instance de base de données" pour votre dialecte de base de données afin d'ajouter le compte de service dont l'identité a été empruntée à votre base de données Cloud SQL:

Configurer l'emprunt d'identité de compte de service sur votre base de données Cloud SQL

Une fois que vous avez créé l'utilisateur Cloud SQL dans votre base de données, vous devez configurer votre base de données Cloud SQL pour l'emprunt d'identité de service en procédant comme suit:

  1. Suivez la procédure pour activer l'API Cloud SQL Admin.
  2. Assurez-vous que tous les comptes de service de la chaîne, y compris le compte de service Looker, disposent des autorisations IAM appropriées.
  3. Suivez la procédure permettant d'attribuer un rôle unique dans la console Google Cloud. Attribuez les rôles Cloud SQL suivants au compte de service usurpé que vous avez ajouté à votre base de données Cloud SQL:

    Si vous spécifiez un compte de service autre que le compte de service Looker ou si vous spécifiez une chaîne de comptes de service dans le champ Noms d'utilisateur de la base de données IAM, accordez à chaque compte de service de la chaîne l'autorisation suivante:

Commandes de configuration supplémentaires pour Cloud SQL pour MySQL

Si vous utilisez Cloud SQL pour MySQL, vous devez vous connecter à votre instance de base de données et y exécuter la commande suivante:

GRANT ALL on DATABASE_NAME.* to 'DATABASE_USER'@'%'

Remplacez les éléments suivants :

  • DATABASE_NAME: nom de votre base de données.
  • DATABASE_USER: nom d'utilisateur tronqué du compte de service dont l'identité a été empruntée que vous avez ajoutée à votre base de données Cloud SQL. Le compte de service se présente au format service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Pour tronquer le nom d'utilisateur, supprimez @ et tout ce qui suit. Une fois tronqué, le nom d'utilisateur ressemble à ceci : service-<project number>.

Par exemple, si le nom d'utilisateur du compte de service est service-12345678901@gcp-sa-looker.iam.gserviceaccount.com et que le nom de la base de données est looker-test, la commande est la suivante:

GRANT ALL on looker-test.* to 'service-12345678901'@'%'

Commandes de configuration supplémentaires pour Cloud SQL pour PostgreSQL

Si vous utilisez Cloud SQL pour PostgreSQL, vous devez vous connecter à votre instance de base de données et y exécuter certaines commandes de configuration:

  • Accordez à l'utilisateur des autorisations sur votre base de données, comme indiqué dans la section Utilisateurs et sécurité de la page de documentation PostgreSQL.
  • Définissez le chemin de recherche que l'exécuteur SQL Looker doit utiliser pour récupérer les métadonnées de votre base de données, comme décrit dans la section Définir le search_path de la page PostgreSQL de la documentation de Looker.

Créer la connexion à Looker (Google Cloud Core)

Pour créer la connexion entre Looker et votre base de données, procédez comme suit:

  1. Dans la section Admin de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
  2. Dans le menu déroulant Dialecte, sélectionnez Google Cloud PostgreSQL ou, dans le cas de Cloud SQL pour MySQL, sélectionnez Google Cloud SQL.
  3. Dans la section Authentication (Authentification), cliquez sur l'option Application Default Credentials (Identifiants par défaut de l'application).
  4. Dans le champ Nom d'utilisateur des bases de données IAM, spécifiez le compte de service ou la chaîne de comptes de service auxquels vous souhaitez qu'ADC emprunte l'identité pour effectuer des actions sur votre base de données:

  5. Renseignez les autres informations de connexion. La majorité des paramètres sont communs à la plupart des dialectes de base de données. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.

  6. Pour vérifier que la connexion est établie, cliquez sur Test (Tester). Consultez la page de documentation Tester la connectivité de la base de données pour obtenir des informations de dépannage.

  7. Pour enregistrer ces paramètres, cliquez sur Connecter.

Dialectes compatibles avec Looker (Google Cloud Core)

Le tableau suivant indique la compatibilité de Looker (Google Cloud Core) pour les dialectes de base de données:

Dialecte Compatible ?
Avalanche d'Actian
Non
Amazon Athena
Oui
Amazon Aurora MySQL
Oui
Amazon Redshift
Oui
Apache Druid
Non
Apache Druid 0.13 et versions ultérieures
Non
Apache Druid 0.18 et versions ultérieures
Oui
Apache Hive 2.3 et versions ultérieures
Non
Apache Hive 3.1.2 et versions ultérieures
Oui
Apache Spark 3 et versions ultérieures
Oui
ClickHouse
Oui
Cloudera Impala 3.1+
Oui
Cloudera Impala 3.1+ avec pilote natif
Non
Cloudera Impala avec Native Driver
Non
DataVirtuality
Non
Databricks
Oui
Denodo 7
Non
Denodo 8
Oui
Dremio
Non
Dremio 11 et versions ultérieures
Oui
Exasol
Non
Feu
Non
Ancien SQL de Google BigQuery
Non
SQL standard Google BigQuery
Oui
Google Cloud PostgreSQL
Oui
Google Cloud SQL
Oui
Google Spanner
Oui
Greenplum
Non
HyperSQL
Non
IBM Netezza
Oui
MariaDB
Oui
Microsoft Azure PostgreSQL
Oui
Base de données Microsoft Azure SQL
Oui
Microsoft Azure Synapse Analytics
Oui
Microsoft SQL Server 2008 et versions ultérieures
Non
Microsoft SQL Server 2012 et versions ultérieures
Non
Microsoft SQL Server 2016
Non
Microsoft SQL Server 2017 et versions ultérieures
Oui
MongoBI
Non
MySQL
Non
MySQL 8.0.12 et versions ultérieures
Oui
Oracle
Oui
Oracle ADWC
Non
PostgreSQL 9.5 et versions ultérieures
Oui
PostgreSQL version antérieure à 9.5
Non
PrestoDB
Oui
PrestoSQL
Oui
SAP HANA 2 et versions ultérieures
Oui
SingleStore
Non
SingleStore 7 et versions ultérieures
Oui
Snowflake
Oui
Teradata
Non
Trino
Oui
Vecteur
Non
Vertica
Oui

Instructions pour la configuration de la base de données

Des instructions sont disponibles pour ces dialectes SQL:

Étapes suivantes