Databricks

Criptare il traffico di rete

È una best practice criptare il traffico di rete tra l'applicazione Looker e il tuo database. Valuta una delle opzioni descritte nella pagina della documentazione Abilita l'accesso sicuro ai database.

Creare un utente Looker

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

Aggiungi le autorizzazioni a questo utente con GRANT.

Come minimo, l'utente Looker deve disporre 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 cluster Databricks. In questa pagina verrà indicato come <YOUR_HTTP_PATH>.

Configurare le tabelle derivate permanenti

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

CREATE DATABASE <YOUR_SCRATCH_DATABASE>

Per questa operazione è necessario concedere ulteriori autorizzazioni utente basate sulla 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>`

Creare la connessione Looker al database

Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.

Compila i dettagli della connessione. La maggior parte delle impostazioni è comune alla maggioranza dei dialetti di 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. Questo è il modo in cui farai riferimento alla connessione nei progetti LookML.
  • Dialetto: specifica il dialetto Databricks.
  • Host: specifica l'URL del workspace Databricks. Ad esempio, dbc-yyyyyyyy.cloud.databricks.com/.
  • Porta: specifica la porta del database. Il valore predefinito è 443.
  • Database: specifica il nome del database da utilizzare per le query Looker. Il valore predefinito è default.
  • Catalogo: per i database Databricks con Unity Catalog abilitato, specifica il nome del catalogo da utilizzare per le query Looker. Se non specifichi un catalogo, Looker accederà solo agli schemi del catalogo predefinito. Per saperne di più, consulta Funzionalità di Looker con Databricks Unity Catalog.
  • Autenticazione: seleziona Account database o OAuth:
    • Utilizza Account database per specificare un token di accesso personale Databricks che verrà utilizzato per connetterti 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).
      • In Password, inserisci il token di accesso personale Databricks.
    • Utilizza OAuth per configurare OAuth per la connessione. Per saperne di più, consulta la sezione Configurare OAuth per le connessioni Databricks.
  • Abilita PDT: utilizza questo pulsante di attivazione/disattivazione per abilitare le tabelle derivate permanenti. Quando le PDT sono abilitate, la finestra Connessione mostra impostazioni PDT aggiuntive e la sezione Override PDT. 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 builder di PDT: specifica il numero di possibili creazioni di PDT simultanee su questa connessione. Se imposti un valore troppo alto, i tempi di query potrebbero risentirne negativamente. Per saperne di più, consulta la pagina della documentazione Connessione di Looker al tuo database.
  • Parametri JDBC aggiuntivi: aggiungi eventuali parametri JDBC Spark aggiuntivi.

  • Pianificazione della manutenzione: un'espressione cron che indica quando Looker deve controllare i gruppi di dati e le tabelle derivate permanenti. Scopri di più su questa impostazione nella documentazione relativa alla pianificazione della manutenzione.

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

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

  • Numero massimo di connessioni per nodo: inizialmente puoi lasciare questa impostazione al valore predefinito. Scopri di più su questa impostazione nella sezione Numero massimo di connessioni per nodo della pagina della documentazione Connessione di Looker al tuo database.

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

  • Pre-cache SQL Runner: per impedire a SQL Runner di precaricare le informazioni sulle tabelle e di caricare le informazioni sulle tabelle solo quando viene selezionata una tabella, deseleziona questa casella di controllo. Scopri di più su questa impostazione nella sezione Pre-cache SQL Runner della pagina della documentazione Connessione di Looker al tuo database.

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

Fai clic su Test per testare la connessione e assicurarti che sia configurata correttamente. Se vedi È possibile connettersi, premi Connetti. Vengono eseguiti gli altri test di connessione per verificare che il account di servizio sia stato configurato correttamente e con i ruoli appropriati. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione Testare la connettività del database.

Funzionalità di Looker con Databricks Unity Catalog

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 Looker al tuo database o quando modifichi una connessione 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 visualizzazione da una tabella, Looker crea file di visualizzazione solo dalle tabelle del catalogo configurato della connessione.
  • Quando utilizzi SQL Runner, puoi selezionare solo gli schemi del catalogo configurato della connessione.

Se il tuo database Databricks è abilitato per Unity Catalog e la connessione Looker non ha un valore nel campo Catalogo, la maggior parte delle funzionalità di Looker accederà solo agli schemi del 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 del catalogo predefinito di Unity Catalog.

Configurare 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 il proprio account utente OAuth.

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

  • Controllare quali utenti Looker eseguono query sul database
  • Applicare i controlli dell'accesso basati sui ruoli utilizzando le autorizzazioni a livello di database
  • Utilizzare i token OAuth per tutti i processi 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 alla scadenza dei token OAuth.

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

  • Se un utente lascia scadere il token OAuth, verranno interessate tutte le pianificazioni o gli avvisi di Looker di proprietà dell'utente. Per evitare questo problema, Looker invierà un'email di notifica al proprietario di ogni pianificazione e di ogni avviso prima della scadenza del token OAuth attivo corrente. Looker invierà queste email di notifica 14 giorni, 7 giorni e 1 giorno prima della scadenza del token. L'utente può andare alla pagina utente di Looker per autorizzare di nuovo Looker al database ed evitare interruzioni alle pianificazioni e agli avvisi. Per maggiori dettagli, consulta la pagina della documentazione Personalizzare le impostazioni dell'account utente.
  • Poiché le connessioni al database che utilizzano OAuth sono "per utente", anche le norme di memorizzazione nella cache sono per utente e non solo per query. Ciò significa che, anziché utilizzare i risultati memorizzati nella cache ogni volta che viene eseguita la stessa query 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 Memorizzare nella cache le query.
  • 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, l'amministratore utilizzerà 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 sudoed. 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 visualizza una finestra di dialogo per il consenso esplicito dell'utente. Configurando OAuth con Looker, acconsenti implicitamente all'accesso della tua istanza di Looker al tuo database Databricks.
  • Per utilizzare OAuth per una connessione Databricks, devi disporre di utenti o entità servizio Databricks che possono essere utilizzati per le query Looker e devi fornire agli utenti e alle entità 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 seguire questi passaggi generali, descritti in dettaglio nelle sezioni seguenti:

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

Abilitare 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: inserisci 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 della tua istanza di Looker):

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

    • Genera un client secret: abilita questa opzione.

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

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

La registrazione di un'applicazione OAuth potrebbe 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 Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
  2. Compila i dettagli della connessione, come descritto nella sezione Creare la connessione Looker al 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 abilitato Looker come applicazione OAuth personalizzata in Databricks.
  5. Seleziona il pulsante Test nella parte inferiore della pagina Impostazioni connessioni per assicurarti che Looker possa stabilire correttamente il flusso OAuth e connettersi alla tua istanza Databricks.

Funzionalità supportate

Affinché Looker supporti alcune funzionalità, anche il dialetto del database deve supportarle.

A partire da Looker 25.18, Databricks supporta le seguenti funzionalità:

Funzionalità Supportata?
Livello di assistenza
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate permanenti basate su SQL
Tabelle derivate permanenti native
Visualizzazioni stabili
Interruzione delle query
Tabelle pivot basate su SQL
Fusi orari
SSL
Subtotali
Parametri JDBC aggiuntivi
Maiuscole/minuscole
Tipo di località
Tipo di elenco
Percentile
Percentile valori distinti
SQL Runner Mostra processi
SQL Runner Descrivi tabella
SQL Runner Mostra indici
SQL Runner Seleziona 10
SQL Runner Count
Spiega SQL
Credenziali OAuth 2.0
Commenti di contesto
Pool di connessioni
Schizzi HLL
Riconoscimento degli aggregati
PDT incrementali
Millisecondi
Microsecondi
Visualizzazioni materializzate
Misure in base al periodo
Conteggio approssimato valori distinti