Auf dieser Seite finden Sie Informationen zum Herstellen einer Verbindung zwischen Looker und 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+ kann Looker nur in Versionen nach 3.1.2 vollständig in Apache Hive 3-Datenbanken integriert werden. Dies liegt an einem Problem beim Parsen von Abfragen in Hive-Versionen 2.4.0 bis 3.1.2, das zu extrem langen Parsing-Zeiten für von Looker generierten SQL-Code geführt hat.
- Looker unterstützt keine Verbindungen zu Apache Hive 2. Bei Abfragen für Verbindungen zu Apache Hive 2 wird ein Fehler zurückgegeben.
Netzwerk-Datenverkehr verschlüsseln
Es empfiehlt sich, 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 es über JDBC eine Verbindung zu einem Datenbankserver herstellt. Bei Hive ist das 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 erwartet daher die Verwendung einer interaktiven SQL-Engine. Wenn Hive auf 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 permanente abgeleitete Tabellen (Persistent Derived Tables, PDTs) in Looker über eine Hive-Verbindung aktivieren möchten, erstellen Sie ein Scratch-Schema für Looker. Im Folgenden sehen Sie ein Beispiel für einen Befehl, mit dem Sie ein looker_scratch
-Schema erstellen können:
CREATE SCHEMA looker_scratch;
Das Nutzerkonto, das Looker zum Herstellen einer Verbindung zu Hive verwendet (das anonym sein kann, 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 Sie möchten, dass Abfragen aus Looker in eine bestimmte Warteschlange gelangen, geben Sie den Parameter für den Warteschlangennamen 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 verschiedenen Nutzergruppen in unterschiedliche Warteschlangen geleitet werden. Erstellen Sie dazu ein Nutzerattribut mit einem Namen wie queue_name
und fügen Sie dann im Feld Zusätzliche JDBC-Parameter Folgendes hinzu:
?tez.queue.name={{ _user_attributes['queue_name'] }}
Damit lassen sich auch andere hive-site.xml
-Parameter für einzelne Nutzer oder Gruppen anpassen.
Looker-Verbindung zu Ihrer Datenbank erstellen
So erstellen Sie die Verbindung von Looker zu Ihrer Datenbank:
- Wählen Sie in Looker im Bereich Admin die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.
Wählen Sie im Drop-down-Menü Dialekt die Option Apache Hive 2.3+ oder Apache Hive 3.1.2+ aus.
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 diesem Schalter 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.
- Temp Database: Geben Sie den Namen des Scratch-Schemas an, das im Abschnitt Persistent Derived Tables (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 alle zusätzlichen JDBC-Stringparameter an.
- Wartungszeitplan: Geben Sie einen
cron
-Ausdruck an, der angibt, wann Looker Datengruppen und persistente abgeleitete Tabellen prüfen soll. Weitere Informationen zu dieser Einstellung finden Sie in der Dokumentation zum Wartungszeitplan. - SSL: Aktivieren Sie diese Option, um SSL-Verbindungen zu verwenden.
- SSL überprüfen: Prüfen Sie, ob der Hostname bestätigt wurde.
- Maximale Anzahl von Verbindungen pro Knoten: Diese Einstellung kann zunächst auf dem Standardwert belassen werden. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
- Zeitlimit für Verbindungspool: Diese Einstellung kann zunächst auf dem Standardwert belassen werden. Weitere Informationen zu dieser Einstellung finden Sie im Abschnitt Zeitüberschreitung für Verbindungspool auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
- 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 im Abschnitt SQL Runner-Vorabcache auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.
- Zeitzone der Datenbank: Geben Sie die in der Datenbank verwendete Zeitzone an. Lassen Sie dieses Feld leer, wenn Sie keine Zeitzonenkonvertierung wünschen. Weitere Informationen finden Sie auf der Dokumentationsseite Zeitzoneneinstellungen verwenden.
Klicken Sie auf Test, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde. Informationen zur Fehlerbehebung finden Sie auf der Dokumentationsseite Datenbankkonnektivität testen.
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+
Apache Hive 2.3 und höher unterstützt ab Looker 25.10 die folgenden Funktionen:
Funktion | Unterstützt? |
---|---|
Supportstufe | Integration |
Looker (Google Cloud Core) | Nein |
Symmetrische Summen | Nein |
Abgeleitete Tabellen | Ja |
Persistente SQL-basierte abgeleitete Tabellen | Ja |
Persistente native abgeleitete Tabellen | Ja |
Stabile Ansichten | Ja |
Abfrage beenden | Ja |
SQL-basierte Pivots | Nein |
Zeitzonen | Ja |
SSL | Ja |
Zwischensummen | Ja |
Zusätzliche JDBC-Parameter | Ja |
Groß- und Kleinschreibung | Ja |
Standorttyp | Ja |
Listentyp | Ja |
Perzentil | Ja |
Perzentil der unterschiedlichen Werte | Nein |
SQL Runner – Prozesse anzeigen | Nein |
SQL-Runner-Funktion „Tabelle beschreiben“ | Ja |
SQL Runner-Befehl „Show Indexes“ | Ja |
SQL Runner Select 10 | Ja |
SQL-Runner-Zählung | Ja |
SQL Explain | Ja |
OAuth 2.0-Anmeldedaten | Nein |
Kontextkommentare | Ja |
Verbindungs-Pooling | Nein |
HLL-Skizzen | Nein |
Aggregatfunktion | Ja |
Inkrementelle PDTs | Nein |
Millisekunden | Ja |
Mikrosekunden | Ja |
Materialisierte Ansichten | Nein |
Vergleich zum vorherigen Zeitraum | Nein |
Ungefähre Anzahl einzelner Aufrufe | Nein |
Apache Hive 3.1.2+
Apache Hive 3.1.2 und höher unterstützt ab Looker 25.10 die folgenden Funktionen:
Funktion | Unterstützt? |
---|---|
Supportstufe | Unterstützt |
Looker (Google Cloud Core) | Ja |
Symmetrische Summen | Nein |
Abgeleitete Tabellen | Ja |
Persistente SQL-basierte abgeleitete Tabellen | Ja |
Persistente native abgeleitete Tabellen | Ja |
Stabile Ansichten | Ja |
Abfrage beenden | Ja |
SQL-basierte Pivots | Nein |
Zeitzonen | Ja |
SSL | Ja |
Zwischensummen | Ja |
Zusätzliche JDBC-Parameter | Ja |
Groß- und Kleinschreibung | Ja |
Standorttyp | Ja |
Listentyp | Ja |
Perzentil | Ja |
Perzentil der unterschiedlichen Werte | Nein |
SQL Runner – Prozesse anzeigen | Nein |
SQL-Runner-Funktion „Tabelle beschreiben“ | Ja |
SQL Runner-Befehl „Show Indexes“ | Nein |
SQL Runner Select 10 | Ja |
SQL-Runner-Zählung | Ja |
SQL Explain | Ja |
OAuth 2.0-Anmeldedaten | Nein |
Kontextkommentare | Ja |
Verbindungs-Pooling | Nein |
HLL-Skizzen | Nein |
Aggregatfunktion | Ja |
Inkrementelle PDTs | Nein |
Millisekunden | Ja |
Mikrosekunden | Ja |
Materialisierte Ansichten | Nein |
Vergleich zum vorherigen Zeitraum | Nein |
Ungefähre Anzahl einzelner Aufrufe | Nein |
Nächste Schritte
Nachdem Sie Ihre Datenbank mit Looker verbunden haben, können Sie Anmeldeoptionen für Ihre Nutzer konfigurieren.