Dialetti che utilizzano queste istruzioni
I seguenti dialetti condividono i requisiti di configurazione del database descritti in questa pagina:
- PostgreSQL
- Google Cloud SQL per PostgreSQL
- Microsoft Azure PostgreSQL
- AlloyDB per PostgreSQL
- Amazon Aurora PostgreSQL
- Amazon RDS per PostgreSQL
Per Google Cloud SQL per PostgreSQL, Looker (Google Cloud core) offre le credenziali predefinite dell'applicazione (ADC) come metodo di autenticazione. Per saperne di più, consulta la documentazione di Looker (Google Cloud core).
Per AlloyDB per PostgreSQL, Amazon RDS per PostgreSQL e Amazon Aurora PostgreSQL, Looker offre assistenza per l'integrazione. Per creare una connessione per questi dialetti, seleziona PostgreSQL 9.5 e versioni successive dal menu a discesa Dialetto nella pagina Nuova connessione.
Per PostgreSQL su Heroku, consulta la documentazione di Heroku.
Crittografia del traffico di rete
È buona prassi criptare il traffico di rete tra l'applicazione Looker e il database. Valuta la possibilità di utilizzare una delle opzioni descritte nella pagina della documentazione Abilitare l'accesso sicuro ai database.
Se vuoi utilizzare la crittografia SSL, consulta la documentazione di PostgreSQL.
Utenti e sicurezza
Per eseguire azioni sul database, Looker deve disporre di un account utente nel database.
Se utilizzi un'istanza Looker (Google Cloud core) e vuoi utilizzare l'ADC, utilizza il nome utente dell'account di servizio sostituito che hai aggiunto al database Cloud SQL. Il nome utente dell'account di servizio avrà il formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com
. Se il nome utente dell'account di servizio termina con .gserviceaccount.com
, rimuovi la parte .gserviceaccount.com
del nome utente. Dopo il troncamento, il nome utente avrà il seguente aspetto: service-<project number>@gcp-sa-looker.iam
.
Per configurare un utente del database da utilizzare da parte di Looker, svolgi i seguenti passaggi nel database:
Crea un utente e una password del database.
CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';
Concedi le autorizzazioni all'utente del database in modo che Looker possa eseguire azioni sul tuo database:
GRANT CONNECT ON DATABASE DATABASE_NAME to USERNAME; \c DATABASE_NAME GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO USERNAME; GRANT SELECT ON ALL TABLES IN SCHEMA public TO USERNAME;
Se utilizzi uno schema diverso da
public
, esegui questo comando per concedere a Looker le autorizzazioni di utilizzo:GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
Per assicurarti che le tabelle future aggiunte allo schema pubblico siano disponibili anche per l'utente di Looker, esegui questi comandi:
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO USERNAME; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO USERNAME;
A seconda della configurazione, potrebbe essere necessario modificare i comandi precedenti. Se un altro utente o ruolo sta creando tabelle per le quali l'utente di Looker ha bisogno di autorizzazioni future, devi specificare un ruolo o un utente target a cui applicare le concessioni di autorizzazione dell'utente di Looker:
ALTER DEFAULT PRIVILEGES FOR USER ANOTHER_USERNAME IN SCHEMA SCHEMA_NAME GRANT SELECT ON tables TO USERNAME;
ALTER DEFAULT PRIVILEGES FOR ROLE TARGET_ROLE IN SCHEMA SCHEMA_NAME GRANT SELECT ON sequences TO USERNAME;
Ad esempio, se un utente web_app
crea tabelle e vuoi che l'utente web_app
possa utilizzarle, devi eseguire un'istruzione GRANT
per concedere all'utente web_app
le autorizzazioni per le tabelle create dall'utente web_app
.looker
looker
In questo caso, il ruolo o l'utente di destinazione è l'utente web_app
, il che significa che vuoi modificare i privilegi sulle tabelle create da web_app
in modo che l'utente web_app
possa avere le autorizzazioni per leggere le tabelle.looker
Ecco un esempio:
ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;
Per ulteriori informazioni, consulta ALTER DEFAULT PRIVILEGES
sul sito web di PostgreSQL.
Configurazione dello schema temporaneo
Postgres self-hosted
Crea uno schema di proprietà dell'utente di Looker:
CREATE SCHEMA SCHEMA_NAME AUTHORIZATION USERNAME;
Postgres su Amazon RDS
Crea uno schema da zero:
CREATE SCHEMA SCHEMA_NAME;
Modifica la proprietà dello schema scratch per l'utente di Looker:
ALTER SCHEMA SCHEMA_NAME OWNER TO USERNAME;
Impostazione del search_path
Prima di connettere Looker al tuo database, devi impostare un search_path
appropriato, che Looker SQL Runner può utilizzare per recuperare determinati metadati dal tuo database:
ALTER USER USERNAME SET search_path TO '$user',SCHEMA_NAME,SCHEMA_NAME_2,SCHEMA_NAME_3
^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^
include a comma-separated list of
all schemas you'll use with Looker
Creazione della connessione di Looker al database
Per creare la connessione da Looker al database:
- Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
Dal menu a discesa Dialetto, seleziona il nome del dialetto del database. Per il dialetto AlloyDB per PostgreSQL, seleziona PostgreSQL 9.5 e versioni successive.
Compila i 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.
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.
Per salvare queste impostazioni, fai clic su Connetti.
Funzionalità supportate
Affinché Looker supporti alcune funzionalità, anche il dialetto del database deve supportarle.
PostgreSQL 9.5 e versioni successive supportano le seguenti funzionalità a partire da Looker 24.20:
Funzionalità | Supportato? |
---|---|
Livello di assistenza | Supportato |
Looker (Google Cloud core) | Sì |
Aggregati simmetrici | Sì |
Tabelle derivate | Sì |
Tabelle derivate SQL permanenti | Sì |
Tabelle derivate native permanenti | Sì |
Visualizzazioni stabili | Sì |
Interruzioni delle query | Sì |
Pivot basati su SQL | Sì |
Fusi orari | Sì |
SSL | Sì |
Subtotali | Sì |
Parametri aggiuntivi JDBC | Sì |
Sensibilità alle maiuscole | Sì |
Tipo di località | Sì |
Tipo di elenco | Sì |
Percentile | Sì |
Percentile distinto | Sì |
Processi di visualizzazione di SQL Runner | Sì |
Tabella Describe di SQL Runner | Sì |
Indici di SQL Runner Show | Sì |
SQL Runner Select 10 | Sì |
Conteggio di SQL Runner | Sì |
SQL Explain | Sì |
Credenziali OAuth | No |
Commenti contestuali | Sì |
Pool di connessioni | Sì |
Schizzi HLL | No |
Aggregate Awareness | Sì |
PDT incrementali | Sì |
Millisecondi | Sì |
Microsecondi | Sì |
Viste materializzate | No |
Conteggio approssimativo valori distinti | No |
A partire da Looker 24.20, Google Cloud PostgreSQL supporta le seguenti funzionalità:
Funzionalità | Supportato? |
---|---|
Livello di assistenza | Supportato |
Looker (Google Cloud core) | Sì |
Aggregati simmetrici | Sì |
Tabelle derivate | Sì |
Tabelle derivate SQL permanenti | Sì |
Tabelle derivate native permanenti | Sì |
Visualizzazioni stabili | Sì |
Interruzioni delle query | Sì |
Pivot basati su SQL | Sì |
Fusi orari | Sì |
SSL | Sì |
Subtotali | Sì |
Parametri aggiuntivi JDBC | Sì |
Sensibilità alle maiuscole | Sì |
Tipo di località | Sì |
Tipo di elenco | Sì |
Percentile | Sì |
Percentile distinto | Sì |
Processi di visualizzazione di SQL Runner | Sì |
Tabella Describe di SQL Runner | Sì |
Indici di SQL Runner Show | Sì |
SQL Runner Select 10 | Sì |
Conteggio di SQL Runner | Sì |
SQL Explain | Sì |
Credenziali OAuth | No |
Commenti contestuali | Sì |
Pool di connessioni | Sì |
Schizzi HLL | No |
Aggregate Awareness | Sì |
PDT incrementali | Sì |
Millisecondi | Sì |
Microsecondi | Sì |
Viste materializzate | No |
Conteggio approssimativo valori distinti | No |
Microsoft Azure PostgreSQL supporta le seguenti funzionalità a partire da Looker 24.20:
Funzionalità | Supportato? |
---|---|
Livello di assistenza | Supportato |
Looker (Google Cloud core) | Sì |
Aggregati simmetrici | Sì |
Tabelle derivate | Sì |
Tabelle derivate SQL permanenti | Sì |
Tabelle derivate native permanenti | Sì |
Visualizzazioni stabili | Sì |
Interruzioni delle query | Sì |
Pivot basati su SQL | Sì |
Fusi orari | Sì |
SSL | Sì |
Subtotali | Sì |
Parametri aggiuntivi JDBC | Sì |
Sensibilità alle maiuscole | Sì |
Tipo di località | Sì |
Tipo di elenco | Sì |
Percentile | Sì |
Percentile distinto | Sì |
Processi di visualizzazione di SQL Runner | Sì |
Tabella Describe di SQL Runner | Sì |
Indici di SQL Runner Show | Sì |
SQL Runner Select 10 | Sì |
Conteggio di SQL Runner | Sì |
SQL Explain | Sì |
Credenziali OAuth | No |
Commenti contestuali | Sì |
Pool di connessioni | Sì |
Schizzi HLL | No |
Aggregate Awareness | Sì |
PDT incrementali | Sì |
Millisecondi | Sì |
Microsecondi | Sì |
Viste materializzate | No |
Conteggio approssimativo valori distinti | No |