Apache Hive

Questa pagina contiene informazioni sulla connessione di Looker ad Apache Hive 2.3 e versioni successive e Apache Hive 3.1.2 e versioni successive.

Tieni presente quanto segue sul supporto di Looker per le diverse versioni di Apache Hive:

  • Looker supporta le connessioni ad Apache Hive 2.3 e versioni successive e ad Apache Hive 3.1.2 e versioni successive.
  • Per Apache Hive 3.1.2 e versioni successive, Looker può integrarsi completamente con i database Apache Hive 3 solo nelle versioni successive alla 3.1.2. Questo è dovuto a un problema di analisi delle query nelle versioni di Hive 2.4.0-3.1.2 che ha comportato tempi di analisi estremamente lunghi per il codice SQL generato da Looker.
  • Looker non supporta le connessioni ad Apache Hive 2. Le query sulle connessioni ad Apache Hive 2 restituiranno un errore.

Crittografia del traffico di rete

Una delle best practice consiste nel criptare il traffico di rete tra l'applicazione Looker e il tuo database. Valuta una delle opzioni descritte nella pagina della documentazione Abilitazione dell'accesso sicuro al database.

Introduzione

Looker è progettato per connettersi a un server di database tramite JDBC. Nel caso di Hive, si tratta del server usato (HiveServer2). Per ulteriori informazioni, consulta la documentazione di Apache.

Per impostazione predefinita, questo server rimane in ascolto sulla porta 10000.

Looker è uno strumento di query interattivo, per cui prevede di utilizzare un motore SQL interattivo. Se Hive è in esecuzione su MapReduce (il criterio hive.execution.engine è impostato su mr), Hive restituirà i risultati della query troppo lentamente per essere pratici.

Looker è stato testato con Hive su Tez (hive.execution.engine=tez), sebbene sia anche possibile eseguirlo su Hive su Spark. Il supporto Spark è stato aggiunto in Hive versione 1.1. (Looker supporta Hive 1.2.1 e versioni successive).

Tabelle derivate permanenti (PDT)

Per abilitare le tabelle derivate permanenti (PDT) in Looker mediante una connessione Hive, crea uno schema temporaneo da utilizzare per Looker. Di seguito è riportato un esempio di comando che puoi utilizzare per creare uno schema looker_scratch:

 CREATE SCHEMA looker_scratch;

L'account utente utilizzato da Looker per la connessione a Hive (che può essere anonimo se non viene utilizzata l'autenticazione) deve avere le seguenti funzionalità nello schema temporaneo:

  • Creare tabelle
  • Modifica tabelle
  • Elimina tabelle

Esegui un test con un client JDBC prima di tentare di creare PDT con Hive.

Code

Se vuoi che le query di Looker vengano inserite in una coda specifica, inserisci il parametro del nome della coda nel campo Parametri JDBC aggiuntivi della pagina Impostazioni connessione:

?tez.queue.name=the_bi_queue

Gli altri parametri Hive possono essere impostati in questo modo nel campo Parametri JDBC aggiuntivi della pagina Impostazioni di connessione.

Utilizzando gli attributi utente, è possibile che le query provenienti da utenti diversi o da gruppi di utenti differenti vengano inserite in code diverse. A questo scopo, crea un attributo utente con un nome simile a queue_name e poi, nel campo Parametri JDBC aggiuntivi, aggiungi quanto segue:

?tez.queue.name={{ _user_attributes['queue_name'] }}

Puoi utilizzarlo per personalizzare anche altri parametri hive-site.xml in base al singolo utente o al gruppo.

Creazione della connessione Looker al tuo database

Per creare la connessione da Looker al tuo database:

  1. Nella sezione Admin (Amministrazione) di Looker, seleziona Connections (Connessioni) e fai clic su Add Connection (Aggiungi connessione).
  2. Seleziona Apache Hive 2.3+ o Apache Hive 3.1.2+ dal menu a discesa Dialect.

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

    • Nome: specifica il nome della connessione. Ecco come farai riferimento alla connessione nei progetti LookML.
    • Host: specifica il nome host.
    • Porta: specifica la porta del database.
    • Database: specifica il nome del database.
    • Nome utente: specifica il nome utente del database.
    • Password: specifica la password utente del database.
    • Abilita PDT: utilizza questo pulsante di attivazione/disattivazione per abilitare le tabelle derivate permanenti. Quando le PDT sono abilitate, la finestra Connessione mostra le impostazioni PDT aggiuntive e la sezione Override PDT.
    • Database temporaneo: specifica il nome dello schema temporaneo creato nella sezione Tabelle derivate permanenti (PDT) di questa pagina della documentazione.
    • Numero massimo di connessioni del builder di PDT: specifica il numero di possibili build di PDT simultanee su questa connessione. L'impostazione di questo 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: specifica eventuali parametri di stringa JDBC aggiuntivi.
    • Pianificazione della manutenzione di gruppi di dati e PDT: specifica un'espressione cron che indichi quando Looker deve controllare i gruppi di dati e le tabelle derivate permanenti. Documentazione relativa alla pianificazione della manutenzione per gruppi di dati e PDT.
    • SSL: seleziona questa opzione per utilizzare le connessioni SSL.
    • Verifica SSL: controlla la verifica del nome host.
    • Numero massimo di connessioni per nodo: questa impostazione può essere lasciata inizialmente sul valore predefinito. Per saperne di più, consulta la pagina della documentazione Connessione di Looker al tuo database.
    • Timeout pool di connessioni: inizialmente puoi lasciare questa impostazione sul valore predefinito. Scopri di più su questa impostazione nella sezione Timeout del pool di connessioni nella pagina della documentazione Connessione di Looker al database.
    • Pre-cache di SQL Runner: deseleziona questa opzione per impedire a SQL Runner di precaricare le informazioni sulle tabelle e di caricarle solo quando è selezionata una tabella. Scopri di più su questa impostazione nella sezione Precache di SQL Runner della pagina della documentazione Connessione di Looker al tuo database.
    • Fuso orario database: specifica il fuso orario utilizzato nel database. Lascia vuoto questo campo se non vuoi la conversione del fuso orario. Per ulteriori informazioni, consulta la pagina della documentazione relativa all'utilizzo delle impostazioni del fuso orario.
  4. Per verificare che la connessione venga stabilita, fai clic su Prova. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione relativa ai test di connettività dei database.

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

Supporto delle funzionalità

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

Apache Hive 2.3 e versioni successive

Apache Hive 2.3 e versioni successive supporta le seguenti funzionalità a partire da Looker 24.8:

Selezione delle Supportato?
Livello di assistenza
Integrazione
Looker (Google Cloud core)
No
Aggregati simmetrici
No
Tabelle derivate
Tabelle derivate SQL permanenti
Tabelle derivate native permanenti
Visualizzazioni stabili
Eliminazione delle query
Pivot basati su SQL
No
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
No
Processi di visualizzazione SQL Runner
No
Descrivi tabella SQL Runner
Indici di visualizzazione SQL Runner
SQL Runner Select 10
Conteggio esecutori SQL
Spiegazione SQL
Credenziali OAuth
No
Commenti contestuali
Pooling di connessioni
No
Schizzi HLL
No
Awareness aggregato
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimativo distinto
No

Apache Hive 3.1.2 o versioni successive

Apache Hive 3.1.2 e versioni successive supporta le seguenti funzionalità a partire da Looker 24.8:

Selezione delle Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
No
Tabelle derivate
Tabelle derivate SQL permanenti
Tabelle derivate native permanenti
Visualizzazioni stabili
Eliminazione delle query
Pivot basati su SQL
No
Fusi orari
SSL
Subtotali
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
No
Processi di visualizzazione SQL Runner
No
Descrivi tabella SQL Runner
Indici di visualizzazione SQL Runner
No
SQL Runner Select 10
Conteggio esecutori SQL
Spiegazione SQL
Credenziali OAuth
No
Commenti contestuali
Pooling di connessioni
No
Schizzi HLL
No
Awareness aggregato
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimativo distinto
No

Passaggi successivi

Dopo aver connesso il database a Looker, configura le opzioni di accesso per gli utenti.