Apache Hive

Diese Seite enthält Informationen zum Verbinden von Looker mit Apache Hive 2.3+ und Apache Hive 3.1.2+.

Beachten Sie Folgendes zur Looker-Unterstützung für die verschiedenen Versionen von Apache Hive:

  • Looker unterstützt Verbindungen zu Apache Hive 2.3+ und Apache Hive 3.1.2+.
  • Bei Apache Hive 3.1.2 und höher kann Looker nur ab Version 3.1.2 vollständig in Apache Hive 3-Datenbanken eingebunden werden. Der Grund dafür ist ein Problem beim Parsen der Hive-Versionen 2.4.0 bis 3.1.2, das zu extrem langen Analysezeiten für von Looker generiertes SQL führte.
  • Looker unterstützt keine Verbindungen zu Apache Hive 2. Abfragen für Verbindungen zu Apache Hive 2 geben einen Fehler zurück.

Netzwerk-Datenverkehr verschlüsseln

Es empfiehlt sich, den Netzwerkverkehr zwischen der Looker-Anwendung und Ihrer Datenbank zu verschlüsseln. Sehen Sie sich eine der Optionen an, die auf der Dokumentationsseite Sicheren Datenbankzugriff aktivieren beschrieben werden.

Einleitung

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

Standardmäßig überwacht dieser Server Port 10000.

Looker ist ein interaktives Abfrage-Tool und erwartet, dass es mit einer interaktiven SQL-Engine funktioniert. Wenn Hive auf MapReduce ausgeführt wird – hive.execution.engine ist auf mr gesetzt – gibt Hive die Abfrageergebnisse zu langsam zurück, um praktikabel zu sein.

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

Persistente abgeleitete Tabellen (PDTs)

Wenn Sie nichtflüchtige abgeleitete Tabellen (PDTs) in Looker über eine Hive-Verbindung aktivieren möchten, erstellen Sie ein Scratch-Schema, das Looker verwenden kann. Das folgende Beispiel zeigt einen Befehl, mit dem Sie ein looker_scratch-Schema erstellen können:

 CREATE SCHEMA looker_scratch;

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

?tez.queue.name=the_bi_queue

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

Mithilfe von Nutzerattributen ist es möglich, dass Abfragen von verschiedenen Nutzern oder verschiedenen Nutzergruppen in unterschiedliche Warteschlangen gestellt werden. Erstellen Sie dazu ein Nutzerattribut mit dem Namen queue_name und fügen Sie im Feld Zusätzliche JDBC-Parameter Folgendes hinzu:

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

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

Looker-Verbindung zu Ihrer Datenbank erstellen

Führen Sie die folgenden Schritte aus, um die Verbindung von Looker zu Ihrer Datenbank zu erstellen:

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

  3. Geben Sie die Verbindungsdetails ein. Die meisten Einstellungen sind den meisten Datenbankdialekten gemeinsam. 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 verweisen Sie in LookML-Projekten auf die Verbindung.
    • Host: Geben Sie den Hostnamen an.
    • Port: Geben Sie den Datenbankport an.
    • Datenbank: Geben Sie den Datenbanknamen an.
    • Nutzername: Geben Sie den Nutzernamen der Datenbank an.
    • Passwort: Geben Sie das Passwort des Datenbanknutzers an.
    • PDTs aktivieren: Verwenden Sie diese Ein/Aus-Schaltfläche, um nichtflüchtige 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 im Abschnitt Persistente abgeleitete Tabellen (PDTs) auf dieser Dokumentationsseite erstellt wurde.
    • Maximale Anzahl von PAT-Builder-Verbindungen: Geben Sie die Anzahl der möglichen gleichzeitigen PAT-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 zusätzliche 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. Dokumentation zum Wartungszeitplan für Datengruppen und PATs.
    • SSL: Aktivieren Sie diese Option, um SSL-Verbindungen zu verwenden.
    • SSL überprüfen: Überprüfen Sie die Hostname-Überprüfung.
    • Max. Verbindungen pro Knoten: Diese Einstellung kann anfangs auf dem Standardwert belassen werden. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
    • Zeitüberschreitung beim Verbindungspool: Diese Einstellung kann anfangs auf dem Standardwert belassen werden. Weitere Informationen zu dieser Einstellung finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden im Abschnitt Zeitüberschreitung beim Verbindungspool.
    • SQL Runner Precache: Deaktivieren Sie diese Option, damit SQL Runner Tabelleninformationen nicht vorab lädt, sondern nur dann, wenn eine Tabelle ausgewählt ist. Weitere Informationen zu dieser Einstellung finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden im Abschnitt SQL Runner Precache.
    • Datenbank-Zeitzone: Geben Sie die in der Datenbank verwendete Zeitzone an. Lassen Sie dieses Feld leer, wenn Sie die Zeitzone nicht umwandeln möchten. 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.

Unterstützte Funktionen

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

Apache Hive 2.3+

Apache Hive 2.3+ unterstützt die folgenden Funktionen ab Looker 24.8:

Funktion Unterstützt?
Supportstufe
Integration
Looker (Google Cloud Core)
Nein
Symmetrische Summen
Nein
Abgeleitete Tabellen
Yes
Abgeleitete SQL-Tabellen
Yes
Nichtflüchtige native abgeleitete Tabellen
Yes
Stabile Ansichten
Yes
Abfrage beenden
Yes
SQL-basierte Pivots
Nein
Zeitzonen
Yes
SSL
Yes
Zwischensummen
Yes
Zusätzliche JDBC-Parameter
Yes
Groß-/Kleinschreibung beachten
Yes
Standorttyp
Yes
Listentyp
Yes
Perzentil
Yes
Unterschiedliche Perzentile
Nein
SQL-Runner-Show-Prozesse
Nein
SQL-Runner – Tabelle beschreiben
Yes
SQL Runner – Indexe anzeigen
Yes
SQL Runner Select 10
Yes
Anzahl der SQL-Runner
Yes
SQL erklären
Yes
OAuth-Anmeldedaten
Nein
Kontextkommentare
Yes
Verbindungs-Pooling
Nein
HLL-Skizzen
Nein
Aggregatfunktion
Yes
Inkrementelle PDTs
Nein
Millisekunden
Yes
Mikrosekunden
Yes
Materialisierte Ansicht
Nein
Ungefähre Anzahl unterschiedlich
Nein

Apache Hive 3.1.2+

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

Funktion Unterstützt?
Supportstufe
Unterstützt
Looker (Google Cloud Core)
Yes
Symmetrische Summen
Nein
Abgeleitete Tabellen
Yes
Abgeleitete SQL-Tabellen
Yes
Nichtflüchtige native abgeleitete Tabellen
Yes
Stabile Ansichten
Yes
Abfrage beenden
Yes
SQL-basierte Pivots
Nein
Zeitzonen
Yes
SSL
Yes
Zwischensummen
Yes
Zusätzliche JDBC-Parameter
Yes
Groß-/Kleinschreibung beachten
Yes
Standorttyp
Yes
Listentyp
Yes
Perzentil
Yes
Unterschiedliche Perzentile
Nein
SQL-Runner-Show-Prozesse
Nein
SQL-Runner – Tabelle beschreiben
Yes
SQL Runner – Indexe anzeigen
Nein
SQL Runner Select 10
Yes
Anzahl der SQL-Runner
Yes
SQL erklären
Yes
OAuth-Anmeldedaten
Nein
Kontextkommentare
Yes
Verbindungs-Pooling
Nein
HLL-Skizzen
Nein
Aggregatfunktion
Yes
Inkrementelle PDTs
Nein
Millisekunden
Yes
Mikrosekunden
Yes
Materialisierte Ansicht
Nein
Ungefähre Anzahl unterschiedlich
Nein

Weitere Informationen

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