Migrer de MongoBI vers MongoSQL
Looker est désormais compatible avec MongoSQL et recommande de migrer de MongoDB Connector for BI vers MongoSQL.
En raison des différences de syntaxe SQL entre MongoDB Connector for BI (MongoBI) et MongoSQL, les modèles LookML existants qui utilisent des blocs SQL personnalisés, une mise en forme de date ou des fonctions de base de données peuvent nécessiter des ajustements de syntaxe. Ne passez pas directement une connexion de production existante à MongoSQL sans d'abord valider votre code LookML, car cela peut endommager les tableaux de bord, les Looks, les planifications ou les alertes.
Pour migrer en toute sécurité de MongoBI vers MongoSQL, procédez comme suit :
- Consultez les différences de syntaxe SQL entre MongoBI et MongoSQL dans la documentation MongoDB Passer d'Atlas BI Connector à MongoSQL.
- Créez une nouvelle connexion pour MongoSQL dans Looker en tant que connexion secondaire.
- Dans une nouvelle branche de développement de votre projet LookML, mettez à jour le paramètre
connectionde votre fichier de modèle pour qu'il pointe vers la nouvelle connexion MongoSQL. - Dans l'exécuteur SQL, testez et exécutez des exemples de requêtes à partir de vos explorations pour vérifier la syntaxe et les résultats des requêtes.
- Validez votre projet et votre contenu :
- Utilisez le validateur de contenu pour analyser tous les tableaux de bord et les Looks afin de détecter les champs ou les références endommagés.
- Utilisez le validateur SQL de Looker CI pour valider les dimensions de vos explorations par rapport à la base de données.
- Une fois les erreurs de validation résolues, déployez vos modifications en production.
Utiliser MongoDB Connector for BI (MongoBI)
Looker peut accéder à MongoDB à l'aide de MongoDB Connector for BI de deux manières :
- Utiliser MongoDB Connector for BI dans MongoDB Atlas.
- Utiliser un connecteur MongoDB pour BI installé sur le même serveur que la base de données MongoDB.
MongoDB Atlas
Votre MongoDB Atlas doit utiliser un cluster M10+. Pour que Looker utilise une base de données MongoDB exécutée sur MongoDB Atlas, vous devez utiliser le MongoDB Connector for BI (MongoBI). Pour activer le connecteur BI pour Atlas, MongoDB Atlas doit utiliser un cluster M10+.
Vous devez également créer un compte utilisateur disposant d'autorisations de lecture pour la base de données choisie.
Configurer MongoDB Connector for BI
Avant de créer une connexion dans Looker, votre administrateur MongoDB ou Atlas doit configurer MongoDB Connector for BI en procédant comme suit, comme expliqué sur cette page :
- Ajouter le serveur Looker à la liste d'accès IP Atlas
- Activer MongoDB Connector for BI
- Autoriser l'utilisation de tables dérivées régulières (recommandé)
Ajouter le serveur Looker à la liste d'accès IP Atlas
Atlas n'autorise les connexions client que depuis les entrées de la liste d'accès IP du projet. Ajoutez l'adresse IP Looker à la liste d'accès IP du projet Atlas :
- Obtenez l'adresse IP Looker.
- Suivez les instructions de configuration de la liste d'accès IP Atlas pour ajouter l'adresse IP Looker à la liste d'accès IP Atlas.
Activer MongoDB Connector for BI
Activez MongoDB Connector for BI :
- Vérifiez que vous utilisez un cluster M10+.
- Dans Atlas, ouvrez la page "Connect" (Se connecter) du cluster. Notez le nom d'hôte, le port et l'utilisateur. Vous devrez utiliser ces informations lors de la configuration de la connexion dans Looker.
MongoDB sur le même serveur
Avant de créer une connexion dans Looker, votre administrateur MongoDB doit configurer MongoDB et Mongo Connector for BI en procédant comme suit, comme expliqué sur cette page :
- Installer Mongo Connector for BI
- Chiffrer le trafic réseau
- Configurer l'utilisateur et les autorisations Looker
- Autoriser l'utilisation de tables dérivées régulières (recommandé)
Installer Mongo Connector for BI
Installez MongoDB Connector for BI sur le même serveur que la base de données MongoDB, comme expliqué sur la page de documentation MongoDB Installer BI Connector On Premises .
Chiffrer le trafic réseau
MongoDB Connector for BI nécessite l'utilisation du chiffrement SSL entre le serveur de MongoDB et l'application Looker. Suivez les instructions de configuration SSL sur la page de documentation MongoDB Configurer SSL pour BI Connector.
Configurer l'utilisateur et les autorisations Looker
Dans le shell MongoDB, saisissez la commande use pour passer à la base de données à laquelle Looker se connectera. Créez ensuite un utilisateur pour Looker avec db.createUser() avec le rôle readWrite :
use looker_database
db.createUser({ user: looker,
pwd: `some_password_here`,
roles: [ "readWrite" ]
})
Installer les fichiers du pilote JDBC MongoBI
Pour les deux options de MongoDB Connector for BI, Looker nécessite la configuration des fichiers du pilote JDBC en procédant comme suit :
Téléchargez ces deux fichiers JAR :
Suivez les étapes de la page de documentation Pilotes JDBC non empaquetés en utilisant les valeurs suivantes :
Symbole du pilote : mongobi
Entrée du pilote :
- name: mongobi
dir_name: mongobi
module_path: com.mysql.jdbc.Driver
override_jdbc_url_subprotocol: mysql
Si vous utilisez Looker 6.2 ou une version antérieure :
- name: maria15x
dir_name: mongobi
module_path: com.mysql.jdbc.Driver
override_jdbc_url_subprotocol: mysql
Pour l'étape consistant à placer le pilote dans le répertoire de votre dialecte, les chemins d'accès à ces fichiers se présentent comme suit :
looker/custom_jdbc_drivers/mongobi/mongosql-auth-1.0.0-rc0.jarlooker/custom_jdbc_drivers/mongobi/mysql-connector-java-5.1.47.jar
Autoriser l'utilisation de tables dérivées régulières (recommandé)
Les tables dérivées sont des outils importants de Looker, qui permettent de réaliser des analyses approfondies. Elles contribuent en outre à améliorer sensiblement les performances de requête. À un niveau élevé, la fonctionnalité de table dérivée de Looker permet de créer des tables qui n'existent pas encore dans votre base de données.
MongoDB Connector for BI est compatible avec les tables dérivées régulières temporaires regular derived tables, mais pas avec les tables dérivées persistantes persistent derived tables.
Étant donné que les tables dérivées régulières sont temporaires, elles n'ont pas besoin d'être stockées. Vous n'avez donc pas besoin de créer de schéma pour elles. Toutefois, vous devez accorder le rôle dbOwner au schéma looker_tmp, même s'il n'existe pas.
Suivez la section Modifier les utilisateurs MongoDB de cette page de documentation MongoDB sur la configuration des utilisateurs de base de données pour ajouter le rôle dbOwner sur looker_tmp pour l'utilisateur que Looker utilisera pour se connecter.
db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])
Créer la connexion Looker à votre base de données
Procédez comme suit pour créer la connexion entre Looker et votre base de données :
- Dans la section Admin de Looker, sélectionnez Connections (Connexions), puis cliquez sur Add Connection (Ajouter une connexion).
Sélectionnez MongoBI dans le menu déroulant Dialect (Dialecte).
Saisissez les informations de connexion. La majorité des paramètres sont communs à la plupart des dialectes de base de données. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
Pour vérifier que la connexion a réussi, cliquez sur le bouton Test Connection (Tester la connexion) dans la section Status details (Détails de l'état) en bas de la page Connections Settings (Paramètres de connexion).
Si Looker affiche Can Connect (Peut se connecter), appuyez sur Connect (Se connecter) pour créer la connexion.
Votre connexion de base de données est ensuite ajoutée à la liste de la page Connections Admin de Looker.
Utiliser des fonctions et des opérateurs SQL avec MongoDB Connector for BI
Lorsque vous développez à l'aide d'une connexion MongoDB Connector for BI, vous pouvez utiliser les fonctions et les opérateurs SQL listés dans la documentation MongoDB.
Paramètres JDBC compatibles
Pour MongoDB Connector for BI, Looker est compatible avec les paramètres JDBC suivants dans le Additional JDBC parameters (Paramètres JDBC supplémentaires) pour la connexion. Pour en savoir plus sur ces paramètres, consultez la documentation de votre base de données.
allowMultiQueriesappNameauthSourceautoReconnectcachePrepStmtscharacterEncodingconnectTimeoutconnectTimeoutMSelideSetAutoCommitsenabledSslProtocolSuitesenabledTLSProtocolsexplainSlowQueriesmaxAllowedPacketpasswordqueryInterceptorsqueryTimeoutKillsConnectionreplicaSetrewriteBatchedStatementssocketTimeoutsslsslModetcpKeepAliveuseCompressionuseCursorFetchuseLocalSessionStateuseruseServerPrepStmtsuseSSLverifyServerCertificatezeroDateTimeBehavior
Compatibilité avec les fonctionnalités
Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.
MongoBI est compatible avec les fonctionnalités suivantes à partir de Looker 26.16 :
| Fonctionnalité | Compatibilité |
|---|---|
| Looker (Google Cloud Core) | |
| Agrégations symétriques | |
| Tables dérivées | |
| Tables dérivées SQL persistantes | |
| Tables dérivées natives persistantes | |
| Vues stables | |
| Arrêt des requêtes | |
| Tableaux croisés dynamiques basés sur SQL | |
| Fuseaux horaires | |
| SSL | |
| Sous-totaux | |
| Paramètres JDBC supplémentaires | |
| Sensibilité à la casse | |
| Type de lieu | |
| Type de liste | |
| Centile | |
| Centile distinct | |
| Afficher les processus de l'exécuteur SQL | |
| Décrire la table de l'exécuteur SQL | |
| Afficher les index de l'exécuteur SQL | |
| Sélectionner 10 de l'exécuteur SQL | |
| Compter de l'exécuteur SQL | |
| Expliquer SQL | |
| Identifiants OAuth 2.0 | |
| Commentaires contextuels | |
| Regroupement de connexions | |
| Résumés HLL | |
| Reconnaissance d'agrégats | |
| Augmentation de tables PDT | |
| Millisecondes | |
| Microsecondes | |
| Vues matérialisées | |
| Mesures de variation par période | |
| Nombre approximatif d'éléments distincts | |
| Modèles analytiques dans la base de données | |
| Agendas personnalisés |
Autres caractéristiques :
- MongoDB n'est pas compatible avec les périodes de temps en millisecondes et en microsecondes pour les groupes de dimensions.
- MongoDB n'est pas compatible avec les types millisecondes, millisecondesX et microsecondes pour les dimensions.
- Looker traite tous les codes temporels auxquels il accède depuis MongoBI comme étant dans le fuseau horaire du temps universel coordonné (UTC).