Verbinden Sie Looker direkt mit Ihrem MongoSQL-Cluster, indem Sie den MongoSQL -Dialekt verwenden (basierend auf der MongoSQL-Schnittstelle). Wenn Sie Looker mit MongoSQL verbinden, können Sie Dokumentdaten mit relationalen SQL-Abfragen analysieren und interaktive Looker-Dashboards erstellen.
Looker enthält einen offiziell gebündelten JDBC-Treiber für die MongoSQL-Schnittstelle mit Apache 2.0-Lizenz. Im Gegensatz zum älteren MongoBI-Dialekt ist keine manuelle Installation benutzerdefinierter, nicht verpackter JDBC-Treiber-JAR-Dateien erforderlich.
Voraussetzungen und MongoSQL-Konfiguration
Führen Sie vor dem Erstellen einer Verbindung in Looker die folgenden Konfigurationsschritte in MongoSQL aus:
- Relationales Schema mit dem SQL Schema Builder erstellen
- Looker-IP-Adressen zur Atlas-IP-Zugriffsliste hinzufügen
- MongoDB-Nutzerkonto für Looker erstellen
- Atlas-SQL-Verbindungsparameter abrufen
Relationales Schema mit dem SQL Schema Builder erstellen
MongoDB speichert Daten in einem flexiblen, nicht relationalen Dokumentformat (JSON/BSON). Bevor Looker Ihre MongoDB-Sammlungen mit Standard-SQL abfragen kann, müssen Sie mit dem SQL Schema Builder in MongoSQL ein SQL-Schema erstellen.
Die MongoSQL-Schnittstelle verwendet das relationale Schema, das vom SQL Schema Builder erstellt wurde, um Dokumentstrukturen, verschachtelte Felder und Arrays Standard-SQL-Tabellen, ‑Zeilen und ‑Spalten zuzuordnen. Ohne ein aktives SQL-Schema kann die SQL-Schnittstelle keine SQL-Abfragen für Ihre MongoDB-Sammlungen übersetzen.
Informationen zum Definieren und Veröffentlichen von Tabellenschemas finden Sie in der Dokumentation zum MongoSQL Schema Builder, bevor Sie die Verbindung in Looker erstellen.
Verwenden Sie für lokale MongoDB Enterprise-Instanzen die MongoDB SQL Schema Builder CLI, um Ihre Schemas zu definieren.
Looker-IP-Adressen zur Atlas-IP-Zugriffsliste hinzufügen
MongoSQL beschränkt Clientverbindungen auf autorisierte IP-Adressen. Wenn Sie MongoSQL von Ihrer Looker-Instanz aus abfragen möchten, müssen Sie Ihre Looker-IP-Adressen der Atlas-IP-Zugriffsliste hinzufügen. Führen Sie dazu die folgenden Schritte aus:
- Rufen Sie die Liste der Looker-IP-Adressen für die Region Ihrer Looker-Instanz ab.
- Fügen Sie diese IP-Adressen gemäß der Atlas-IP-Zugriffslistendokumentation der IP-Zugriffsliste Ihres Atlas-Projekts hinzu.
MongoDB-Nutzerkonto für Looker erstellen
Erstellen Sie mit der MongoDB Atlas Web Console ein Datenbanknutzerkonto für Looker. Führen Sie dazu die folgenden Schritte aus:
- Melden Sie sich in der MongoDB Atlas Console an.
- Wählen Sie im Hauptnavigationsmenü unter Security (Sicherheit) die Option Database Access (Datenbankzugriff) aus.
- Klicken Sie auf Add New Database User (Neuen Datenbanknutzer hinzufügen).
- Wählen Sie Password (Passwort) als Authentifizierungsmethode aus. Geben Sie einen Username (Nutzername, z. B.
looker) und ein sicheres Passwort ein. - Wählen Sie unter Database User Privileges (Berechtigungen des Datenbanknutzers) die Option Built-in Role (Integrierte Rolle) aus und weisen Sie die
readRolle (oder benutzerdefinierte Leseberechtigungen) für die Datenbank zu, auf die Looker zugreifen soll. - Klicken Sie auf Add User (Nutzer hinzufügen), um die Anmeldedaten des Nutzers zu speichern.
Atlas-SQL-Verbindungsparameter abrufen
Zum Erstellen der Looker-Verbindung müssen Sie Verbindungsparameter für die Atlas-SQL-Verbindung eingeben. Sie können die Parameterinformationen so abrufen:
- Melden Sie sich in der MongoDB Atlas Console an.
- Rufen Sie Ihren Cluster auf und klicken Sie auf Connect (Verbinden).
- Wählen Sie Atlas SQL (oder Connect your application using SQL (Anwendung mit SQL verbinden)) aus.
- Wählen Sie JDBC Driver (JDBC-Treiber) aus.
- Notieren Sie sich die generierten Werte für Host, Port (in der Regel
27017), Database (Datenbank) und die SSL-Anforderungen. Sie geben diese Details ein, wenn Sie die Looker-Verbindung erstellen.
Looker-Verbindung zu Ihrer Datenbank erstellen
So stellen Sie die Verbindung von Looker zu MongoSQL her:
- Wählen Sie in Looker im Bereich Admin die Option Connections (Verbindungen) aus und klicken Sie dann auf Add Connection (Verbindung hinzufügen).
Geben Sie die Verbindungsdetails ein. Der Großteil der Einstellungen ist für die meisten Datenbankdialekte gleich. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden. Einige der Einstellungen werden im Folgenden beschrieben. Verwenden Sie für alle anderen Felder die Standardwerte oder lassen Sie sie leer.
- Name: Geben Sie einen eindeutigen Verbindungsnamen ein.
- Dialect (Dialekt): Wählen Sie im Drop-down-Menü MongoSQL aus.
- Host (Host): Der von der MongoSQL-Schnittstelle bereitgestellte Hostname (z. B.
<cluster-name>.a.query.mongodb.net). - Port: Die Portnummer für Atlas SQL (Standard:
27017). - Database (Datenbank): Der Name der Datenbank, für die Sie mit dem SQL Schema Builder ein Schema erstellt haben.
- Username (Nutzername): Der für Looker erstellte Datenbanknutzername.
- Password (Passwort): Das Passwort des Datenbanknutzers.
- SSL: Aktivieren Sie SSL (
ssl=true). - Additional JDBC parameters (Zusätzliche JDBC-Parameter): (Optional) Zusätzliche JDBC-Parameter, die vom MongoDB-Treiber unterstützt werden, z. B.
authSource=adminoderconnectTimeoutMS=10000. Weitere Informationen finden Sie unter Unterstützte JDBC-Parameter.
Klicken Sie auf Test Connection (Verbindung testen), um die Datenbankverbindung zu überprüfen.
Wenn in Looker Can Connect (Verbindung möglich) angezeigt wird, klicken Sie auf Connect (Verbinden), um die Verbindung zu erstellen.
Ihre Datenbankverbindung wird dann der Liste auf der Looker Connections Admin -Seite hinzugefügt.
Unterstützte JDBC-Parameter
Für den MongoSQL -Dialekt unterstützt Looker die folgenden JDBC-Parameter im Feld Additional JDBC parameters (Zusätzliche JDBC-Parameter):
appNameauthSourceclientinfoconnectTimeoutMSdirectConnectiondisableclientcacheextjsonmodeheartbeatFrequencyMSjournallocalThresholdMSmaxIdleTimeMSmaxWaitTimeMSreadPreferencereplicaSetretryReadsretryWritesserverSelectionTimeoutMSsocketTimeoutMSssltlstlsAllowInvalidHostnamestlsInsecurewwtimeoutMS
Einschränkungen bei Abfragen und SQL-Verhalten
Beachten Sie beim Erstellen von LookML-Modellen und beim Abfragen von MongoSQL mit der SQL-Schnittstelle die folgenden Dialekteigenschaften:
- SQL Schema Builder erforderlich: Wie in den Voraussetzungen erwähnt, erfordern SQL-Abfragen ein vorkonfiguriertes relationales Schema, das im Atlas SQL Schema Builder definiert ist.
- Abgeleitete Tabellen: Ephemere (reguläre) abgeleitete Tabellen werden unterstützt, persistente abgeleitete Tabellen (PDTs) jedoch nicht.
- Datums- und Zeitstempeltypen: Der Datentyp
datewird nicht unterstützt. In der Regel werden Datumsangaben alstimestamp-Felder gespeichert und modelliert. - Zeitzonen: Alle Zeitstempel, auf die über die MongoSQL-Schnittstelle zugegriffen wird, werden in UTC behandelt. Looker konvertiert Zeitzonen für MongoDB-Verbindungen nicht in der Datenbank.
Funktionsunterstützung
Damit Looker einige Funktionen unterstützen kann, müssen diese auch von Ihrem Datenbankdialekt unterstützt werden.
MongoSQL unterstützt ab Looker 26.20 die folgenden Funktionen:
| Funktion | Unterstützt? |
|---|---|
| Looker (Google Cloud Core) | |
| Symmetrische Aggregate | |
| Abgeleitete Tabellen | |
| Persistente abgeleitete SQL-Tabellen | |
| Persistente native abgeleitete Tabellen | |
| Stabile Ansichten | |
| Abfrageeabruch | |
| SQL-basierte Pivottabellen | |
| Zeitzonen | |
| SSL | |
| Zwischensummen | |
| Zusätzliche JDBC-Parameter | |
| Groß-/Kleinschreibung beachten | |
| Standorttyp | |
| Listentyp | |
| Perzentil | |
| Perzentil der unterschiedlichen Werte | |
| SQL Runner-Befehl – Prozesse anzeigen | |
| SQL-Runner-Funktion – Tabelle beschreiben | |
| SQL Runner-Befehl – Indexe anzeigen | |
| SQL Runner-Befehl – 10 auswählen | |
| SQL-Runner – Anzahl | |
| SQL – Erklären | |
| OAuth 2.0-Anmeldedaten | |
| Kontextkommentare | |
| Verbindungs-Pooling | |
| HLL-Skizzen | |
| Aggregate Awareness | |
| Inkrementelle PDTs | |
| Millisekunden | |
| Mikrosekunden | |
| Materialisierte Ansichten | |
| Vergleich zum vorherigen Zeitraum | |
| Ungefähre Anzahl einzelner Aufrufe | |
| Analytische Modelle in der Datenbank | |
| Benutzerdefinierte Kalender |