Apache Hive

Questa pagina contiene informazioni sulla connessione di Looker ad Apache Hive 2.3 e versioni successive e ad 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 a 3.1.2. Questo è dovuto a un problema di analisi delle query delle versioni Hive 2.4.0 - 3.1.2 che ha comportato tempi di analisi estremamente lunghi per l'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

È 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.

Introduzione

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

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

Looker è uno strumento di query interattiva, quindi si aspetta di funzionare con un motore SQL interattivo. Se Hive è in esecuzione su MapReduce (hive.execution.engine è impostato su mr), restituirà i risultati delle query troppo lentamente per essere pratico.

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

Tabelle derivate permanenti (PDT)

Per attivare le tabelle derivate permanenti (PDT) in Looker utilizzando una connessione Hive, crea uno schema scratch 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 connettersi a Hive (che può essere anonimo se non viene utilizzata l'autenticazione) deve avere le seguenti autorizzazioni nello schema scratch:

  • Creare tabelle
  • Modificare le tabelle
  • Eliminare tabelle

Testa questa operazione 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 di connessione:

?tez.queue.name=the_bi_queue

In questo modo è possibile impostare altri parametri Hive nel campo Parametri JDBC aggiuntivi della pagina Impostazioni connessione.

Utilizzando gli attributi utente, è possibile che le query di utenti diversi o di gruppi di utenti diversi vengano inserite in code diverse. A questo scopo, crea un attributo utente denominato ad esempio queue_name, quindi aggiungi quanto segue nel campo Parametri JDBC aggiuntivi:

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

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

Creazione della connessione di Looker al database

Per creare la connessione da Looker al database:

  1. Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
  2. Seleziona Apache Hive 2.3 e versioni successive o Apache Hive 3.1.2 e versioni successive dal menu a discesa Dialetto.

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

    • Name (Nome): specifica il nome della connessione. In questo modo 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 dell'utente del database.
    • Abilita PDT: utilizza questo pulsante di attivazione/disattivazione per abilitare le tabelle derivate permanenti. Quando le PDT sono attivate, la finestra Connessione mostra ulteriori impostazioni PDT e la sezione Override PDT.
    • Database temporaneo: specifica il nome dello schema scratch creato nella sezione Tabelle derivate permanenti (PDT) di questa pagina della documentazione.
    • Numero massimo di connessioni del generatore di PDT: specifica il numero di possibili build di PDT concorrenti su questa connessione. L'impostazione di un valore troppo alto potrebbe influire negativamente sui tempi di query. Per ulteriori informazioni, consulta la pagina di documentazione Connessione di Looker al database.
    • Parametri JDBC aggiuntivi: specifica eventuali parametri di stringa JDBC aggiuntivi.
    • Pianificazione della manutenzione di PDT e gruppi di dati: 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 di PDT e gruppi di dati.
    • SSL: seleziona questa opzione per utilizzare le connessioni SSL.
    • Verifica SSL: controlla la verifica del nome host.
    • Connessioni massime per nodo: inizialmente, questa impostazione può essere lasciata sul valore predefinito. Per ulteriori informazioni, consulta la pagina della documentazione Connessione di Looker al tuo database.
    • Timeout del pool di connessioni: inizialmente, questa impostazione può essere lasciata al valore predefinito. Scopri di più su questa impostazione nella sezione Timeout pool di connessioni della pagina della documentazione Connessione di Looker al database.
    • Pre-memorizzazione nella cache di SQL Runner: per impedire a SQL Runner di precaricare le informazioni sulle tabelle e di caricarle solo quando una tabella è selezionata, deseleziona questa opzione. Scopri di più su questa impostazione nella sezione Precache SQL Runner della pagina della documentazione Connessione di Looker al database.
    • Fuso orario del 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 dedicata all'utilizzo delle impostazioni relative al fuso orario.
  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 Testare la connettività del database.

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

Funzionalità supportate

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

Apache Hive 2.3 e versioni successive

Apache Hive 2.3 e versioni successive supportano le seguenti funzionalità a partire da Looker 24.20:

Funzionalità 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
Interruzioni 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 di SQL Runner
No
Tabella Describe di SQL Runner
Indici di SQL Runner Show
SQL Runner Select 10
Conteggio di SQL Runner
SQL Explain
Credenziali OAuth
No
Commenti contestuali
Pool di connessioni
No
Schizzi HLL
No
Aggregate Awareness
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimativo valori distinti
No

Apache Hive 3.1.2 e versioni successive

Apache Hive 3.1.2 e versioni successive supportano le seguenti funzionalità a partire da Looker 24.20:

Funzionalità Supportato?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
No
Tabelle derivate
Tabelle derivate SQL permanenti
Tabelle derivate native permanenti
Visualizzazioni stabili
Interruzioni 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 di SQL Runner
No
Tabella Describe di SQL Runner
Indici di SQL Runner Show
No
SQL Runner Select 10
Conteggio di SQL Runner
SQL Explain
Credenziali OAuth
No
Commenti contestuali
Pool di connessioni
No
Schizzi HLL
No
Aggregate Awareness
PDT incrementali
No
Millisecondi
Microsecondi
Viste materializzate
No
Conteggio approssimativo valori distinti
No

Passaggi successivi

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