MongoDB-Connector für BI

Von MongoBI zu MongoSQL migrieren

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

Aufgrund von Unterschieden in der SQL-Syntax zwischen MongoDB Connector for BI (MongoBI) und MongoSQL müssen vorhandene LookML-Modelle, die benutzerdefinierte SQL-Blöcke, Datumsformatierungen oder Datenbankfunktionen verwenden, möglicherweise syntaktisch angepasst werden. Stellen Sie eine bestehende Produktionsverbindung nicht direkt auf MongoSQL um, ohne vorher Ihren LookML-Code zu validieren. Andernfalls können Dashboards, Looks, Zeitpläne oder Benachrichtigungen beschädigt werden.

So migrieren Sie sicher von MongoBI zu MongoSQL:

  1. Informationen zu den Unterschieden in der SQL-Syntax zwischen MongoBI und MongoSQL finden Sie in der MongoDB-Dokumentation unter Transition from Atlas BI Connector to MongoSQL.
  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, sodass er auf die neue MongoSQL-Verbindung verweist.
  4. In SQL-Runner können Sie Beispielabfragen aus Ihren Explores testen und ausführen, um die Abfragesyntax und die Ergebnisse zu prüfen.
  5. Projekt und Inhalte validieren:
    • Verwenden Sie die Inhaltsvalidierung, um alle Dashboards und Looks auf fehlerhafte Felder oder Verweise zu prüfen.
    • Verwenden Sie den SQL-Validator von Looker CI, um die Dimensionen in Ihren Explores mit der Datenbank abzugleichen.
  6. Nachdem Sie alle Validierungsfehler behoben haben, stellen Sie die Änderungen in der Produktion bereit.

MongoDB Connector for BI (MongoBI) verwenden

Looker kann über den MongoDB Connector for BI auf zwei Arten auf MongoDB zugreifen:

  • Verwendung des MongoDB Connector for BI in MongoDB Atlas.
  • Verwendung eines MongoDB-Connectors für BI, der auf demselben Server wie die MongoDB-Datenbank installiert ist.

MongoDB Atlas

Ihre MongoDB Atlas-Instanz muss einen M10+-Cluster verwenden. Damit Looker eine MongoDB-Datenbank verwenden kann, die auf MongoDB Atlas ausgeführt wird, müssen Sie den MongoDB Connector for BI (MongoBI) verwenden. Wenn Sie den BI Connector für Atlas aktivieren möchten, muss MongoDB Atlas einen M10+-Cluster verwenden.

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

MongoDB Connector for BI konfigurieren

Bevor Sie eine Verbindung in Looker erstellen, muss Ihr MongoDB- oder Atlas-Administrator den MongoDB Connector for 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. Looker-IP-Adresse abrufen
  2. Folgen Sie der Anleitung unter Atlas IP access list setup, um die Looker-IP-Adresse zur Atlas-IP-Zugriffsliste hinzuzufügen.

MongoDB Connector for BI aktivieren

Aktivieren Sie den MongoDB Connector for BI:

  1. Prüfen Sie, ob Sie einen M10+-Cluster verwenden.
  2. Öffnen Sie in Atlas die Seite „Connect“ für den Cluster. Notieren Sie sich den Hostnamen, den Port und den Nutzer. Diese Informationen benötigen Sie, 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 for BI mit den folgenden Schritten einrichten, die auf dieser Seite erläutert werden:

Mongo Connector for BI installieren

Installieren Sie den MongoDB Connector for BI auf demselben Server wie die MongoDB-Datenbank, wie auf der MongoDB-Dokumentationsseite Install BI Connector On Premises erläutert.

Netzwerk-Datenverkehr verschlüsseln

Für den MongoDB Connector for BI ist eine SSL-Verschlüsselung zwischen dem MongoDB-Server und der Looker-Anwendung erforderlich. Folgen Sie der SSL-Einrichtungsanleitung auf der MongoDB-Dokumentationsseite Configure SSL for BI Connector.

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 einen Nutzer für Looker mit db.createUser() und der Rolle readWrite:

use looker_database

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

MongoBI-JDBC-Treiberdateien installieren

Für beide MongoDB Connector for BI-Optionen müssen in Looker JDBC-Treiberdateien konfiguriert werden. Gehen Sie dazu so vor:

Laden Sie diese beiden JAR-Dateien herunter:

Folgen Sie der Anleitung auf der Dokumentationsseite Unverpackte JDBC-Treiber und verwenden Sie die folgenden Werte:

driver symbol: mongobi

driver entry:

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

Wenn Sie Looker 6.2 oder früher verwenden:

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

Für den Schritt, den Treiber im Verzeichnis Ihres Dialekts abzulegen, 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. Außerdem tragen sie erheblich zur Steigerung der Abfrageleistung bei. Auf höherer Ebene bieten die abgeleiteten Tabellen von Looker die Möglichkeit zur Erstellung neuer Tabellen, die noch nicht in Ihrer Datenbank vorhanden sind.

Der MongoDB Connector for BI unterstützt temporäre reguläre abgeleitete Tabellen, aber keine persistente abgeleitete Tabellen.

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

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

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 unten auf der Seite Verbindungseinstellungen im Bereich Statusdetails auf den Button Verbindung testen, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde.

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

SQL-Funktionen und -Operatoren mit MongoDB Connector for BI verwenden

Wenn Sie eine Verbindung mit einem MongoDB Connector for BI entwickeln, können Sie die SQL-Funktionen und -Operatoren verwenden, die in der MongoDB-Dokumentation aufgeführt sind.

Unterstützte JDBC-Parameter

Für den MongoDB Connector for BI unterstützt Looker die folgenden JDBC-Parameter im Feld Zusätzliche JDBC-Parameter 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.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

Außerdem gilt: