MongoSQL

Connectez Looker directement à votre cluster MongoSQL à l'aide du dialecte MongoSQL (basé sur l'interface MongoSQL). En connectant Looker à MongoSQL, vous pouvez analyser les données de document à l'aide de requêtes SQL relationnelles et créer des tableaux de bord Looker interactifs.

Looker inclut un pilote JDBC sous licence Apache 2.0 officiellement fourni pour l'interface MongoSQL. Contrairement à l'ancien dialecte MongoBI, aucune installation manuelle de fichiers JAR de pilote JDBC personnalisés non empaquetés n'est requise.

Prérequis et configuration de MongoSQL

Avant de créer une connexion dans Looker, procédez comme suit dans MongoSQL :

Créez un schéma relationnel à l'aide de l'outil de création de schéma SQL

MongoDB stocke les données dans un format de document flexible et non relationnel (JSON/BSON). Avant que Looker puisse interroger vos collections MongoDB à l'aide de SQL standard, vous devez utiliser l'outil de création de schéma SQL dans MongoSQL pour créer un schéma SQL.

L'interface MongoSQL s'appuie sur le schéma relationnel créé par l'outil de création de schéma SQL pour mapper les structures de document, les champs imbriqués et les tableaux aux tables, lignes et colonnes SQL standard. Sans schéma SQL actif, l'interface SQL ne pourra pas traduire les requêtes SQL par rapport à vos collections MongoDB.

Consultez la documentation de l'outil de création de schéma MongoSQL pour définir et publier vos schémas tabulaires avant de créer la connexion dans Looker.

Pour les instances MongoDB Enterprise sur site, utilisez l'interface de ligne de commande de l'outil de création de schéma SQL MongoDB pour définir vos schémas.

Ajoutez des adresses IP Looker à la liste d'accès IP Atlas

MongoSQL limite les connexions client aux adresses IP autorisées. Pour interroger MongoSQL à partir de votre instance Looker, vous devez ajouter vos adresses IP Looker à la liste d'accès IP Atlas en procédant comme suit :

  1. Obtenez la liste des adresses IP Looker pour la région de votre instance Looker.
  2. Ajoutez ces adresses IP à la liste d'accès IP de votre projet Atlas, conformément à la documentation sur la liste d'accès IP Atlas.

Créez un compte utilisateur MongoDB pour Looker

Utilisez la console Web MongoDB Atlas pour créer un compte utilisateur de base de données pour Looker en procédant comme suit :

  1. Connectez-vous à la console MongoDB Atlas.
  2. Dans le menu de navigation principal, sous Security (Sécurité), sélectionnez Database Access (Accès à la base de données).
  3. Cliquez sur Add New Database User (Ajouter un utilisateur de base de données).
  4. Sélectionnez Password (Mot de passe) comme méthode d'authentification. Saisissez un Username (Nom d'utilisateur) (par exemple, looker) et un mot de passe sécurisé.
  5. Sous Database User Privileges (Privilèges de l'utilisateur de base de données), sélectionnez Built-in Role (Rôle intégré) et attribuez le rôle read (ou des autorisations de lecture personnalisées) pour la base de données à laquelle Looker accédera.
  6. Cliquez sur Add User (Ajouter un utilisateur) pour enregistrer les identifiants de l'utilisateur.

Obtenez les paramètres de connexion SQL Atlas

Pour créer la connexion Looker, vous devrez saisir les paramètres de connexion pour la connexion SQL Atlas. Pour obtenir les informations sur les paramètres, procédez comme suit :

  1. Connectez-vous à la console MongoDB Atlas.
  2. Accédez à votre cluster, puis cliquez sur Connect (Se connecter).
  3. Sélectionnez Atlas SQL (ou Connect your application using SQL [Connecter votre application à l'aide de SQL]).
  4. Sélectionnez JDBC Driver (Pilote JDBC).
  5. Notez les exigences générées pour le Host (Hôte), le Port (généralement 27017), la Database (Base de données) et le protocole SSL. Vous saisirez ces informations lorsque vous créerez la connexion Looker.

Créez la connexion Looker à votre base de données

Pour établir la connexion entre Looker et MongoSQL, procédez comme suit :

  1. Dans la section Admin (Administration) de Looker, sélectionnez Connections (Connexions), puis cliquez sur Add Connection (Ajouter une connexion).
  2. 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. Certains paramètres sont décrits ci-dessous. Utilisez les valeurs par défaut dans tous les autres champs ou laissez-les vides.

    • Name (Nom) : saisissez un nom de connexion unique.
    • Dialect (Dialecte) : sélectionnez MongoSQL dans le menu déroulant.
    • Host (Hôte) : nom d'hôte fourni par l'interface MongoSQL (par exemple, <cluster-name>.a.query.mongodb.net).
    • Port : numéro de port pour Atlas SQL (par défaut : 27017).
    • Database (Base de données) : nom de la base de données pour laquelle vous avez créé un schéma à l'aide de l'outil de création de schéma SQL.
    • Username (Nom d'utilisateur) : nom d'utilisateur de la base de données créé pour Looker.
    • Password (Mot de passe) : mot de passe de l'utilisateur de la base de données.
    • SSL : activez SSL (ssl=true).
    • Additional JDBC parameters (Paramètres JDBC supplémentaires) : (facultatif) paramètres JDBC supplémentaires compatibles avec le pilote MongoDB, tels que authSource=admin ou connectTimeoutMS=10000. Consultez la section Paramètres JDBC compatibles.
  3. Pour vérifier la connectivité de la base de données, cliquez sur Test Connection (Tester la connexion).

  4. 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 de Looker Connections Admin.

Paramètres JDBC compatibles

Pour le dialecte MongoSQL, Looker est compatible avec les paramètres JDBC suivants dans le champ Additional JDBC parameters (Paramètres JDBC supplémentaires) :

  • appName
  • authSource
  • clientinfo
  • connectTimeoutMS
  • directConnection
  • disableclientcache
  • extjsonmode
  • heartbeatFrequencyMS
  • journal
  • localThresholdMS
  • maxIdleTimeMS
  • maxWaitTimeMS
  • readPreference
  • replicaSet
  • retryReads
  • retryWrites
  • serverSelectionTimeoutMS
  • socketTimeoutMS
  • ssl
  • tls
  • tlsAllowInvalidHostnames
  • tlsInsecure
  • w
  • wtimeoutMS

Limites des requêtes et comportement SQL

Lorsque vous créez des modèles LookML et interrogez MongoSQL à l'aide de l'interface SQL, gardez à l'esprit les caractéristiques de dialecte suivantes :

  • Exigence de l'outil de création de schéma SQL : comme indiqué dans les prérequis, les requêtes SQL nécessitent un schéma relationnel préconfiguré défini dans l'outil de création de schéma SQL Atlas.
  • Tables dérivées : les tables dérivées éphémères (régulières) sont compatibles, mais pas les tables dérivées persistantes (PDT).
  • Types de date et d'horodatage : le type de données date n'est pas compatible. La pratique standard consiste à stocker et à modéliser les dates en tant que champs timestamp.
  • Fuseaux horaires : tous les horodatages auxquels vous accédez à partir de l'interface MongoSQL sont traités en temps UTC. Looker ne convertit pas les fuseaux horaires dans la base de données pour les connexions MongoDB.

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.

Depuis Looker 26.16, MongoSQL est compatible avec les fonctionnalités suivantes :

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 dans l'exécuteur SQL
Décrire la table dans l'exécuteur SQL
Afficher les index dans l'exécuteur SQL
Sélectionner 10 dans l'exécuteur SQL
Compter dans l'exécuteur SQL
Expliquer le code 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