MongoDB-Connector für BI

Von MongoBI zu MongoSQL migrieren

Looker unterstützt jetzt MongoSQL und empfiehlt die Migration vom MongoDB-Connector für BI zu MongoSQL.

Aufgrund von Unterschieden in der SQL-Syntax zwischen dem MongoDB-Connector für BI (MongoBI) und MongoSQL müssen möglicherweise Syntaxanpassungen an vorhandenen LookML-Modellen vorgenommen werden, die benutzerdefinierte SQL-Blöcke, Datumsformatierungen oder Datenbankfunktionen verwenden. Sie sollten eine vorhandene Produktionsverbindung nicht direkt zu MongoSQL wechseln, ohne zuerst Ihren LookML-Code zu validieren, da dies zu Problemen mit Dashboards, Looks, Zeitplänen oder Benachrichtigungen führen kann.

So migrieren Sie sicher von MongoBI zu MongoSQL:

  1. Sehen Sie sich die Unterschiede in der SQL-Syntax zwischen MongoBI und MongoSQL in der MongoDB-Dokumentation unter Transition from Atlas BI Connector to MongoSQL an.
  2. Erstellen Sie eine neue Verbindung für MongoSQL in Looker als sekundäre Verbindung.
  3. Aktualisieren Sie in einem neuen Entwicklungszweig in Ihrem LookML-Projekt den Parameter connection in Ihrer Modelldatei, damit er auf die neue MongoSQL-Verbindung verweist.
  4. Testen und führen Sie in SQL Runner Beispielabfragen aus Ihren Explores aus, um die Abfragesyntax und die Ergebnisse zu überprüfen.
  5. Validieren Sie Ihr Projekt und Ihre Inhalte:
    • Verwenden Sie die Inhaltsvalidierung, um alle Dashboards und Looks nach fehlerhaften Feldern oder Verweisen zu durchsuchen.
    • Verwenden Sie den SQL Validator von Looker CI, um die Dimensionen in Ihren Explores mit der Datenbank zu vergleichen.
  6. Nachdem Sie alle Validierungsfehler behoben haben, stellen Sie Ihre Änderungen in der Produktion bereit.

MongoDB-Connector für BI (MongoBI) verwenden

Looker kann über den MongoDB-Connector für BI auf MongoDB zugreifen. Dazu gibt es zwei Möglichkeiten:

  • MongoDB-Connector für BI in MongoDB Atlas verwenden
  • MongoDB-Connector für BI verwenden, der auf demselben Server wie die MongoDB-Datenbank installiert ist

MongoDB Atlas

Für MongoDB Atlas muss ein M10+-Cluster verwendet werden. Wenn Looker eine MongoDB-Datenbank verwenden soll, die in MongoDB Atlas ausgeführt wird, müssen Sie den MongoDB-Connector für BI (MongoBI) verwenden. Wenn Sie den BI Connector für Atlas aktivieren möchten, muss in MongoDB Atlas ein M10+-Cluster verwendet werden.

Außerdem müssen Sie ein Nutzerkonto mit Leseberechtigungen für die ausgewählte Datenbank erstellen.

MongoDB-Connector für BI konfigurieren

Bevor Sie eine Verbindung in Looker erstellen, muss Ihr MongoDB- oder Atlas-Administrator den MongoDB-Connector für BI mit den folgenden Schritten einrichten, die auf dieser Seite erläutert werden:

Looker-Server zur Atlas-IP-Zugriffsliste hinzufügen

Atlas lässt nur Clientverbindungen von Einträgen in der IP-Zugriffsliste des Projekts zu. Fügen Sie die Looker-IP-Adresse der IP-Zugriffsliste des Atlas-Projekts hinzu:

  1. Rufen Sie die Looker-IP-Adresse ab.
  2. Folgen Sie der Anleitung zum Einrichten der Atlas-IP-Zugriffsliste, um die Looker-IP-Adresse der Atlas-IP-Zugriffsliste hinzuzufügen.

MongoDB-Connector für BI aktivieren

So aktivieren Sie den MongoDB-Connector für BI:

  1. Prüfen Sie, ob Sie sich in einem M10+-Cluster befinden.
  2. Öffnen Sie in Atlas die Seite „Connect“ (Verbinden) für den Cluster. Notieren Sie sich den Hostnamen, den Port und den Nutzer. Sie benötigen diese Informationen, wenn Sie die Verbindung in Looker konfigurieren.

MongoDB auf demselben Server

Bevor Sie eine Verbindung in Looker erstellen, sollte Ihr MongoDB-Administrator MongoDB und den Mongo-Connector für BI mit den folgenden Schritten einrichten, die auf dieser Seite erläutert werden:

Mongo-Connector für BI installieren

Installieren Sie den MongoDB-Connector für BI auf demselben Server wie die MongoDB-Datenbank, wie auf der Install BI Connector On Premises MongoDB-Dokumentationsseite beschrieben.

Netzwerkverkehr verschlüsseln

Für den MongoDB-Connector für BI ist die Verwendung der SSL-Verschlüsselung zwischen dem MongoDB-Server und der Looker-Anwendung erforderlich. Folgen Sie der Anleitung zur SSL-Einrichtung auf der Configure SSL for BI Connector MongoDB-Dokumentationsseite.

Looker-Nutzer und -Berechtigungen einrichten

Geben Sie in der MongoDB-Shell den Befehl use ein, um zur Datenbank zu wechseln, mit der Looker eine Verbindung herstellen soll. Erstellen Sie dann mit db.createUser() einen Nutzer für Looker mit der Rolle readWrite:

use looker_database

db.createUser({ user: looker,
                pwd: `some_password_here`,
                roles: [ "readWrite" ]
              })

JDBC-Treiberdateien für MongoBI installieren

Für beide Optionen des MongoDB-Connectors für BI muss Looker JDBC-Treiberdateien konfigurieren. Führen Sie dazu die folgenden Schritte aus:

Laden Sie diese beiden JAR-Dateien herunter:

Folgen Sie der Anleitung auf der Dokumentationsseite Unpackaged JDBC drivers und verwenden Sie die folgenden Werte:

Treibersymbol: mongobi

Treibereintrag:

- name: mongobi
  dir_name: mongobi
  module_path: com.mysql.jdbc.Driver
  override_jdbc_url_subprotocol: mysql

Wenn Sie Looker 6.2 oder eine frühere Version verwenden:

- name: maria15x
  dir_name: mongobi
  module_path: com.mysql.jdbc.Driver
  override_jdbc_url_subprotocol: mysql

Für den Schritt, in dem Sie den Treiber in das Verzeichnis Ihres Dialekts einfügen, sehen die Pfade zu diesen Dateien so aus:

  • looker/custom_jdbc_drivers/mongobi/mongosql-auth-1.0.0-rc0.jar
  • looker/custom_jdbc_drivers/mongobi/mysql-connector-java-5.1.47.jar

Verwendung regulärer abgeleiteter Tabellen zulassen (empfohlen)

Abgeleitete Tabellen sind in Looker wichtige Tools, mit denen Sie Ihre Analysen noch umfassender gestalten können. In einigen Fällen tragen sie außerdem erheblich zur Steigerung der Abfrageleistung bei. Auf höherer Ebene bietet die Funktion für abgeleitete Tabellen von Looker die Möglichkeit, neue Tabellen zu erstellen, die noch nicht in Ihrer Datenbank vorhanden sind.

Der MongoDB-Connector für BI unterstützt temporäre reguläre abgeleitete Tabellen, aber keine persistenten abgeleiteten Tabellen.

Da reguläre abgeleitete Tabellen temporär sind, müssen sie nicht gespeichert werden. Daher müssen Sie kein Schema dafür erstellen. Sie müssen jedoch dem Schema looker_tmp die Rolle dbOwner zuweisen, auch wenn dieses Schema nicht vorhanden ist.

Folgen Sie der Anleitung im Abschnitt Modify MongoDB Users auf dieser MongoDB-Dokumentationsseite zum Konfigurieren von Datenbanknutzern, um dem Nutzer, den Looker für die Verbindung verwendet, die Rolle dbOwner für looker_tmp hinzuzufügen.

db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])

Looker-Verbindung zu Ihrer Datenbank erstellen

So verbinden Sie Looker mit Ihrer Datenbank

  1. Wählen Sie in Looker im Bereich Admin die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.
  2. Wählen Sie im Drop-down-Menü Dialekt die Option MongoBI aus.

  3. 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.

  4. Klicken Sie im Abschnitt Statusdetails unten auf der Seite Verbindungseinstellungen auf die Schaltfläche Verbindung testen , um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde.

  5. Wenn in Looker Verbindung möglich angezeigt wird, klicken Sie auf Verbinden, um die Verbindung herzustellen.

Ihre Datenbankverbindung wird dann der Liste auf der Looker-Seite Verbindungen im Bereich Admin hinzugefügt.

SQL-Funktionen und ‑Operatoren mit dem MongoDB-Connector für BI verwenden

Wenn Sie mit einer MongoDB-Connector-für-BI-Verbindung entwickeln, können Sie die in der MongoDB-Dokumentation aufgeführten SQL-Funktionen und ‑Operatoren verwenden.

Unterstützte JDBC-Parameter

Für den MongoDB-Connector für BI unterstützt Looker die folgenden JDBC-Parameter im Zusätzliche JDBC-Parameter Feld für die Verbindung. Informationen zu diesen Parametern finden Sie in der Dokumentation zu Ihrer Datenbank.

  • allowMultiQueries
  • appName
  • authSource
  • autoReconnect
  • cachePrepStmts
  • characterEncoding
  • connectTimeout
  • connectTimeoutMS
  • elideSetAutoCommits
  • enabledSslProtocolSuites
  • enabledTLSProtocols
  • explainSlowQueries
  • maxAllowedPacket
  • password
  • queryInterceptors
  • queryTimeoutKillsConnection
  • replicaSet
  • rewriteBatchedStatements
  • socketTimeout
  • ssl
  • sslMode
  • tcpKeepAlive
  • useCompression
  • useCursorFetch
  • useLocalSessionState
  • user
  • useServerPrepStmts
  • useSSL
  • verifyServerCertificate
  • zeroDateTimeBehavior

Funktionsunterstützung

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

MongoBI unterstützt ab Looker 26.16 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ß- 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

Außerdem gilt: