Verbinden Sie Looker direkt mit Ihrem MongoSQL-Cluster, indem Sie den MongoSQL-Dialekt (unterstützt von der MongoSQL-Schnittstelle) verwenden. Wenn Sie Looker mit MongoSQL verbinden, können Sie Dokumentdaten mithilfe von relationalen SQL-Abfragen analysieren und interaktive Looker-Dashboards erstellen.
Looker enthält standardmäßig einen offiziell gebündelten, unter Apache 2.0 lizenzierten JDBC-Treiber für die MongoSQL-Schnittstelle. Im Gegensatz zum alten MongoBI-Dialekt ist keine manuelle Installation von benutzerdefinierten, nicht gepackten JDBC-Treiber-JAR-Dateien erforderlich.
Voraussetzungen und MongoSQL-Konfiguration
Führen Sie die folgenden Konfigurationsschritte in MongoSQL aus, bevor Sie eine Verbindung in Looker erstellen:
- Relationales Schema mit 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 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 wird, 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 finden Sie Informationen dazu, 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 von Ihrer Looker-Instanz aus abfragen möchten, müssen Sie die IP-Adressen von Looker 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 Dokumentation zur Atlas-IP-Zugriffsliste der IP-Zugriffsliste Ihres Atlas-Projekts hinzu.
MongoDB-Nutzerkonto für Looker erstellen
Erstellen Sie mit der MongoDB Atlas-Webkonsole ein Datenbank-Nutzerkonto für Looker. Gehen Sie dazu so vor:
- Melden Sie sich in der MongoDB Atlas Console an.
- Wählen Sie im Hauptnavigationsmenü unter Sicherheit die Option Datenbankzugriff aus.
- Klicken Sie auf Neuen Datenbanknutzer hinzufügen.
- Wählen Sie als Authentifizierungsmethode Passwort aus. Geben Sie einen Nutzernamen (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 Rolle
read(oder benutzerdefinierte Leseberechtigungen) für die Datenbank zu, auf die Looker zugreifen soll. - Klicken Sie auf Add User (Nutzer hinzufügen), um die Nutzeranmeldedaten 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 Verbinden.
- Wählen Sie Atlas SQL (oder Connect your application using SQL) aus.
- Wählen Sie JDBC-Treiber aus.
- Notieren Sie sich den generierten Host, den Port (normalerweise
27017), die Datenbank und die SSL-Anforderungen. Diese Details geben Sie 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 Verbindungen aus und klicken Sie dann auf 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. Übernehmen Sie für alle anderen Felder die Standardwerte oder lassen Sie sie leer.
- Name: Geben Sie einen eindeutigen Verbindungsnamen ein.
- Dialekt: Wählen Sie im Drop-down-Menü MongoSQL aus.
- Host: Hostname, der von der MongoSQL-Schnittstelle bereitgestellt wird (z. B.
<cluster-name>.a.query.mongodb.net). - Port: Portnummer für Atlas SQL (Standard:
27017). - Datenbank: Name der Datenbank, für die Sie mit SQL Schema Builder ein Schema erstellt haben.
- Nutzername: Der für Looker erstellte Datenbanknutzername.
- Passwort: Passwort des Datenbanknutzers.
- SSL: Aktivieren Sie SSL (
ssl=true). - Zusätzliche JDBC-Parameter: (Optional) Zusätzliche JDBC-Parameter, die vom MongoDB-Treiber unterstützt werden, z. B.
authSource=adminoderconnectTimeoutMS=10000. Siehe Unterstützte JDBC-Parameter.
Klicken Sie auf Verbindung testen, um die Datenbankverbindung zu prüfen.
Wenn Looker Can Connect anzeigt, klicken Sie auf Connect, um die Verbindung zu erstellen.
Ihre Datenbankverbindung wird dann der Liste auf der Looker-Seite Verbindungen Verwaltung hinzugefügt.
Unterstützte JDBC-Parameter
Für den Dialekt MongoSQL unterstützt Looker die folgenden JDBC-Parameter im Feld Zusätzliche JDBC-Parameter:
appNameauthSourceclientinfoconnectTimeoutMSdirectConnectiondisableclientcacheextjsonmodeheartbeatFrequencyMSjournallocalThresholdMSmaxIdleTimeMSmaxWaitTimeMSreadPreferencereplicaSetretryReadsretryWritesserverSelectionTimeoutMSsocketTimeoutMSssltlstlsAllowInvalidHostnamestlsInsecurewwtimeoutMS
Abfragebeschränkungen und SQL-Verhalten
Beachten Sie beim Erstellen von LookML-Modellen und beim Abfragen von MongoSQL über die SQL-Schnittstelle die folgenden Dialektmerkmale:
- Anforderung für SQL Schema Builder: Wie in den Voraussetzungen erwähnt, erfordern SQL-Abfragen ein vorkonfiguriertes relationales Schema, das in 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. Standardmäßig werden Datumsangaben alstimestamp-Felder gespeichert und modelliert. - Zeitzonen: Alle Zeitstempel, auf die über die MongoSQL-Schnittstelle zugegriffen wird, werden in UTC behandelt. Looker konvertiert bei MongoDB-Verbindungen keine Zeitzonen 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.22 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 Pivots | |
| 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 – 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 | |
| In-Database-Analysemodelle | |
| Benutzerdefinierte Kalender |