Apache Hive

Diese Seite enthält Informationen zum Verbinden von Looker mit Apache Hive 2.3 und höher sowie Apache Hive 3.1.2 und höher.

Beachten Sie Folgendes zum Looker-Support für die verschiedenen Versionen von Apache Hive:

  • Looker unterstützt Verbindungen zu Apache Hive 2.3 und höher sowie zu Apache Hive 3.1.2 und höher.
  • Bei Apache Hive 3.1.2 und höher kann Looker nur mit Apache Hive 3-Datenbanken ab Version 3.1.2 vollständig integriert werden. Das liegt an einem Problem beim Parsen von Abfragen in den Hive-Versionen 2.4.0 bis 3.1.2, das zu extrem langen Parsezeiten für von Looker generierte SQL-Abfragen führte.
  • Looker unterstützt keine Verbindungen zu Apache Hive 2. Abfragen zu Verbindungen mit Apache Hive 2 schlagen fehl.

Netzwerkverkehr verschlüsseln

Es wird empfohlen, den Netzwerkverkehr zwischen der Looker-Anwendung und Ihrer Datenbank zu verschlüsseln. Prüfen Sie eine der Optionen, die auf der Dokumentationsseite Sicheren Datenbankzugriff ermöglichen beschrieben werden.

Einführung

Looker ist so konzipiert, dass eine Verbindung zu einem Datenbankserver über JDBC hergestellt werden kann. Bei Hive ist dies der Thrift-Server (HiveServer2). Weitere Informationen finden Sie in der Apache-Dokumentation.

Standardmäßig überwacht dieser Server Port 10000.

Looker ist ein interaktives Abfragetool und sollte daher mit einer interaktiven SQL-Engine funktionieren. Wenn Hive mit MapReduce ausgeführt wird (hive.execution.engine ist auf mr festgelegt), gibt Hive Abfrageergebnisse zu langsam zurück, um praktisch zu sein.

Looker wurde mit Hive on Tez (hive.execution.engine=tez) getestet. Es ist aber auch möglich, Looker mit Hive on Spark auszuführen. Die Spark-Unterstützung wurde in Hive-Version 1.1 hinzugefügt. Looker unterstützt Hive 1.2.1 und höher.

Persistente abgeleitete Tabellen (PDTs)

Wenn Sie persistente abgeleitete Tabellen (PDTs) in Looker über eine Hive-Verbindung aktivieren möchten, erstellen Sie ein temporäres Schema für Looker. Im Folgenden sehen Sie ein Beispiel für einen Befehl zum Erstellen eines looker_scratch-Schemas:

 CREATE SCHEMA looker_scratch;

Das Nutzerkonto, das Looker zum Herstellen einer Verbindung zu Hive verwendet (kann anonym sein, wenn keine Authentifizierung verwendet wird), muss im Scratch-Schema die folgenden Berechtigungen haben:

  • Tabellen erstellen
  • Tabellen ändern
  • Tabellen löschen

Testen Sie dies mit einem JDBC-Client, bevor Sie versuchen, PDTs mit Hive zu erstellen.

Warteschlangen

Wenn Abfragen aus Looker in eine bestimmte Warteschlange eingeordnet werden sollen, geben Sie den Parameter „Name der Warteschlange“ auf der Seite Verbindungseinstellungen in das Feld Zusätzliche JDBC-Parameter ein:

?tez.queue.name=the_bi_queue

Andere Hive-Parameter können auf diese Weise im Feld Zusätzliche JDBC-Parameter auf der Seite Verbindungseinstellungen festgelegt werden.

Mithilfe von Nutzerattributen können Anfragen von verschiedenen Nutzern oder Nutzergruppen in verschiedene Warteschlangen gestellt werden. Erstellen Sie dazu ein Nutzerattribut mit dem Namen queue_name und fügen Sie dann im Feld Zusätzliche JDBC-Parameter Folgendes hinzu:

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

So können Sie auch andere hive-site.xml-Parameter pro Nutzer oder pro Gruppe anpassen.

Looker-Verbindung zu Ihrer Datenbank erstellen

So erstellen Sie die Verbindung von Looker zu Ihrer Datenbank:

  1. Wählen Sie in Looker im Bereich Verwaltung die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.
  2. Wählen Sie im Drop-down-Menü Dialekt die Option Apache Hive 2.3 oder höher oder Apache Hive 3.1.2 oder höher aus.

  3. Geben Sie die Verbindungsdetails ein. Der Großteil der Einstellungen gilt für die meisten Datenbankdialekte. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden. Einige der Einstellungen werden im Folgenden beschrieben:

    • Name: Geben Sie den Namen der Verbindung an. So wird in LookML-Projekten auf die Verbindung verwiesen.
    • Host: Geben Sie den Hostnamen an.
    • Port: Geben Sie den Datenbankport an.
    • Datenbank: Geben Sie den Datenbanknamen an.
    • Nutzername: Geben Sie den Datenbanknutzernamen an.
    • Passwort: Geben Sie das Passwort des Datenbanknutzers an.
    • PDTs aktivieren: Mit dieser Ein/Aus-Schaltfläche können Sie persistente abgeleitete Tabellen aktivieren. Wenn PDTs aktiviert sind, werden im Fenster Verbindung zusätzliche PDT-Einstellungen und der Bereich PDT-Überschreibungen angezeigt.
    • Temporäre Datenbank: Geben Sie den Namen des Scratch-Schemas an, das im Abschnitt Persistente abgeleitete Tabellen (PDTs) dieser Dokumentationsseite erstellt wurde.
    • Maximale Anzahl von PAT-Builder-Verbindungen: Geben Sie die Anzahl der möglichen gleichzeitigen PDT-Builds für diese Verbindung an. Wenn Sie diesen Wert zu hoch festlegen, kann sich das negativ auf die Abfragezeiten auswirken. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
    • Zusätzliche JDBC-Parameter: Geben Sie alle zusätzlichen JDBC-Stringparameter an.
    • Wartungszeitplan für Datengruppe und PAT: Geben Sie einen cron-Ausdruck an, der angibt, wann Looker Datengruppen und persistente abgeleitete Tabellen prüfen soll. Wartungszeitplan für Datengruppe und PAT
    • SSL: Aktivieren Sie SSL-Verbindungen.
    • SSL überprüfen: Prüfen, ob die Hostnamenüberprüfung erfolgt.
    • Maximale Verbindungen pro Knoten: Diese Einstellung kann anfangs auf dem Standardwert belassen werden. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
    • Zeitlimit für den Verbindungspool: Diese Einstellung kann anfangs auf dem Standardwert belassen werden. Weitere Informationen zu dieser Einstellung finden Sie auf der Seite Looker mit Ihrer Datenbank verbinden im Abschnitt Zeitüberschreitung für Verbindungspool.
    • SQL-Runner-Precache: Deaktivieren Sie diese Option, damit SQL Runner Tabelleninformationen nicht vorab lädt, sondern nur bei Auswahl einer Tabelle. Weitere Informationen zu dieser Einstellung finden Sie auf der Seite Looker mit Ihrer Datenbank verbinden im Abschnitt SQL Runner Precache.
    • Datenbankzeitzone: Geben Sie die Zeitzone an, die in der Datenbank verwendet wird. Lassen Sie dieses Feld leer, wenn keine Zeitzonenkonvertierung erfolgen soll. Weitere Informationen finden Sie auf der Dokumentationsseite Zeitzoneneinstellungen verwenden.
  4. Klicken Sie auf Testen, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde. Informationen zur Fehlerbehebung finden Sie auf der Dokumentationsseite Datenbankkonnektivität testen.

  5. Klicken Sie auf Verbinden, um diese Einstellungen zu speichern.

Funktionsunterstützung

Damit Looker einige Funktionen unterstützen kann, müssen diese auch von Ihrem Datenbankdialekt unterstützt werden.

Apache Hive 2.3 und höher

Apache Hive 2.3 und höher unterstützt ab Looker 25.0 die folgenden Funktionen:

Feature Unterstützt?
Supportstufe
Integration
Looker (Google Cloud Core)
Nein
Symmetrische Summen
Nein
Abgeleitete Tabellen
Ja
Persistente SQL-abgeleitete Tabellen
Ja
Nichtflüchtige native abgeleitete Tabellen
Ja
Stabile Ansichten
Ja
Abfrage beenden
Ja
SQL-basierte Pivot-Tabellen
Nein
Zeitzonen
Ja
SSL
Ja
Zwischensummen
Ja
Zusätzliche JDBC-Parameter
Ja
Groß-/Kleinschreibung beachten
Ja
Standorttyp
Ja
Listentyp
Ja
Perzentil
Ja
Perzentil der unterschiedlichen Werte
Nein
SQL Runner-Prozesse anzeigen
Nein
SQL Runner Describe Table
Ja
SQL Runner-Indexe für Serien
Ja
SQL Runner Select 10
Ja
Anzahl der SQL-Runner
Ja
SQL Explain
Ja
OAuth-Anmeldedaten
Nein
Kontextkommentare
Ja
Verbindungs-Pooling
Nein
HLL-Skizzen
Nein
Aggregatfunktion
Ja
Inkrementelle PDTs
Nein
Millisekunden
Ja
Mikrosekunden
Ja
Materialisierte Ansichten
Nein
Ungefähre Anzahl einzelner Aufrufe
Nein

Apache Hive 3.1.2 und höher

Apache Hive 3.1.2 und höher unterstützt ab Looker 25.0 die folgenden Funktionen:

Feature Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Ja
Symmetrische Summen
Nein
Abgeleitete Tabellen
Ja
Persistente SQL-abgeleitete Tabellen
Ja
Nichtflüchtige native abgeleitete Tabellen
Ja
Stabile Ansichten
Ja
Abfrage beenden
Ja
SQL-basierte Pivot-Tabellen
Nein
Zeitzonen
Ja
SSL
Ja
Zwischensummen
Ja
Zusätzliche JDBC-Parameter
Ja
Groß-/Kleinschreibung beachten
Ja
Standorttyp
Ja
Listentyp
Ja
Perzentil
Ja
Perzentil der unterschiedlichen Werte
Nein
SQL Runner-Prozesse anzeigen
Nein
SQL Runner Describe Table
Ja
SQL Runner-Indexe für Serien
Nein
SQL Runner Select 10
Ja
Anzahl der SQL-Runner
Ja
SQL Explain
Ja
OAuth-Anmeldedaten
Nein
Kontextkommentare
Ja
Verbindungs-Pooling
Nein
HLL-Skizzen
Nein
Aggregatfunktion
Ja
Inkrementelle PDTs
Nein
Millisekunden
Ja
Mikrosekunden
Ja
Materialisierte Ansichten
Nein
Ungefähre Anzahl einzelner Aufrufe
Nein

Nächste Schritte

Nachdem Sie Ihre Datenbank mit Looker verbunden haben, konfigurieren Sie die Anmeldeoptionen für Ihre Nutzer.