Databricks

Crittografia del traffico di rete in corso...

È buona prassi criptare il traffico di rete tra l'applicazione Looker e il database. Valuta una delle opzioni descritte nella pagina della documentazione Abilitare l'accesso sicuro ai database.

Creare un utente Looker

Looker esegue l'autenticazione in Databricks tramite token di accesso personale. Segui la documentazione di Databricks per creare un token di accesso personale da utilizzare in Looker per un utente Databricks.

Aggiungi le autorizzazioni a questo utente con GRANT.

L'utente di Looker deve disporre almeno delle autorizzazioni SELECT e READ_METADATA.

GRANT SELECT ON DATABASE <YOUR_DATABASE> TO `<looker>@<your.databricks.com>`
GRANT READ_METADATA ON DATABASE <YOUR_DATABASE> TO `<looker>@<your.databricks.com>`

Informazioni server

Segui la documentazione di Databricks per trovare il percorso HTTP per il tuo cluster Databricks. In questa pagina verrà indicato come <YOUR_HTTP_PATH>.

Configurazione di tabelle derivate permanenti

Per utilizzare le tabelle derivate permanenti, crea un database separato.

CREATE DATABASE <YOUR_SCRATCH_DATABASE>

Sarà anche necessaria la concessione di ulteriori autorizzazioni utente basate su scrittura.

GRANT SELECT CREATE MODIFY ON DATABASE <YOUR_SCRATCH_DATABASE> TO `<looker>@<your.databricks.com>`
GRANT READ_METADATA ON DATABASE <YOUR_SCRATCH_DATABASE> TO `<looker>@<your.databricks.com>`

Creazione della connessione Looker al tuo database

Nella sezione Admin (Amministrazione) di Looker, seleziona Connections (Connessioni) e quindi fai clic su Add Connection (Aggiungi connessione).

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. Di seguito sono descritte alcune delle impostazioni:

  • Nome: specifica il nome della connessione. In questo modo farai riferimento alla connessione nei progetti LookML.
  • Dialetto: specifica il dialetto Databricks.
  • Host: specifica l'URL dello spazio di lavoro Databricks. Ad esempio, dbc-xxxxxxxx.cloud.databricks.com/.
  • Porta: specifica la porta del database. Il valore predefinito è 443.
  • Database: specifica il nome del database da utilizzare per le query di Looker. Il valore predefinito è default.
  • Catalogo: per i database Databricks con Unity Catalog abilitato, specifica il nome del catalogo da utilizzare per le query di Looker. Se non specifichi un catalogo, Looker accederà agli schemi solo dal catalogo predefinito. Per ulteriori informazioni, consulta la funzionalità di Looker con Databricks Unity Catalog.
  • Autenticazione: seleziona Account database o OAuth:
    • Utilizza Account di database per specificare un token di accesso personale di Databricks che verrà utilizzato per la connessione a Looker (per istruzioni, consulta la sezione Creare un utente Looker).
      • In Nome utente, inserisci il valore token (non inserire l'indirizzo email dell'utente Databricks in questo campo).
      • Per Password, inserisci il token di accesso personale di Databricks.
    • Utilizza OAuth per configurare OAuth per la connessione. Per ulteriori informazioni, consulta la sezione Configurare OAuth per le connessioni Databricks.
  • Abilita le PDT: utilizza questa opzione per abilitare le tabelle derivate permanenti. Quando le PDT sono abilitate, la finestra Connection mostra le impostazioni PDT aggiuntive e la sezione PDT Overrides. Nota: le PDT non sono supportate per le connessioni Databricks che utilizzano OAuth.
  • Database temporaneo: inserisci il database che vuoi utilizzare per archiviare le PDT.
  • Numero massimo di connessioni del generatore di PDT: specifica il numero di possibili build di PDT simultanee su questa connessione. L'impostazione di un valore troppo alto potrebbe influire negativamente sui tempi di query. Per saperne di più, consulta la pagina della documentazione Connessione di Looker al tuo database.
  • Parametri JDBC aggiuntivi: aggiungi eventuali parametri JDBC di Spark.

  • Pianificazione della manutenzione di PDT e gruppi di dati: un'espressione cron che indica quando Looker deve controllare i gruppi di dati e le tabelle derivate permanenti. Per saperne di più su questa impostazione, consulta la documentazione Pianificazione della manutenzione di PDT e gruppi di dati.

  • SSL: seleziona questa opzione per utilizzare le connessioni SSL.

  • Verifica SSL: seleziona questa opzione per applicare la verifica del certificato SSL rigorosa.

  • Connessioni massime per nodo: inizialmente puoi lasciare questa impostazione sul valore predefinito. Per saperne di più su questa impostazione, consulta la sezione Numero massimo di connessioni per nodo della pagina della documentazione Collegamento di Looker al tuo database.

  • Timeout del pool di connessioni: inizialmente puoi lasciare invariato il valore predefinito. Scopri di più su questa impostazione nella sezione Timeout del pool di connessioni della pagina della documentazione Connessione di Looker al database.

  • SQL Runner Precache: deseleziona questa casella di controllo per fare in modo che SQL Runner non precarichi le informazioni della tabella e le carichi solo quando ne è selezionata una. Per saperne di più su questa impostazione, consulta la sezione SQL Runner Precache della pagina della documentazione Connessione di Looker al database.

  • Fuso orario del database: specifica il fuso orario da utilizzare nel database. Lascia vuoto questo campo se non vuoi la conversione del fuso orario. Per ulteriori informazioni, consulta la pagina della documentazione Utilizzo delle impostazioni del fuso orario.

Fai clic su Test per verificare la connessione e assicurarti che sia configurata correttamente. Se vedi Può connettersi, premi Connetti. Verranno eseguiti gli altri test di connessione per verificare che l'account di servizio sia stato configurato correttamente e con i ruoli appropriati. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione relativa al test della connettività del database.

Funzionalità di Looker con il catalogo Unity di Databricks

Looker supporta le connessioni ai database Databricks con Unity Catalog abilitato. Puoi specificare il nome del catalogo nel campo Catalogo della finestra Connessione di Looker quando crei una connessione di Looker al tuo database o quando modifichi una connessione di Looker esistente a un database Databricks.

Se il tuo database Databricks è abilitato per Unity Catalog, puoi specificare un catalogo Databricks nel campo Catalogo della connessione Looker. Quando specifichi un catalogo Databricks, Looker lo utilizza nei seguenti scenari:

  • Quando generi un nuovo progetto LookML dal tuo database, Looker crea i file di progetto in base alle tabelle del catalogo configurato della connessione.
  • Per i progetti esistenti, quando utilizzi l'IDE di Looker per creare una vista da una tabella, Looker creerà i file di visualizzazione solo dalle tabelle del catalogo configurato della connessione.
  • Quando utilizzi SQL Runner, puoi selezionare solo gli schemi dal catalogo configurato della connessione.

Se il database Databricks è abilitato per Unity Catalog e la connessione di Looker non ha un valore nel campo Catalog, la maggior parte delle funzionalità di Looker accederà agli schemi solo dal catalogo predefinito, ad esempio nei seguenti scenari:

  • Quando generi un nuovo progetto LookML dal tuo database, Looker crea i file di progetto in base alle tabelle del catalogo predefinito di Unity Catalog.
  • Per i progetti esistenti, quando utilizzi l'IDE di Looker per creare una visualizzazione da una tabella, Looker può creare file di visualizzazione solo dalle tabelle del catalogo predefinito di Unity Catalog.
  • Quando utilizzi SQL Runner, puoi selezionare solo gli schemi dal catalogo predefinito del catalogo Unity.

Configurazione di OAuth per le connessioni Databricks

Looker supporta OAuth per le connessioni Databricks, il che significa che ogni utente Looker esegue l'autenticazione nel database e autorizza Looker a eseguire query sul database con l'account utente OAuth dell'utente.

OAuth consente agli amministratori del database di eseguire le seguenti attività:

  • Controlla quali utenti di Looker eseguono query sul database
  • Applicare controlli dell'accesso basati sui ruoli utilizzando le autorizzazioni a livello di database
  • Utilizza i token OAuth per tutte le procedure e le azioni che accedono al database, anziché incorporare ID e password del database in più posizioni
  • Revocare l'autorizzazione per un determinato utente direttamente tramite il database

Con le connessioni Databricks che utilizzano OAuth, gli utenti devono accedere di nuovo periodicamente quando i token OAuth scadono.

Tieni presente quanto segue per le connessioni OAuth a livello di database:

  • Se un utente lascia scadere il token OAuth, tutte le pianificazioni o gli avvisi di Looker di sua proprietà saranno interessati. Per evitare questo problema, Looker invia un'email di notifica al proprietario di ogni pianificazione e ogni avviso prima della scadenza del token OAuth attualmente attivo. Looker invierà queste notifiche via email 14 giorni, 7 giorni e 1 giorno prima della scadenza del token. L'utente può accedere alla propria pagina utente di Looker per autorizzare nuovamente Looker nel database ed evitare interruzioni delle pianificazioni e degli avvisi. Per maggiori dettagli, consulta la pagina della documentazione Personalizzazione delle impostazioni dell'account utente.
  • Poiché le connessioni al database che utilizzano OAuth sono "per utente", anche i criteri di memorizzazione nella cache sono per utente e non solo per query. Ciò significa che, invece di utilizzare i risultati memorizzati nella cache ogni volta che la stessa query viene eseguita nel periodo di memorizzazione nella cache, Looker utilizzerà i risultati memorizzati nella cache solo se lo stesso utente ha eseguito la stessa query nel periodo di memorizzazione nella cache. Per ulteriori informazioni sulla memorizzazione nella cache, consulta la pagina della documentazione sulle query nella cache.
  • Le tabelle derivate permanenti (PDT) non sono supportate per le connessioni Databricks con OAuth.
  • Quando un amministratore di Looker esegue sudo come un altro utente, utilizza il token di accesso OAuth dell'utente. Se il token di accesso dell'utente è scaduto, l'amministratore non può creare un nuovo token per conto dell'utente con accesso sudo. Per informazioni sull'utilizzo del comando sudo, consulta la pagina della documentazione Utenti.
  • Quando un utente accede a Databricks da Looker utilizzando OAuth, Looker non mostra una finestra di dialogo esplicita per il consenso dell'utente. Configurando OAuth con Looker, acconsenti implicitamente all'accesso della tua istanza Looker al tuo database Databricks.
  • Per utilizzare OAuth per una connessione Databricks, devi disporre di utenti o principali di servizio Databricks che possono essere utilizzati per le query di Looker e devi fornire agli utenti e ai principali di servizio le autorizzazioni Databricks di cui Looker avrà bisogno per accedere alle origini dati ed eseguire le azioni richieste in Databricks.

Per creare una connessione Databricks a Looker utilizzando OAuth, devi eseguire questi passaggi generali, descritti nelle sezioni seguenti:

  1. Attivare un'applicazione OAuth personalizzata in Databricks
  2. Configurare la connessione in Looker

Attivazione di un'applicazione OAuth personalizzata in Databricks

Per utilizzare OAuth per una connessione Looker a Databricks, devi abilitare Looker come applicazione OAuth personalizzata per il tuo database Databricks seguendo questi passaggi:

  1. Accedi alla console dell'account Databricks.
  2. Fai clic sull'icona Impostazioni nel riquadro laterale.
  3. Fai clic sulla scheda Connessioni app nella finestra Impostazioni.
  4. Nella scheda Connessioni app, fai clic su Aggiungi connessione.
  5. Inserisci i seguenti valori nella finestra di dialogo Aggiungi connessione di Databricks:

    • Nome applicazione: fornisci un nome descrittivo, ad esempio "Integrazione Looker".
    • URL di reindirizzamento: inserisci l'URL di Looker a cui Databricks reindirizzerà gli utenti dopo l'autorizzazione, utilizzando questo formato (sostituisci example.looker.com con l'URL dell'istanza di Looker):

      https://example.looker.com/external_oauth/redirect
      
    • Ampi di accesso: seleziona SQL per consentire a Looker di eseguire query sui dati tramite SQL.

    • Genera un client secret: attiva questa opzione.

  6. Fai clic su Aggiungi nella finestra di dialogo Aggiungi connessione di Databricks.

  7. Copia e memorizza in modo sicuro l'ID client e il client secret generati da Databricks.

La registrazione di un'applicazione OAuth può richiedere fino a 30 minuti per l'elaborazione nel database Databricks. Per saperne di più, consulta la documentazione ufficiale di Databricks.

Configurare la connessione in Looker

Dopo aver configurato Looker come applicazione OAuth personalizzata nel database Databricks, puoi configurare una connessione Looker a Databricks che utilizza OAuth.

  1. Nella sezione Admin (Amministrazione) di Looker, seleziona Connections (Connessioni) e quindi fai clic su Add Connection (Aggiungi connessione).
  2. Compila i dettagli della connessione, come descritto nella sezione Creazione della connessione Looker al tuo database di questa pagina.
  3. Seleziona l'opzione OAuth nel campo Autenticazione.
  4. Quando selezioni l'opzione OAuth, Looker visualizza i campi ID client OAuth e Client secret OAuth. Per questi valori, inserisci l'ID client e il client secret generati da Databricks quando hai attivato Looker come applicazione OAuth personalizzata in Databricks.
  5. Seleziona il pulsante Test (Test) nella parte inferiore della pagina Connections Settings (Impostazioni delle connessioni) per assicurarti che Looker possa stabilire correttamente il flusso OAuth e connettersi alla tua istanza Databricks.

Funzionalità supportate

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

Databricks 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
Viste stabili
Interruzioni delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
No
Processi SQL Runner Show
No
Tabella di descrizione di SQL Runner
SQL Runner Mostra indici
No
Selezione SQL Runner 10
Conteggio di SQL Runner
SQL Explain
Credenziali OAuth
Commenti contestuali
Pool di connessioni
No
Schizzi HLL
No
Consapevolezza aggregata
PDT incrementali
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimativo valori distinti
No