Couchbase

Le connecteur Couchbase vous permet de vous connecter à une instance de base de données Couchbase et d'effectuer les opérations de base de données compatibles.

Versions compatibles

  • Couchbase Server version 4.0 ou ultérieure (édition Enterprise ou Community)

  • Couchbase Capella

Avant de commencer

Avant d'utiliser le connecteur Couchbase, effectuez les tâches suivantes :

  • Dans votre projet Google Cloud :
    • Vérifiez que la connectivité réseau est configurée. Pour en savoir plus sur les modèles de réseau, consultez la section Connectivité réseau.
    • Attribuez le rôle IAM roles/connectors.admin à l'utilisateur qui configure le connecteur.
    • Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le connecteur :
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      Un compte de service est un compte Google spécial destiné à représenter un utilisateur non humain qui doit s'authentifier et obtenir les autorisations permettant d'accéder aux données des API Google. Si vous ne possédez pas de compte de service, vous devez en créer un. Pour plus d'informations, consultez la section Créer un compte de service.

    • Activez les services suivants :
      • secretmanager.googleapis.com (API Secret Manager)
      • connectors.googleapis.com (API Connectors)

      Pour savoir comment activer des services, consultez la page Activer des services.

    Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer lors de la configuration du connecteur.

  • Si nécessaire, créez un serveur Couchbase. Pour en savoir plus, consultez le guide de démarrage rapide de Couchbase Server.
  • Pour en savoir plus sur les API Couchbase, consultez la documentation de l'API REST Couchbase.
  • Si nécessaire, téléchargez le certificat SSL. Pour en savoir plus, consultez Connexion sécurisée avec TLS.

Configurer le connecteur

Pour configurer le connecteur, vous devez créer une connexion à votre source de données (système backend). Une connexion est spécifique à une source de données. Cela signifie que si vous disposez de nombreuses sources de données, vous devez créer une connexion distincte pour chacune d'elles. Pour créer une connexion, procédez comme suit :

  1. Dans la console Cloud, accédez à la page Integration Connectors > Connections (Connecteurs d'intégration > Connexions), puis sélectionnez ou créez un projet Google Cloud.

    Accéder à la page "Connexions"

  2. Cliquez sur + CRÉER pour ouvrir la page Créer une connexion.
  3. Dans la section Emplacement, choisissez l'emplacement de la connexion.
    1. Région : sélectionnez un emplacement dans la liste déroulante.

      Pour obtenir la liste de toutes les régions disponibles, consultez la page Emplacements.

    2. Cliquez sur NEXT (Suivant).
  4. Dans la section Informations de connexion, procédez comme suit :
    1. Connecteur : sélectionnez Couchbase dans la liste déroulante des connecteurs disponibles.
    2. Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
    3. Dans le champ Nom de connexion, saisissez un nom pour l'instance de connexion.

      Les noms de connexion doivent répondre aux critères suivants :

      • Les noms de connexion peuvent contenir des lettres, des chiffres ou des traits d'union.
      • Les lettres doivent être en minuscules.
      • Les noms de connexion doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
      • Les noms de connexion ne peuvent pas dépasser 49 caractères.
    4. Saisissez éventuellement une Description pour l'instance de connexion.
    5. Vous pouvez également activer Cloud Logging, puis sélectionner un niveau de journalisation. Par défaut, le niveau de journalisation est défini sur Error.
    6. Compte de service : sélectionnez un compte de service disposant des rôles requis.
    7. Vous pouvez également configurer les paramètres du nœud de connexion :

      • Nombre minimal de nœuds : saisissez le nombre minimal de nœuds de connexion.
      • Nombre maximal de nœuds : saisissez le nombre maximal de nœuds de connexion.

      Un nœud est une unité (ou instance répliquée) de connexion qui traite des transactions. Pour traiter plus de transactions pour une connexion, plus de nœuds sont nécessaires. À l'inverse, moins de nœuds sont nécessaires pour traiter moins de transactions. Pour comprendre comment les nœuds affectent la tarification de votre connecteur, consultez la section Tarifs des nœuds de connexion. Si vous ne saisissez aucune valeur, le nombre minimal de nœuds est défini par défaut sur 2 (pour une meilleure disponibilité) et le nombre maximal sur 50.

    8. Autoriser les paramètres JSON : permet d'utiliser du code JSON brut dans les paramètres lorsque QueryPassthrough est activé.
    9. Port Analytics : port permettant de se connecter au point de terminaison Couchbase Analytics.
    10. Séparateur pour les enfants : caractère(s) utilisé(s) pour indiquer les tables enfants.
    11. Service Couchbase : détermine le service Couchbase auquel se connecter. La valeur par défaut est N1QL. Les options disponibles sont N1QL et Analytics.
    12. Créer un quota de RAM par table : quota de RAM par défaut, en mégaoctets, à utiliser lors de l'insertion de buckets via la syntaxe CREATE TABLE.
    13. Séparateur Dataverse : caractère(s) utilisé(s) pour désigner les dataverses et champs d'application/collections Analytics.
    14. Séparateur de type : caractère(s) utilisé(s) pour désigner les types.
    15. Port N1QL : port permettant de se connecter au point de terminaison N1QL de Couchbase.
    16. Séparateur de périodes : caractère(s) utilisé(s) pour traduire la hiérarchie.
    17. Délai avant expiration de l'exécution de la requête : définit le délai côté serveur avant expiration de la requête, qui régit la durée pendant laquelle Couchbase exécutera la requête avant de renvoyer une erreur d'expiration de délai.
    18. Comparaison stricte : ajuste la précision de la traduction des filtres sur les requêtes d'entrée SQL en requêtes Couchbase. Ce paramètre peut être défini sur une liste de valeurs séparées par des virgules, où chaque valeur peut être : une date, un nombre, un booléen ou une chaîne.
    19. Durabilité des transactions : spécifie la manière dont un document doit être stocké pour qu'une transaction aboutisse. Indique s'il faut utiliser des transactions N1QL lors de l'exécution de requêtes.
    20. Délai avant expiration de la transaction : définit la durée pendant laquelle une transaction peut s'exécuter avant que Couchbase ne la fasse expirer.
    21. Utiliser des collections pour le LDD : indique s'il faut supposer que les instructions CREATE TABLE utilisent des collections plutôt que des types. Ne prend effet que si vous vous connectez à Couchbase v7+ et GenerateSchemaFiles est défini sur OnCreate.
    22. Utiliser des transactions : indique s'il faut utiliser des transactions N1QL lors de l'exécution de requêtes.
    23. Valider les paramètres JSON : permet au fournisseur de vérifier que les paramètres de chaîne sont des données JSON valides avant d'envoyer la requête à Couchbase.
    24. Utiliser un proxy : cochez cette case pour configurer un serveur proxy pour la connexion, et spécifiez les valeurs suivantes :
      • Schéma d'authentification du proxy : sélectionnez le type d'authentification pour l'authentification auprès du serveur proxy. Les types d'authentification suivants sont compatibles :
        • Basique : authentification HTTP de base.
        • Condensé : authentification HTTP par condensé.
      • Utilisateur du proxy : nom d'utilisateur à utiliser pour l'authentification auprès du serveur proxy.
      • Mot de passe du proxy : secret Secret Manager du mot de passe de l'utilisateur.
      • Type SSL du proxy : type SSL à utiliser lors de la connexion au serveur proxy. Les types d'authentification suivants sont compatibles :
        • Auto : paramètre par défaut. Dans le cas d'une URL HTTPS, l'option "Tunnel" est utilisée. Dans le cas d'une URL HTTP, l'option "JAMAIS" est utilisée.
        • Toujours : la connexion SSL est toujours activée.
        • Jamais : la connexion n'est pas activée pour SSL.
        • Tunnel : la connexion s'effectue via un proxy de tunnelisation. Le serveur proxy ouvre une connexion à l'hôte distant et le trafic transite par le proxy.
      • Dans la section Serveur proxy, saisissez les détails du serveur proxy.
        1. Cliquez sur + Ajouter une destination.
        2. Sélectionnez un type de destination.
          • Adresse de l'hôte : spécifiez le nom d'hôte ou l'adresse IP de la destination.

            Si vous souhaitez établir une connexion privée à votre système backend, procédez comme suit :

    25. Vous pouvez également cliquer sur + AJOUTER UN LIBELLÉ pour ajouter un libellé à la connexion sous la forme d'une paire clé/valeur.
    26. Cliquez sur NEXT (Suivant).
  5. Dans la section Destinations, saisissez les informations concernant l'hôte distant (système backend) auquel vous souhaitez vous connecter.
    1. Type de destination : sélectionnez un type de destination.
      • Sélectionnez Adresse hôte dans la liste pour spécifier le nom d'hôte ou l'adresse IP de la destination.
      • Si vous souhaitez établir une connexion privée à vos systèmes backend, sélectionnez Rattachement du point de terminaison dans la liste, puis sélectionnez le rattachement du point de terminaison requis dans la liste Rattachement du point de terminaison.

      Si vous souhaitez établir une connexion publique à vos systèmes backend avec une sécurité supplémentaire, vous pouvez envisager de configurer des adresses IP sortantes statiques pour vos connexions, puis de configurer vos règles de pare-feu pour ajouter à la liste d'autorisation uniquement les adresses IP statiques spécifiques.

      Pour saisir d'autres destinations, cliquez sur + AJOUTER UNE DESTINATION.

    2. Cliquez sur NEXT (Suivant).
  6. Dans la section Authentification, saisissez les informations d'authentification.
    1. Sélectionnez un type d'authentification, puis saisissez les informations appropriées.

      Les types d'authentification suivants sont compatibles avec la connexion Couchbase :

      • Nom d'utilisateur et mot de passe
    2. Pour comprendre comment configurer ces types d'authentification, consultez la section Configurer l'authentification.

    3. Cliquez sur NEXT (Suivant).
  7. Vérifiez vos informations de connexion et d'authentification.
  8. Cliquez sur Créer.

Configurer l'authentification

Saisissez les détails en fonction de l'authentification que vous souhaitez utiliser.

  • Nom d'utilisateur et mot de passe
    • Nom d'utilisateur : nom d'utilisateur du connecteur
    • Mot de passe : Secret de Secret Manager contenant le mot de passe associé au connecteur.
    • UseSSL : ce champ indique si SSL est activé.
    • SSLServerCert : SSLServerCert pour le connecteur Couchbase.
    • Schéma d'authentification : schéma d'authentification pour le connecteur Couchbase.
    • Mode de connexion : détermine comment se connecter au serveur Couchbase. Doit être défini sur Direct ou Cloud. Pour Cloud, SSL est obligatoire. Pour en savoir plus, consultez la section Sécuriser les connexions avec TLS.
    • Serveur DNS : détermine le serveur DNS à utiliser lors de la récupération d'informations cloud Couchbase. Exemple :8.8.8.8

Exemples de configuration de connexion

Cette section présente des exemples de valeurs pour les différents champs que vous configurez lorsque vous créez le connecteur Couchbase.

SSL : type de connexion par certificat

Nom du champ Détails
Région us-central1
Connecteur Couchbase
Version du connecteur 1
Nom du connecteur Couchbase-basic-auth-conn
Compte de service NAME-compute@developer.gserviceaccount.com
Niveau de verbosité 5
Paramètres du nœud de connexion : Nombre minimal/maximal de nœuds 2/50
Configuration SSL Activer SSL Vrai
Magasin de confiance Privé
Magasin de confiance personnalisé Un certificat PEM complet (-----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----)
Version du secret 1
Adresse de l'hôte xx.1HOST_NAME.cloud.couchbase.com:18xxx
Authentification Mot de passe utilisateur
Nom d'utilisateur username
Mot de passe password
versions 1
Mode vConnection Cloud
Serveur DNS 192.0.2.0
Schéma OAuth De base

Type de connexion Couchbase Analytics

Nom du champ Détails
Région us-central1
Connecteur Couchbase
Version du connecteur 1
Nom du connecteur Couchbase-basic-auth-Analytics-conn
Compte de service NAME-compute@developer.gserviceaccount.com
Port Analytics 18095
Service Couchbase Analytics
Niveau de verbosité 5
Paramètres du nœud de connexion : Nombre minimal/maximal de nœuds 2/50
Adresse de l'hôte xx.1HOST_NAME.cloud.couchbase.com:18095
Authentification Mot de passe utilisateur
Nom d'utilisateur username
Mot de passe password
versions 1
Mode vConnection Cloud
Serveur DNS 192.0.2.0
Schéma OAuth De base

Entités, opérations et actions

Tous les connecteurs Integration Connectors fournissent une couche d'abstraction pour les objets de l'application connectée. Vous ne pouvez accéder aux objets d'une application que via cette abstraction. L'abstraction vous est présentée en tant qu'entités, opérations et actions.

  • Entité : une entité peut être considérée comme un objet ou un ensemble de propriétés dans l'application ou le service connecté. La définition d'une entité diffère d'un connecteur à l'autre. Par exemple, dans un connecteur de base de données, les tables sont les entités, dans un connecteur de serveur de fichiers, les dossiers sont les entités et, dans un connecteur de système de messagerie, les files d'attente sont les entités.

    Toutefois, il est possible qu'un connecteur ne soit pas compatible ou ne possède aucune entité. Dans ce cas, la liste Entities est vide.

  • Opération : une opération est l'activité que vous pouvez effectuer sur une entité. Vous pouvez effectuer l'une des opérations suivantes sur une entité :

    La sélection d'une entité dans la liste disponible génère une liste d'opérations disponibles pour l'entité. Pour obtenir une description détaillée des opérations, consultez les opérations d'entité de la tâche de connecteur. Toutefois, si un connecteur n'est pas compatible avec l'une des opérations d'entité, ces opérations non compatibles ne sont pas listées dans la liste Operations.

  • Action : une action est une fonction de première classe mise à la disposition de l'intégration via l'interface du connecteur. Une action vous permet de modifier une ou plusieurs entités, et varie d'un connecteur à l'autre. Normalement, une action comporte des paramètres d'entrée et un paramètre de sortie. Toutefois, il est possible qu'un connecteur ne prenne en charge aucune action, auquel cas la liste Actions est vide.

Actions

Ce connecteur permet d'exécuter les actions suivantes:

  • Procédures et fonctions stockées définies par l'utilisateur Si vous avez des procédures et des fonctions stockées dans votre backend, elles sont listées dans la colonne Actions de la boîte de dialogue Configure connector task.
  • Requêtes SQL personnalisées Pour exécuter des requêtes SQL personnalisées, le connecteur fournit l'action Exécuter une requête personnalisée.

    Pour créer une requête enregistrée, procédez comme suit :

    1. Suivez les instructions détaillées pour ajouter une tâche de connecteurs.
    2. Lorsque vous configurez la tâche de connecteur, sélectionnez Actions dans le type d'action à effectuer.
    3. Dans la liste Action, sélectionnez Exécuter une requête personnalisée, puis cliquez sur OK.

      image montrant une requête execute-custom-query-action image montrant une requête execute-custom-query-action

    4. Développez la section Entrée de la tâche, puis procédez comme suit :
      1. Dans le champ Délai d'inactivité après, saisissez le nombre de secondes d'attente jusqu'à l'exécution de la requête.

        Valeur par défaut : 180 secondes.

      2. Dans le champ Nombre maximal de lignes, saisissez le nombre maximal de lignes à renvoyer à partir de la base de données.

        Valeur par défaut : 25

      3. Pour mettre à jour la requête personnalisée, cliquez sur Modifier le script personnalisé. La boîte de dialogue Éditeur de script s'affiche.

        image montrant une requête custom-sql-query image montrant une requête custom-sql-query

      4. Dans la boîte de dialogue Éditeur de script, saisissez la requête SQL, puis cliquez sur Enregistrer.

        Vous pouvez utiliser un point d'interrogation (?) dans une instruction SQL pour représenter un seul paramètre devant être spécifié dans la liste des paramètres de requête. Par exemple, la requête SQL suivante sélectionne toutes les lignes de la table Employees correspondant aux valeurs spécifiées pour la colonne LastName :

        SELECT * FROM Employees where LastName=?

      5. Si vous avez utilisé des points d'interrogation dans votre requête SQL, vous devez ajouter le paramètre en cliquant sur + Ajouter un nom de paramètre pour chaque point d'interrogation. Lors de l'exécution de l'intégration, ces paramètres remplacent les points d'interrogation (?) de la requête SQL de manière séquentielle. Par exemple, si vous avez ajouté trois points d'interrogation (?), vous devez ajouter trois paramètres dans l'ordre.

        image montrant un ajout add-query-param image montrant un ajout add-query-param

        Pour ajouter des paramètres de requête, procédez comme suit :

        1. Dans la liste Type, sélectionnez le type de données du paramètre.
        2. Dans le champ Valeur, saisissez la valeur du paramètre.
        3. Pour ajouter plusieurs paramètres, cliquez sur + Ajouter un paramètre de requête.

Limites du système

Le connecteur Couchbase peut traiter 25 transactions par seconde et par nœud, et limite les transactions au-delà de cette limite. Par défaut, les connecteurs d'intégration allouent deux nœuds (pour une meilleure disponibilité) à une connexion.

Pour en savoir plus sur les limites applicables à Integration Connectors, consultez la section Limites.

Actions

Cette section répertorie les actions compatibles avec le connecteur. Pour savoir comment configurer les actions, consultez Exemples d'actions.

Action AddDocument

Cette action ajoute des documents dans Couchbase.

Paramètres d'entrée de l'action AddDocument

Nom du paramètre Type de données Obligatoire Description
BucketName Chaîne Oui Bucket dans lequel insérer le document.
SourceTable Objet Non Nom de la table temporaire contenant les colonnes d'ID et de document. Obligatoire si aucun ID n'est spécifié.
ID Chaîne Non Clé primaire sous laquelle insérer le document. Obligatoire si aucune table source n'est spécifiée.
Document Chaîne Non Texte JSON du document à insérer. Obligatoire si SourceTable n'est pas spécifié.

Paramètres de sortie de l'action AddDocument

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action AddDocument, consultez la section Exemples d'actions.

Action "CreateCollection"

Cette action crée une collection dans un champ d'application existant.

Paramètres d'entrée de l'action CreateCollection

Nom du paramètre Type de données Obligatoire Description
Bucket Chaîne Oui Nom du bucket contenant la collection.
Champ d'application Chaîne Oui Nom du champ d'application contenant la collection.
Nom Chaîne Oui Nom de la collection à créer.

Paramètres de sortie de l'action CreateCollection

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action CreateCollection, consultez la section Exemples d'actions.

Action DeleteCollection

Cette action supprime une collection dans un champ d'application existant.

Paramètres d'entrée de l'action DeleteCollection

Nom du paramètre Type de données Obligatoire Description
Bucket chaîne Vrai Nom du bucket contenant la collection.
Champ d'application Chaîne Vrai Nom du champ d'application contenant la collection.
Nom chaîne Vrai Nom de la collection à supprimer.

Paramètres de sortie de l'action DeleteCollection

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action DeleteCollection, consultez la section Exemples d'actions.

Action CreateScope

Cette action crée un champ d'application dans un bucket existant.

Paramètres d'entrée de l'action CreateScope

Nom du paramètre Type de données Obligatoire Description
Bucket Chaîne Oui Nom du bucket contenant le champ d'application
Nom Chaîne Oui Nom du champ d'application à créer.

Paramètres de sortie de l'action CreateScope

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action CreateScope, consultez la section Exemples d'actions.

Action DeleteScope

Cette action supprime un champ d'application et toutes ses collections.

Paramètres d'entrée de l'action DeleteScope

Nom du paramètre Type de données Obligatoire Description
Bucket Chaîne Oui Nom du bucket contenant le champ d'application.
Nom Chaîne Oui Nom du champ d'application à supprimer.

Paramètres de sortie de l'action DeleteScope

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action DeleteScope, consultez la section Exemples d'actions.

Action ListIndices

Cette action liste tous les indices disponibles dans Couchbase.

Paramètres d'entrée de l'action ListIndices

N/A

Paramètres de sortie de l'action ListIndices

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action ListIndices, consultez la section Exemples d'actions.

Action "ManageIndices" (Gérer les index)

Cette action crée ou supprime un indice dans un bucket.

Paramètres d'entrée de l'action ManageIndices

Nom du paramètre Type de données Obligatoire Description
BucketName Chaîne Oui Bucket cible à partir duquel créer ou supprimer l'index.
ScopeName objet Non Étendue cible à partir de laquelle créer ou supprimer l'index (version 7 de Couchbase ou ultérieure)
CollectionName Chaîne Non Collection cible à partir de laquelle créer ou supprimer l'index (version 7 de Couchbase ou ultérieure)
Action Chaîne Oui Indique l'action à effectuer sur l'index. Peut être "Create" (Créer) ou "Drop" (Supprimer).
Expressions Chaîne Non Liste d'expressions ou de fonctions, encodées au format JSON, sur lesquelles l'index sera basé. Vous devez en indiquer au moins un si la valeur de "IsPrimary" est définie sur "false" et que l'action est "Create" (Créer).
Nom Chaîne Non Nom de l'index à créer ou à supprimer. Obligatoire si la valeur de "IsPrimary" est définie sur "false".
IsPrimary Chaîne Non Indique si l'index doit être un index principal.La valeur par défaut est "true".
Filtres Chaîne Non Liste de filtres, encodés au format JSON, à appliquer à l'index.
IndexType Chaîne Non Type d'index à créer (GSI ou vue). Ne s'utilise que si l'action est "Créer". La valeur par défaut est GSI.
ViewName Chaîne Non Obsolète, inclus uniquement pour la compatibilité. Ne fait rien.
Nœuds Chaîne Non Une liste, encodée au format JSON, des nœuds à inclure dans l'index doit contenir le port. Utilisé uniquement si l'action est "Créer".
NumReplica Chaîne Non Nombre de réplicas à créer parmi les nœuds d'index du cluster.

Paramètres de sortie de l'action ManageIndices

Cette action renvoie l'état 200 (OK) si elle aboutit.

Pour savoir comment configurer l'action ManageIndices, consultez la section Exemples d'actions.

Action ExecuteCustomQuery

Cette action vous permet d'exécuter une requête personnalisée.

Pour créer une requête enregistrée, procédez comme suit :

  1. Suivez les instructions détaillées pour ajouter une tâche de connecteurs.
  2. Lorsque vous configurez la tâche de connecteur, sélectionnez Actions dans le type d'action à effectuer.
  3. Dans la liste Action, sélectionnez Exécuter une requête personnalisée, puis cliquez sur OK.

    image montrant une requête execute-custom-query-action image montrant une requête execute-custom-query-action

  4. Développez la section Entrée de la tâche, puis procédez comme suit :
    1. Dans le champ Délai d'inactivité après, saisissez le nombre de secondes d'attente jusqu'à l'exécution de la requête.

      Valeur par défaut : 180 secondes.

    2. Dans le champ Nombre maximal de lignes, saisissez le nombre maximal de lignes à renvoyer à partir de la base de données.

      Valeur par défaut : 25

    3. Pour mettre à jour la requête personnalisée, cliquez sur Modifier le script personnalisé. La boîte de dialogue Éditeur de script s'affiche.

      image montrant une requête custom-sql-query image montrant une requête custom-sql-query

    4. Dans la boîte de dialogue Éditeur de script, saisissez la requête SQL, puis cliquez sur Enregistrer.

      Vous pouvez utiliser un point d'interrogation (?) dans une instruction SQL pour représenter un seul paramètre devant être spécifié dans la liste des paramètres de requête. Par exemple, la requête SQL suivante sélectionne toutes les lignes de la table Employees correspondant aux valeurs spécifiées pour la colonne LastName :

      SELECT * FROM Employees where LastName=?

    5. Si vous avez utilisé des points d'interrogation dans votre requête SQL, vous devez ajouter le paramètre en cliquant sur + Ajouter un nom de paramètre pour chaque point d'interrogation. Lors de l'exécution de l'intégration, ces paramètres remplacent les points d'interrogation (?) de la requête SQL de manière séquentielle. Par exemple, si vous avez ajouté trois points d'interrogation (?), vous devez ajouter trois paramètres dans l'ordre.

      image montrant un ajout add-query-param image montrant un ajout add-query-param

      Pour ajouter des paramètres de requête, procédez comme suit :

      1. Dans la liste Type, sélectionnez le type de données du paramètre.
      2. Dans le champ Valeur, saisissez la valeur du paramètre.
      3. Pour ajouter plusieurs paramètres, cliquez sur + Ajouter un paramètre de requête.

En cas d'exécution réussie, cette action renvoie l'état 200 (OK) avec un corps de réponse contenant les résultats de la requête.

Exemples d'actions

Cette section explique comment effectuer certaines actions dans ce connecteur.

Exemple : Ajouter un document

Cet exemple ajoute un document dans un bucket Couchbase.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action AddDocument, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "Document": "{\"ID\":10,\"Name\":\"TestDoc\"}",
    "BucketName": "CouchbaseTestBucket",
    "ID": "Test"
    }
  4. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche AddDocument aura une valeur semblable à celle-ci:

    [{
    "RowsAffected": "1"
    }]

Exemple : Créer une collection

Cet exemple crée une collection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action CreateCollection, puis cliquez sur OK.
  3. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "bucket": "CouchbaseTestBucket",
    "scope": "TestScope",
    "name": "CollectionFromGoogleCloud"
    }
  4. Cet exemple crée une collection sous TestScope. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche CreateCollection aura une valeur semblable à celle-ci:

    [{
    "Success": true,
    "scope": null,
    "uid": null,
    "collection": null,
    "collections.uid": null,
    "maxTTL": null,
    "history": null
    }]

Exemple : Supprimer une collection

Cet exemple supprime une collection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action DeleteCollection, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "bucket": "CouchbaseTestBucket",
    "scope": "TestScope",
    "name": "CollectionFromGoogleCloud"
    }
  4. Cet exemple supprime une collection sous TestScope. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche CreateCollection aura une valeur semblable à celle-ci:

    [{
    "Success": true,
    "uid": "12"
    }]

Exemple : Créer un niveau d'accès

Cet exemple crée un champ d'application.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action CreateScope, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "bucket": "CouchbaseTestBucket",
    "name": "ScopeFromGoogleCloud"
    }
  4. Cet exemple crée un champ d'application sous CouchbaseTestBucket. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche CreateScope aura une valeur semblable à celle-ci:

    [{
    "Success": true,
    "name": null,
    "uid": null,
    "collections": null,
    "collections.name": null,
    "collections.uid": null,
    "collections.maxTTL": null,
    "collections.history": null
    }]

Exemple : Supprimer un champ d'application

Cet exemple supprime un champ d'application.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action DeleteScope, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "bucket": "CouchbaseTestBucket",
    "name": "ScopeFromGoogleCloud"
    }
  4. Cet exemple supprime le champ d'application ScopeFromGoogleCloud. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche DeleteScope aura une valeur semblable à celle-ci:

    [{
    "Success": true,
    "uid": "10"
    }]

Exemple : Répertorier les index

Cet exemple liste tous les indices disponibles dans Couchbase.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action ListIndices, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    }
  4. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche ListIndices aura une valeur semblable à celle-ci:

    [{
    "id": "3d8a78cd2e302ac2",
    "datastore_id": "http://127.0.0.1:8091",
    "namespace_id": "default",
    "bucket_id": null,
    "scope_id": null,
    "keyspace_id": "CouchbaseTestBucket",
    "index_key": "",
    "condition": null,
    "is_primary": "false",
    "name": "test",
    "state": "online",
    "using": "gsi"
    }, {
    "id": "d6ce8c103b97a00d",
    "datastore_id": "http://127.0.0.1:8091",
    "namespace_id": "default",
    "bucket_id": "CouchbaseTestBucket",
    "scope_id": "TestScope",
    "keyspace_id": "CouchBaseDatatypes",
    "index_key": "",
    "condition": null,
    "is_primary": "true",
    "name": "#primary",
    "state": "online",
    "using": "gsi"
    },
    {
    "id": "58c25aef49dd32b3",
    "datastore_id": "http://127.0.0.1:8091",
    "namespace_id": "default",
    "bucket_id": "CouchbaseTestBucket",
    "scope_id": "TestScope",
    "keyspace_id": "TestCollection",
    "index_key": "",
    "condition": null,
    "is_primary": "false",
    "name": "SearchIndexTest_1",
    "state": "online",
    "using": "fts"
    }]

Exemple : Gérer les index

Cet exemple supprime un indice du bucket spécifié.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action ManageIndices, puis cliquez sur OK.
  3. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "BucketName": "CouchbaseTestBucket",
    "Action": "DROP",
    "Name": "CouchBaseTestIndex"
    }
  4. Si l'action réussit, le paramètre de réponse connectorOutputPayload de la tâche ManageIndices aura une valeur semblable à celle-ci:

    [{
    "Success": "true"
    }]

Exemples d'opérations d'entité

Cette section explique comment effectuer certaines opérations d'entité dans ce connecteur.

Exemple : Répertorier tous les enregistrements

Cet exemple liste tous les enregistrements de l'entité TestCollection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez TestCollection dans la liste Entity.
  3. Sélectionnez l'opération List, puis cliquez sur OK.
  4. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), vous pouvez filtrer votre ensemble de résultats en spécifiant une clause de filtre. Spécifiez toujours la valeur de la clause de filtre entre guillemets simples (').

Exemple : Obtenir un enregistrement à partir d'une entité

Cet exemple récupère un enregistrement avec l'ID spécifié à partir de l'entité TestCollection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez TestCollection dans la liste Entity.
  3. Sélectionnez l'opération Get, puis cliquez sur OK.
  4. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur EntityId, puis saisissez 120 dans le champ Default Value (Valeur par défaut).

    Ici, 120 est un ID d'enregistrement unique dans l'entité TestCollection.

Exemple : Mettre à jour un enregistrement dans une entité

Cet exemple met à jour un enregistrement dans l'entité TestCollection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez TestCollection dans la liste Entity.
  3. Sélectionnez l'opération Update, puis cliquez sur OK.
  4. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champ Default Value:
    {
    "COL_TEXT": "CouchBase Update"
    }
  5. Cliquez sur entityId, puis saisissez 120 dans le champ Default Value (Valeur par défaut).

    Si l'intégration aboutit, le champ connectorOutputPayload de votre tâche de connecteur aura une valeur semblable à celle-ci:

    [{
    "Document.Id": "120"
    }]

Exemple : Supprimer un enregistrement d'une entité

Cet exemple supprime l'enregistrement associé à l'ID spécifié dans l'entité TestCollection.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez TestCollection dans la liste Entity.
  3. Sélectionnez l'opération Delete, puis cliquez sur OK.
  4. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur entityId, puis saisissez 20 dans le champ Default Value (Valeur par défaut).

Problèmes connus

L'opération create sur les entités n'est pas compatible.

Utiliser Terraform pour créer des connexions

Vous pouvez utiliser la ressource Terraform pour créer une connexion.

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

Pour consulter un exemple de modèle Terraform permettant de créer une connexion, consultez l'exemple de modèle.

Lorsque vous créez cette connexion à l'aide de Terraform, vous devez définir les variables suivantes dans votre fichier de configuration Terraform:

Nom du paramètre Type de données Requis Description
allow_jsonparameters BOOLÉEN Faux Permet d'utiliser du code JSON brut dans les paramètres lorsque QueryPassthrough est activé.
analytics_port STRING Faux Port permettant de se connecter au point de terminaison Couchbase Analytics.
child_separator STRING Faux Caractère ou caractères utilisés pour indiquer les tables enfants.
couchbase_service ENUM Faux Détermine le service Couchbase auquel se connecter. La valeur par défaut est N1QL. Les options disponibles sont N1QL et Analytics. Valeurs acceptées: N1QL, Analytics
create_table_ram_quota STRING Faux Quota de RAM par défaut, en mégaoctets, à utiliser lors de l'insertion de buckets via la syntaxe CREATE TABLE.
dataverse_separator STRING Faux Caractère ou caractères utilisés pour désigner les dataverses et champs d'application/collections Analytics.
flavor_separator STRING Faux Caractère ou caractères utilisés pour désigner les saveurs.
n1_qlport STRING Faux Port permettant de se connecter au point de terminaison N1QL de Couchbase.
periods_separator STRING Faux Caractère ou caractères utilisés pour traduire la hiérarchie.
query_execution_timeout STRING Faux Définit le délai avant expiration côté serveur de la requête, qui régit la durée pendant laquelle Couchbase exécutera la requête avant de renvoyer une erreur d'expiration de délai.
strict_comparison STRING Faux Ajuste la précision de la traduction des filtres sur les requêtes d'entrée SQL en requêtes Couchbase. Ce paramètre peut être défini sur une liste de valeurs séparées par des virgules, où chaque valeur peut être : une date, un nombre, un booléen ou une chaîne.
transaction_durability STRING Faux Spécifie la manière dont un document doit être stocké pour qu'une transaction aboutisse. Indique s'il faut utiliser des transactions N1QL lors de l'exécution de requêtes.
transaction_timeout STRING Faux Définit la durée pendant laquelle une transaction peut s'exécuter avant que Couchbase ne la fasse expirer.
use_collections_for_ddl BOOLÉEN Faux Indique s'il faut supposer que les instructions CREATE TABLE utilisent des collections plutôt que des types. Ne prend effet que si vous vous connectez à Couchbase v7+ et GenerateSchemaFiles est défini sur OnCreate.
use_transactions STRING Faux Indique s'il faut utiliser des transactions N1QL lors de l'exécution de requêtes.
validate_jsonparameters BOOLÉEN Faux Permet au fournisseur de vérifier que les paramètres de chaîne sont des données JSON valides avant d'envoyer la requête à Couchbase.
proxy_enabled BOOLÉEN Faux Cochez cette case pour configurer un serveur proxy pour la connexion.
proxy_auth_scheme ENUM Faux Type d'authentification à utiliser pour s'authentifier auprès du proxy ProxyServer. Les valeurs acceptées sont: BASIC, DIGEST et NONE.
proxy_user STRING Faux Nom d'utilisateur à utiliser pour s'authentifier auprès du proxy ProxyServer.
proxy_password SECRET Faux Mot de passe à utiliser pour s'authentifier auprès du proxy ProxyServer.
proxy_ssltype ENUM Faux Type SSL à utiliser lors de la connexion au proxy ProxyServer. Les valeurs acceptées sont: AUTO, ALWAYS, NEVER et TUNNEL.
verbosité STRING Faux Niveau de verbosité de la connexion, compris entre 1 et 5. Un niveau de verbosité plus élevé consigne tous les détails de la communication (requête,réponse et certificats SSL).

Utiliser la connexion Couchbase dans une intégration

Une fois la connexion créée, elle devient disponible à la fois dans Apigee Integration et Application Integration. Vous pouvez utiliser la connexion dans une intégration via la tâche Connecteurs.

  • Pour savoir comment créer et utiliser la tâche Connecteurs dans Apigee Integration, consultez la section Tâche Connecteurs.
  • Pour savoir comment créer et utiliser la tâche Connecteurs dans Application Integration, consultez la section Tâche Connecteurs.

Obtenir de l'aide auprès de la communauté Google Cloud

Vous pouvez publier vos questions et discuter de ce connecteur sur les forums Cloud de la communauté Google Cloud.

Étape suivante