Se connecter à Couchbase

Couchbase est une base de données orientée documents NoSQL. Utilisez le connecteur de données d'Analytics afin d'importer les données Couchbase de votre organisation.

Avant de commencer

Pour vous connecter à Couchbase, munissez-vous des éléments suivants :

  • au moins un noeud de votre instance Couchbase avec les services de requêtes et d'index activés ;
  • le nom d'hôte du serveur de bases de données ;
  • le port de connexion qui convient ;
  • les informations de connexion appropriées selon la méthode d'authentification que vous avez choisie

    Si votre instance Couchbase requiert une authentification, vous devez fournir une chaîne JSONou un fichier JSON spécifiant le nom et le mot de passe pour un ou plusieurs compartiments> Pour de plus amples informations, consultez la section Format d'authentification JSON .

  • un certificat SSL valide en cas de connexion via SSL.

Pour obtenir de l'aide concernant la réunion des conditions préalables à la connexion, contactez l'administrateur connecteur de votre organisation. Si votre administrateur n'est pas en mesure de vous aider, vous ou votre administrateur devez contactez votre Assistance connecteur.

Créer une connexion Couchbase

  1. Dans le menu principal Analytics, sélectionnez Importer > Base de données et application.
  2. Depuis l'onglet Nouvelles connexions, sous la section Connecteurs ACL, sélectionnez Couchbase.

    Astuce

    Vous pouvez filtrer la liste des connecteurs disponibles en indiquant une chaîne de recherche dans la zone Filtrer les connexions. Les connecteurs sont indiqués par ordre alphabétique.

  3. Dans le panneau Paramètres de connexion des données entrez les paramètres de connexion, et en bas du panneau, cliquez sur Enregistrer et connecter.

    Vous pouvez accepter le nom de connexion proposé par défaut ou en saisir un nouveau.

La connexion correspondant à votre connecteur est enregistrée dans l'onglet Connexions existantes. À l'avenir, vous pourrez vous reconnecter à votre connecteur à partir de la connexion enregistrée.

Une fois la connexion établie, la fenêtre Accès aux données s'ouvre sur la Zone de transit et vous pouvez commencer l'importation des données. Pour avoir de l'aide sur l'importation des données à partir de votre connecteur, consultez la section Importer des données à l'aide de la fenêtre Accès aux données.

Interroger l'instance Couchbase

Format d'authentification JSON 

[{"user" : "NomUtilisateur1", "pass" : "MotdePasse1"},
{"user" : "NomUtilisateur2", "pass" : "MotdePasse2"}]

Requêtes SQL et appels API N1QL

Le connecteur utilise des requêtes SQL normales auprès de Couchbase Server, en traduisant des requêtes standard SQL-92 en appels API client N1QL équivalents. Cette traduction autorise l'exécution de requêtes standard par rapport à votre instance Couchbase Server. Si une requête ne peut pas être entièrement traduite, les parties traduites de la requête sont transmises sous la forme d'une ou plusieurs requêtes N1QL à l'instance Couchbase Server pour le traitement tandis que les parties non traduites de la requête sont traitées par le Connecteur.

Remarque

Les noms des structures de données sont sensibles à la casse ; vous devez donc vérifier que la casse des structures comme les tables, les colonnes ou les compartiments dans vos requêtes correspondent aux structures dans la base de données.

Définition de schéma

Couchbase peut stocker des données qui suivent différentes règles de saisie de données et de structure par rapport aux tables et colonnes relationnelles traditionnelles. Les données Couchbase sont organisées en compartiments et en documents, qui peuvent contenir des tableaux imbriqués ou des tableaux d'éléments typés différemment. Ces données doivent être mappées à un formulaire relationnel. Pour ce faire, le connecteur génère une définition de schéma mappant les données Couchbase à un format compatible ODBC.

Lorsque vous vous connectez à une base de données qui ne présente pas déjà la définition de schéma nécessaire, le connecteur en génère une automatiquement en procédant comme suit :

  1. Pour chaque type de document identifié dans la base de données, le connecteur échantillonne les données de plusieurs documents pour détecter la structure des données.
  2. Le connecteur organise tous les documents en collections selon leur type et enregistre ces collections dans le cadre de la définition du schéma. À l'aide de la définition du schéma, le pilote affiche les collections sous forme de tables.
  3. Pour chaque tableau détecté dans la base de données, le connecteur génère une table virtuelle pour développer les données et enregistre ces tables virtuelles dans le cadre du schéma. À l'aide de la définition du schéma, le pilote affiche les tables virtuelles sous forme de tables normales.
  4. Le connecteur définit un type de données Couchbase pour chaque colonne et mappe chaque type de données Couchbase au type de données SQL le mieux à même de représenter le plus grand nombre de valeurs.

Tables de base

Les tables de base représentent les données issues des collections de documents Couchbase. Les documents s'affichent en lignes et tous les attributs qui ne sont pas des tableaux s'affichent en colonnes. Dans chaque table de base, le connecteur crée une colonne de clé primaire nommée PK qui identifie le document Couchbase dont provient chaque ligne.

Dans le connecteur, le nom de la table de base est le type de document qu'elle représente. Dans Couchbase, le nom de la table de base est le compartiment d'où proviennent les données.

Tables virtuelles

Les tables virtuelles apportent de l'assistance aux tableaux. Chaque table virtuelle contient les données d'un tableau et chaque ligne de la table représente un élément du tableau. Si un élément contient un tableau, le connecteur crée d'autres tables virtuelles si cela est nécessaire pour développer les données imbriquées.

Dans chaque table virtuelle, le connecteur crée un nom de colonne de clé primaire qui identifie le document d'où vient le tableau et qui référence la colonne de la table de base associée. Le connecteur crée aussi une colonne d'index (auquel le suffixe _IDX est ajouté à son nom) pour indiquer la place de l'élément dans le tableau.

Exemple

L'exemple suivant affiche les tables de base et les tables virtuelles que le connecteur génèrerait s'il se connectait à une base de données Couchbase nommée ExempleBasededonnées, contenant deux documents nommés Client_123221 et Commande_221354.

Le document Client_123221 est de type Client et contient les attributs suivants. L'attribut AdressesEnregistrées est un tableau :

{
  "Type": "Client",
  "Nom": "John Doe",
  "AdressesEnregistrées": ["123 Main St.", "456 1re Ave"]
}}

Le document Commande_221354 est de type Commande et contient les attributs suivants. L'attribut CarteCrédit est un objet et l'attribut Articles est un tableau d'objets :

{
  "Type": "Commande",
  "IDClient":"Client_123221",
  "CarteCrédit":
    {
      "Type":"Visa",
       "NuméroCarte":"4111 1111 1111 1111",
       "Expiration":"12/12",
       "CVN":"123"
    },
  "Articles":
    [
      {"IDArticle":89123, "Quantité":1},
      {"IDArticle":92312, "Quantité":5}
    ]
}}

Lorsqu'Analytics se connecte à ExempleBasededonnées et génère le schéma, le connecteur crée une collection pour chaque type de document et affiche ces collections sous la forme de deux tables de base, représentées ci-dessous :

Table de base Client

PK Nom
"Client_123221" John Doe

Table de base Commande

PK IDClient CarteCrédit_Type CarteCrédit_Numéro CarteCrédit_Expiration CarteCrédit_CVN
"Client_221354" "Client_123221" "Visa" "4111 1111 1111 1111" "12/12" "123"

Le tableau AdressesEnregistrées du document Client_123221 et le tableau Articles du document Commande_221354 n'apparaissent pas dans ces tables de base. À la place, le connecteur génère une table virtuelle pour chaque tableau :

Table AdressesEnregistrées

PK AdressesEnregistrées_IDX AdressesEnregistrées
"Client_123221" 0 "123 Main St."
"Client_123221" 1 "456 1re Ave"

Table Articles

PK Articles_IDX IDarticle Quantité
"Client_221354" 0 89123 1
"Client_221354" 1 92312 5
Aide d'Analytics 14.1