Apache Hive

Diese Seite enthält Informationen zum Verbinden von Looker mit Apache Hive.

Einführung

Looker ist für die Verbindung mit einem Datenbankserver über JDBC konzipiert. Im Fall von Hive ist dies der Thrift-Server (HiveServer2). Weitere Informationen finden Sie in der Apache-Dokumentation.

Standardmäßig überwacht dieser Server Port 10.000.

Looker ist ein interaktives Abfragetool, das deshalb voraussichtlich mit einer interaktiven SQL-Engine funktioniert. Wenn Hive auf MapReduce ausgeführt wird – hive.execution.engine auf mr gesetzt ist – gibt Hive Abfrageergebnisse zu langsam zurück, um praktisch zu sein.

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

Persistente abgeleitete Tabellen (PDTs)

Wenn Sie persistente abgeleitete Tabellen (PDTs) in Looker mithilfe einer Hive-Verbindung aktivieren möchten, erstellen Sie ein Scratch-Schema, das von Looker verwendet werden kann. Hier ein Beispiel für einen Befehl, mit dem Sie ein looker_scratch-Schema erstellen können:

 CREATE SCHEMA looker_scratch;

Das Nutzerkonto, mit dem Looker eine Verbindung zu Hive herstellt (das anonym sein kann, wenn keine Authentifizierung verwendet wird), muss die folgenden Funktionen im Scratch-Schema 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 von Looker in eine bestimmte Warteschlange geleitet werden sollen, geben Sie auf der Seite Verbindungseinstellungen in das Feld Zusätzliche JDBC-Parameter den Parameter der Warteschlange ein:

?tez.queue.name=the_bi_queue

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

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

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

Damit können Sie auch andere hive-site.xml-Parameter für einzelne Nutzer oder Gruppen anpassen.

Looker-Verbindung zu Ihrer Datenbank erstellen

Wählen Sie im Abschnitt Admin von Looker die Option Verbindungen aus und klicken Sie auf Verbindung hinzufügen.

Geben Sie die Verbindungsdetails ein. Die meisten Einstellungen gelten für die meisten Datenbankdialekte. Informationen dazu finden Sie in der Dokumentation zum Verbinden von Looker mit Ihrer Datenbank. Einige der Einstellungen werden als Nächstes beschrieben:

  • Name: Geben Sie den Namen der Verbindung an. So verweisen Sie auf die Verbindung in LookML-Projekten.
  • Dialekt: Geben Sie den Dialekt an: Apache Hive 2, Apache Hive 2.3+ oder Apache Hive 3.1.2+.

    Für Apache Hive 3.1.2+ kann Looker vollständig in Apache Hive 3-Datenbanken nur in Versionen ab 3.1.2 eingebunden werden.

  • Host: Geben Sie den Hostnamen an.

  • Port: Geben Sie den Port der Datenbank an.

  • Datenbank: Geben Sie den Datenbanknamen an.

  • Nutzername: Geben Sie den Nutzernamen der Datenbank an.

  • Password: Geben Sie das Passwort des Datenbanknutzers an.

  • PDTs aktivieren: Aktivieren Sie diese Option, um persistente abgeleitete Tabellen zu aktivieren. Wenn PATs aktiviert sind, werden im Fenster Verbindung zusätzliche PAT-Einstellungen und der Abschnitt PDT-Überschreibungen angezeigt.

  • Temporäre Datenbank: Geben Sie den Namen des Scratch-Schemas an, das oben im Abschnitt PDTs erstellt wurde.

  • Maximale Anzahl von PAT-Builder-Verbindungen: Geben Sie die Anzahl der möglichen gleichzeitigen PAT-Builds für diese Verbindung an. Wenn dieser Wert zu hoch ist, kann sich das negativ auf die Abfragezeiten auswirken. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Datenbank herstellen.

  • Zusätzliche JDBC-Parameter: Geben Sie alle zusätzlichen JDBC-Stringparameter an.

  • Datengruppe und PAT-Wartungsplan: Geben Sie einen cron-Ausdruck an, der angibt, wann Looker Datengruppen und persistente abgeleitete Tabellen prüfen soll. Datagroup- und PDT-Wartungsplan.

  • SSL: Aktivieren Sie diese Option, um SSL-Verbindungen zu nutzen.

  • SSL überprüfen: Suchen Sie nach dem Hostnamen.

  • Max. Anzahl der Verbindungen pro Knoten: Diese Einstellung kann anfangs den Standardwert übernehmen. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Ihrer Datenbank herstellen.

  • Zeitlimit für Verbindungspool: Diese Einstellung kann anfangs den Standardwert beibehalten. Weitere Informationen zu dieser Einstellung finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Datenbank herstellen im Abschnitt Zeitlimit für den Verbindungspool.

  • SQL-Runner-Precache: Deaktivieren Sie diese Option, damit der SQL Runner keine Tabelleninformationen vorab lädt und Tabelleninformationen nur lädt, wenn eine Tabelle ausgewählt ist. Weitere Informationen zu dieser Einstellung finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Datenbank herstellen im Abschnitt SQL-Runner-Precache.

  • Zeitzone der Datenbank: Geben Sie die Zeitzone an, die in der Datenbank verwendet wird. Lassen Sie dieses Feld leer, wenn Sie keine Zeitzonenumwandlung wünschen. Weitere Informationen finden Sie auf der Dokumentationsseite Zeitzoneneinstellungen verwenden.

Klicken Sie auf Test, um zu prüfen, ob die Verbindung erfolgreich war. Informationen zur Fehlerbehebung finden Sie in der Dokumentation zum Testen der Datenbankverbindung.

Klicken Sie auf Verbinden, um diese Einstellungen zu speichern.

Unterstützte Funktionen

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

Apache Hive 2

Apache Hive 2 unterstützt ab Looker 23.8 die folgenden Funktionen:

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Nein
Symmetrische Summen
Nein
Abgeleitete Tabellen
Ja
Über SQL abgeleitete Tabellen
Ja
Nichtflüchtige native abgeleitete Tabellen
Ja
Stabile Aufrufe
Ja
Abfrageabbau
Ja
SQL-basierte Pivots
Nein
Zeitzonen
Ja
SSL
Ja
Zwischensummen
Ja
Zusätzliche JDBC-Parameter
Ja
Groß-/Kleinschreibung beachten
Ja
Standorttyp
Ja
Listentyp
Ja
Perzentil
Ja
Eindeutiges Perzentil
Nein
Prozesse der SQL Runner-Sendung
Nein
SQL-Runner-Beschreibungstabelle
Ja
SQL-Runner-Show-Indizes
Ja
SQL Runner Select 10
Ja
Anzahl der SQL-Runner
Ja
Erläuterung zu SQL
Ja
OAuth-Anmeldedaten
Nein
Kontextkommentare
Ja
Verbindungs-Pooling
Nein
HLL-Sketche
Nein
Aggregatfunktion
Ja
Inkrementelle PDTs
Nein
Millisekunden
Ja
Mikrosekunden
Ja
Materialisierte Ansichten
Nein
Ungefähre Anzahl Einzeln
Nein

Apache Hive 2.3 oder höher

Ab Version 23.8 von Apache Hive 2.3 werden die folgenden Funktionen unterstützt:

Funktion Unterstützt?
Supportstufe
Integration
Looker (Google Cloud Core)
Nein
Symmetrische Summen
Nein
Abgeleitete Tabellen
Ja
Über SQL abgeleitete Tabellen
Ja
Nichtflüchtige native abgeleitete Tabellen
Ja
Stabile Aufrufe
Ja
Abfrageabbau
Ja
SQL-basierte Pivots
Nein
Zeitzonen
Ja
SSL
Ja
Zwischensummen
Ja
Zusätzliche JDBC-Parameter
Ja
Groß-/Kleinschreibung beachten
Ja
Standorttyp
Ja
Listentyp
Ja
Perzentil
Ja
Eindeutiges Perzentil
Nein
Prozesse der SQL Runner-Sendung
Nein
SQL-Runner-Beschreibungstabelle
Ja
SQL-Runner-Show-Indizes
Ja
SQL Runner Select 10
Ja
Anzahl der SQL-Runner
Ja
Erläuterung zu SQL
Ja
OAuth-Anmeldedaten
Nein
Kontextkommentare
Ja
Verbindungs-Pooling
Nein
HLL-Sketche
Nein
Aggregatfunktion
Ja
Inkrementelle PDTs
Nein
Millisekunden
Ja
Mikrosekunden
Ja
Materialisierte Ansichten
Nein
Ungefähre Anzahl Einzeln
Nein

Apache Hive 3.1.2+

Apache Hive 3.1.2+ unterstützt ab Looker 23.8 die folgenden Funktionen:

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Ja
Symmetrische Summen
Nein
Abgeleitete Tabellen
Ja
Über SQL abgeleitete Tabellen
Ja
Nichtflüchtige native abgeleitete Tabellen
Ja
Stabile Aufrufe
Ja
Abfrageabbau
Ja
SQL-basierte Pivots
Nein
Zeitzonen
Ja
SSL
Ja
Zwischensummen
Ja
Zusätzliche JDBC-Parameter
Ja
Groß-/Kleinschreibung beachten
Ja
Standorttyp
Ja
Listentyp
Ja
Perzentil
Ja
Eindeutiges Perzentil
Nein
Prozesse der SQL Runner-Sendung
Nein
SQL-Runner-Beschreibungstabelle
Ja
SQL-Runner-Show-Indizes
Nein
SQL Runner Select 10
Ja
Anzahl der SQL-Runner
Ja
Erläuterung zu SQL
Ja
OAuth-Anmeldedaten
Nein
Kontextkommentare
Ja
Verbindungs-Pooling
Nein
HLL-Sketche
Nein
Aggregatfunktion
Ja
Inkrementelle PDTs
Nein
Millisekunden
Ja
Mikrosekunden
Ja
Materialisierte Ansichten
Nein
Ungefähre Anzahl Einzeln
Nein

Nächste Schritte

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