PostgreSQL

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 (componente principale di Google Cloud) 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 il supporto 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 in corso...

È buona prassi criptare il traffico di rete tra l'applicazione Looker e il database. Prendi in considerazione una delle opzioni descritte nella pagina della documentazione Abilitazione dell'accesso sicuro al 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 ADC, utilizza il nome utente dell'account di servizio impersonato 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. Se viene troncato, il nome utente sarà simile a service-<project number>@gcp-sa-looker.iam.

Per configurare un utente del database da utilizzare da parte di Looker, segui questi passaggi nel database:

  1. Creare un utente e una password del database.

    CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';
    
  2. 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;
    
  3. Se utilizzi uno schema diverso da public, esegui questo comando per concedere le autorizzazioni di utilizzo a Looker:

    GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
    
  4. 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 di destinazione 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 possa utilizzarle, devi eseguire un'istruzione GRANT per concedere all'utente web_app le autorizzazioni per le tabelle create dall'utente web_app. 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. 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 organizzato autonomamente

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 di 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

Segui questi passaggi per creare la connessione da Looker al tuo database:

  1. Nella sezione Admin (Amministrazione) di Looker, seleziona Connections (Connessioni) e quindi fai clic su Add Connection (Aggiungi connessione).
  2. 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.

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

  4. 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 relativa al test della connettività del database.

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

Funzionalità supportate

Affinché Looker supporti alcune funzionalità, è necessario che anche il dialetto del tuo database le supporti.

PostgreSQL 9.5 e versioni successive supporta le seguenti funzionalità a partire da Looker 24.18:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate da SQL permanente
Tabelle derivate native permanenti
Visualizzazioni stabili
Termine query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
Processi SQL Runner Show
Tabella di descrizione di SQL Runner
SQL Runner Mostra indici
SQL Runner Select 10
Conteggio runner SQL
Spiegazione SQL
Credenziali OAuth
No
Commenti contestuali
Pool di connessioni
Schizzi HLL
No
Consapevolezza aggregata
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimato distinto
No

A partire da Looker 24.18, Google Cloud PostgreSQL supporta le seguenti funzionalità:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate da SQL permanente
Tabelle derivate native permanenti
Visualizzazioni stabili
Termine query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
Processi SQL Runner Show
Tabella di descrizione di SQL Runner
SQL Runner Mostra indici
SQL Runner Select 10
Conteggio runner SQL
Spiegazione SQL
Credenziali OAuth
No
Commenti contestuali
Pool di connessioni
Schizzi HLL
No
Consapevolezza aggregata
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimato distinto
No

Microsoft Azure PostgreSQL supporta le seguenti funzionalità a partire da Looker 24.18:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate da SQL permanente
Tabelle derivate native permanenti
Visualizzazioni stabili
Termine query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
Processi SQL Runner Show
Tabella di descrizione di SQL Runner
SQL Runner Mostra indici
SQL Runner Select 10
Conteggio runner SQL
Spiegazione SQL
Credenziali OAuth
No
Commenti contestuali
Pool di connessioni
Schizzi HLL
No
Consapevolezza aggregata
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimato distinto
No