Connessione di Looker (Google Cloud core) al tuo database

Una volta eseguito il provisioning dell'istanza di Looker (Google Cloud core), questa viene elencata nella pagina Istanze del tuo progetto Google Cloud. Fai clic sull'URL dell'istanza per accedere e eseguire l'autenticazione nell'istanza.

Dopo aver eseguito l'accesso all'istanza di Looker (Google Cloud core), puoi configurare una connessione al database.

Configurare una connessione al database

Per consentire l'esplorazione dei dati, Looker (Google Cloud core) deve essere connesso a un database. Consulta l'elenco dei dialetti supportati per scoprire quali sono supportati da Looker (Google Cloud core).

Puoi creare una connessione al database all'interno di un'istanza di Looker (Google Cloud core) se disponi di una delle seguenti autorizzazioni:

Per connettere il database, puoi seguire la guida Configurare Looker visualizzata dinamicamente all'interno dell'istanza di Looker (Google Cloud core) oppure seguire i passaggi elencati nelle pagine di documentazione specifiche per il dialetto. La maggior parte delle impostazioni è comune alla maggior parte dei dialetti di database. Per informazioni sui campi comuni nella finestra di configurazione della connessione di Looker, consulta la pagina della documentazione Connessione di Looker al database.

Esistono passaggi aggiuntivi se vuoi configurare la connessione di Looker (Google Cloud core) con una delle seguenti opzioni:

Utilizzo delle credenziali predefinite dell'applicazione per connettersi a un database BigQuery

Le istanze di Looker (Google Cloud core) possono utilizzare le credenziali predefinite dell'applicazione (ADC) per l'autenticazione quando configuri una connessione a un database BigQuery SQL standard. Quando utilizzi l'ADC, la connessione si autentica nel database utilizzando le credenziali del service account del progetto Looker (Google Cloud core).

Per utilizzare l'autenticazione lato client con un database BigQuery, seleziona Credenziali predefinite dell'applicazione nel campo Autenticazione della pagina Impostazioni connessione dell'istanza di Looker. Per la procedura completa, consulta la documentazione sulla connessione di Looker a un database BigQuery.

Se la tua istanza Looker (Google Cloud core) utilizza tabelle derivate permanenti con un set di dati BigQuery, devi anche concedere all'account di servizio Looker il ruolo IAM Editor dati BigQuery.

Se ti connetti a un database BigQuery che si trova in un progetto diverso dall'istanza di Looker (Google Cloud core), è necessaria una configurazione aggiuntiva. Consulta la sezione Utilizzare le credenziali predefinite dell'applicazione con un database BigQuery in un altro progetto Google Cloud.

Rappresentazione dell'identità dell'account di servizio

Se vuoi autenticarti nel database BigQuery utilizzando un account di servizio diverso da quello del progetto Looker (Google Cloud core), puoi creare un flusso di richieste delegate inserendo un altro account di servizio o una catena di account di servizio separati da virgola nel campo Account di servizio per furto d'identità. L'account di servizio Looker (Google Cloud core) viene utilizzato automaticamente come primo account di servizio della catena e non deve essere aggiunto al campo. L'ultimo account di servizio della catena (noto anche come account di servizio rappresentato) è quello che si autentica con il database.

Quando utilizzi l'impersonificazione dell'account di servizio, svolgi i seguenti passaggi:

Utilizzo delle credenziali predefinite dell'applicazione con un database BigQuery in un altro progetto Google Cloud

I passaggi per utilizzare l'ADC per un database BigQuery Standard SQL esterno al progetto che ospita l'istanza di Looker (Google Cloud core) sono gli stessi per configurare una connessione all'interno dello stesso progetto. Tuttavia, prima di configurare la connessione nell'istanza di Looker (Google Cloud core), l'account di servizio del progetto Looker (Google Cloud core) deve disporre dei seguenti ruoli IAM:

Se l'account di servizio Looker (Google Cloud core) non dispone già di ruoli IAM nel progetto che contiene il set di dati BigQuery, utilizza l'indirizzo email dell'account di servizio per concedere i ruoli nel progetto. Per trovare l'indirizzo email dell'account di servizio, vai alla pagina IAM nella console Google Cloud e seleziona la casella di controllo Includi concessioni di ruoli fornite da Google. L'email avrà il formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Utilizza l'email per concedere i ruoli appropriati all'account di servizio.

Una volta concessi i ruoli appropriati, segui i passaggi per utilizzare l'ADC.

Ora puoi utilizzare ADC con questo database SQL BigQuery Standard. Il progetto collegato all'account di servizio specificato nella pagina Impostazioni di connessione verrà utilizzato per la fatturazione e fungerà anche da progetto predefinito.

Utilizzo delle credenziali predefinite dell'applicazione per connettersi a un database Cloud SQL

Le istanze di Looker (Google Cloud core) possono utilizzare l'ADC per autenticare una connessione a un database Cloud SQL (Cloud SQL per PostgreSQL o Cloud SQL per MySQL). Quando utilizzi l'ADC per autenticarti nel tuo database Cloud SQL, il progetto Google Cloud in cui è in esecuzione il database Cloud SQL è il progetto per cui vengono fatturate le query di Looker.

Per le connessioni di Looker a Cloud SQL che utilizzano l'ADC, l'ADC finge di essere un account di servizio o una catena di account di servizio per accedere al database. Quando crei la connessione di Looker al tuo database, utilizzi il campo Nomi utente del database IAM per specificare l'account di servizio o la catena di account di servizio che l'ADC simulerà. L'account di servizio Looker creato automaticamente quando hai creato l'istanza di Looker (Google Cloud core) viene utilizzato automaticamente come primo account di servizio della catena e non deve essere aggiunto al campo.

Se vuoi autenticarti al database Cloud SQL utilizzando un account di servizio diverso dall'account di servizio Looker, puoi creare un flusso di richieste delegate inserendo un altro account di servizio o una catena di account di servizio separati da virgola nel campo Nomi utente del database IAM.

L'ultimo account di servizio della catena (noto anche come account di servizio sostituito) è quello che si autentica con il database e deve essere aggiunto come utente al database Cloud SQL. Se utilizzi l'account di servizio Looker come ultimo account di servizio della catena (lasciando vuoto il campo Nomi utente del database IAM), devi aggiungere l'account di servizio Looker come utente nel database Cloud SQL.

Di seguito sono riportati i passaggi generali per connettere un database Cloud SQL per PostgreSQL o Cloud SQL per MySQL a Looker utilizzando ADC:

  1. Aggiungi l'account di servizio sostituito al database Cloud SQL.
  2. Configurare l'usurpazione dell'identità dell'account di servizio nel database Cloud SQL.
  3. Connettiti al database per eseguire comandi di configurazione aggiuntivi per Cloud SQL per PostgreSQL o Cloud SQL per MySQL.
  4. Crea la connessione di Looker al tuo database.

Aggiungi l'account di servizio simulato al database Cloud SQL

Quando crei la connessione di Looker al tuo database, utilizzi il campo Nomi utente del database IAM per specificare l'account di servizio o la catena di account di servizio che l'ADC impersonerà per eseguire azioni sul tuo database. L'ultimo account di servizio nella catena di rappresentazione è considerato l'account di servizio rappresentato.

Per utilizzare l'ADC con Cloud SQL, devi aggiungere l'account di servizio sostituito al database Cloud SQL:

  • Per impostazione predefinita, se lasci vuoto il campo Nomi utente del database IAM, l'ADC ruberà l'identità dell'account di servizio Looker. In questo caso, l'account di servizio Looker è l'account di servizio simulato, quindi devi aggiungerlo al database Cloud SQL. Consulta la pagina della documentazione Creare un'istanza di Looker (Google Cloud core) per informazioni sull'account di servizio Looker e sulla procedura per visualizzare l'indirizzo email dell'account di servizio Looker.
  • Se specifichi un account di servizio diverso dall'account di servizio Looker o se specifichi una catena di account di servizio nel campo Nomi utente del database IAM, devi aggiungere l'ultimo account di servizio nella catena di furto d'identità al database Cloud SQL.

Per aggiungere un account di servizio al database Cloud SQL, devi disporre del ruolo IAM Amministratore Cloud SQL.

Segui la procedura "Aggiungere un utente o un account di servizio IAM all'istanza del database" per il tuo dialetto del database per aggiungere l'account di servizio sostituito al database Cloud SQL:

Configurare l'usurpazione dell'identità dell'account di servizio nel database Cloud SQL

Dopo aver creato l'utente Cloud SQL nel database, devi configurare il database Cloud SQL per l'usurpazione di identità del servizio seguendo questi passaggi:

  1. Segui la procedura per abilitare l'API Cloud SQL Admin.
  2. Assicurati che tutti gli account di servizio della catena, incluso l'account di servizio Looker, dispongano delle autorizzazioni IAM appropriate.
  3. Segui la procedura per concedere un singolo ruolo nella console Google Cloud. Concedi i seguenti ruoli Cloud SQL all'account di servizio simulato che hai aggiunto al database Cloud SQL:

    Se specifichi un account di servizio diverso dall'account di servizio Looker o se specifichi una catena di account di servizio nel campo Nomi utente del database IAM, concedi a ogni account di servizio della catena la seguente autorizzazione:

Comandi di configurazione aggiuntivi per Cloud SQL per MySQL

Per Cloud SQL per MySQL, devi connetterti all'istanza di database ed eseguire il seguente comando sul database Cloud SQL per MySQL:

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

Sostituisci quanto segue:

  • DATABASE_NAME: il nome del database.
  • DATABASE_USER: il nome utente dell'account di servizio troncato per l'account di servizio simulato che hai aggiunto al tuo database Cloud SQL. L'account di servizio avrà il formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Tronca il nome utente rimuovendo @ e tutto ciò che segue. Dopo il troncamento, il nome utente avrà il seguente aspetto: service-<project number>.

Ad esempio, se il nome utente dell'account di servizio è service-12345678901@gcp-sa-looker.iam.gserviceaccount.com e il nome del database è looker-test, il comando sarà il seguente:

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

Comandi di configurazione aggiuntivi per Cloud SQL per PostgreSQL

Per Cloud SQL per PostgreSQL, devi connetterti all'istanza di database ed eseguire alcuni comandi di configurazione sul database Cloud SQL per PostgreSQL:

  • Concedi le autorizzazioni utente al database come descritto nella sezione Utenti e sicurezza della pagina della documentazione di PostgreSQL.
  • Imposta il percorso di ricerca da utilizzare per il programma di esecuzione SQL di Looker per recuperare i metadati dal database, come descritto nella sezione Impostazione di search_path della pagina PostgreSQL della documentazione di Looker.

Crea la connessione da Looker (Google Cloud core) al tuo database Cloud SQL

Per creare la connessione da Looker al database:

  1. Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
  2. Nel menu a discesa Dialetto, seleziona Google Cloud PostgreSQL o, per Cloud SQL per MySQL, seleziona Google Cloud SQL.
  3. Nella sezione Autenticazione, fai clic sull'opzione Credenziali predefinite dell'applicazione.
  4. Nel campo Nomi utente del database IAM, specifica l'account di servizio o la catena di account di servizio di cui vuoi che ADC asssuma il ruolo per eseguire azioni sul database:

  5. Compila il resto dei dettagli della connessione. La maggior parte delle impostazioni è comune alla maggior parte dei dialetti di database. Per informazioni, consulta la pagina della documentazione Connessione di Looker al tuo database.

  6. Per verificare che la connessione sia andata a buon fine, fai clic su Test. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione Testare la connettività del database.

  7. Per salvare queste impostazioni, fai clic su Connetti.

Una volta configurata una connessione al database, puoi configurare un progetto LookML.

Configurare l'autenticazione OAuth con BigQuery

Per le connessioni a un database BigQuery su un'istanza di Looker (Google Cloud core), quando selezioni l'opzione di autenticazione OAuth, Looker può utilizzare automaticamente le credenziali dell'applicazione OAuth che l'amministratore di Looker ha utilizzato per creare l'istanza di Looker (Google Cloud core).

Se vuoi inserire manualmente credenziali OAuth diverse per questa connessione, attiva l'opzione di attivazione/disattivazione Configura manualmente le credenziali OAuth, quindi compila i campi ID client OAuth e Client secret OAuth. Se inserisci manualmente le credenziali OAuth, queste non verranno modificate o aggiornate rispetto a quelle utilizzate per creare l'istanza di Looker (Google Cloud core).

Dialetti supportati per Looker (Google Cloud core)

La tabella seguente mostra il supporto di Looker (Google Cloud core) per i dialetti di database:

Dialetto Supportato?
Actian Avalanche
No
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Apache Druid
No
Apache Druid 0.13+
No
Apache Druid 0.18+
Apache Hive 2.3+
No
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
No
Cloudera Impala with Native Driver
No
DataVirtuality
No
Databricks
Denodo 7
No
Denodo 8
Dremio
No
Dremio 11+
Exasol
No
Firebolt
No
Google BigQuery Legacy SQL
No
Google BigQuery Standard SQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
No
HyperSQL
No
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
No
Microsoft SQL Server 2012+
No
Microsoft SQL Server 2016
No
Microsoft SQL Server 2017+
MongoBI
No
MySQL
No
MySQL 8.0.12+
Oracle
Oracle ADWC
No
PostgreSQL 9.5+
PostgreSQL pre-9.5
No
PrestoDB
PrestoSQL
SAP HANA 2+
SingleStore
No
SingleStore 7+
Snowflake
Teradata
Trino
Vector
No
Vertica

Istruzioni per la configurazione del database

Le istruzioni sono disponibili per i seguenti dialetti SQL:

Passaggi successivi