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 standardmäßig 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 von benutzerdefinierten, nicht verpackten JDBC-Treiber-JAR-Dateien erforderlich.
Voraussetzungen und MongoSQL-Konfiguration
Bevor Sie eine Verbindung in Looker erstellen, führen Sie 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.
In der Dokumentation zum MongoSQL Schema Builder erfahren Sie, wie Sie Ihre tabellarischen Schemas definieren und veröffentlichen, 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 über Ihre Looker-Instanz abfragen möchten, müssen Sie Ihre Looker-IP-Adressen der Atlas-IP-Zugriffsliste hinzufügen. Gehen Sie dazu so vor:
- 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 in der MongoDB Atlas Web Console ein Datenbanknutzerkonto für Looker. Gehen Sie dazu so vor:
- 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. So rufen Sie die Parameterinformationen ab:
- 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 Anforderungen für Host, Port (in der Regel
27017), Database und SSL. 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: 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-Administrationsseite Connections Admin 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 unter Voraussetzungen beschrieben, benötigen 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 unterstützt.
- 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.16 die folgenden Funktionen:
| Funktion | Unterstützt? |
|---|---|
| Looker (Google Cloud Core) | |
| Symmetrische Aggregate | |
| Abgeleitete Tabellen | |
| Persistente abgeleitete SQL-Tabellen | |
| Nichtflüchtige native abgeleitete Tabellen | |
| Stabile Ansichten | |
| Abfrageeabruch | |
| SQL-basierte Pivottabellen | |
| Zeitzonen | |
| SSL | |
| Zwischensummen | |
| Zusätzliche JDBC-Parameter | |
| Groß- und Kleinschreibung | |
| 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 |