Apache Cassandra

Le connecteur Apache Cassandra vous permet d'effectuer des opérations d'insertion, de suppression, de mise à jour et de lecture sur une base de données Cassandra.

Avant de commencer

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

  • Dans votre projet Google Cloud :
    • Accorder à l'utilisateur le rôle IAM roles/connectors.admin configuration du 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.

  • Pour en savoir plus sur la configuration de l'authentification, consultez la section Configurer l'authentification.

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 Détails de connexion, procédez comme suit :
    1. Connecteur : sélectionnez Apache Cassandra 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électionnez 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. Espace de clés : Espace de clés Cassandra
    9. Vous pouvez également cliquer sur + AJOUTER UN LIBELLÉ pour ajouter un libellé à la connexion sous la forme d'une paire clé/valeur.
    10. 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 Apache Cassandra :

      • 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 Apache Cassandra à utiliser pour la connexion.
    • Mot de passe : secret Secret Manager contenant le mot de passe associé au nom d'utilisateur Apache Cassandra.

Exemples de configuration de connexion

Type de connexion d'authentification de base

Nom du champ Détails
Emplacement us-central1
Connecteur Apachecassandra
Version du connecteur 1
Nom de connexion apache-cassandra-vm-conn
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Base de données test-google-cloud
Schémas consultables
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Activer SSL (configuration SSL) Non
Type de destination Adresse de l'hôte
Hôte 192.0.2.0
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Si SSL est désactivé dans l'instance Cassandra, vous ne pouvez pas utiliser l'authentification de base avec nom d'utilisateur et mot de passe. Si SSL est activé au niveau de l'instance Cassandra, vous devez générer un certificat SSL, l'activer dans la connexion Cassandra, et spécifier le certificat public ou privé.

Si SSL est activé dans l'instance PSC, les autres types d'authentification ne fonctionneront pas. Activez SSL dans la connexion Cassandra et spécifiez le certificat public ou privé.

Type de connexion PSC

Nom du champ Détails
Emplacement us-central1
Connecteur Apachecassandra
Version du connecteur 1
Nom de connexion apache-cassandra-vm-conn-psc
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Base de données DATABASE_NAME
Schémas consultables
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Configuration SSL Non
Type de destination Adresse de l'hôte
Hôte 192.0.2.0
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Type de connexion SSL

Nom du champ Détails
Emplacement us-central1
Connecteur Apachecassandra
Version du connecteur 1
Nom de connexion apache-cassandra-vm-conn
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Base de données testgcp
Schémas consultables
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Activer SSL (sous Configuration SSL) Oui
Choisissez "Modèle de confiance" (sous "Truststore"). Privé
Magasin de confiance personnalisé CUSTOM_TRUST_STORE
Version du secret 1
Certificat client (sous Key Store) CLIENT_CERT
Version du secret 1
Clé privée du client (sous Key Store) CLIENT_PRIVATE_KEY
Version du secret 1
Type de destination Adresse de l'hôte
Hôte 192.0.2.0
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Type de connectivité multinœud

Nom du champ Détails
Emplacement europe-west1
Connecteur Apachecassandra
Version du connecteur 1
Nom de connexion apache-cassandra-vm-conn-multinode1
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Base de données test-google-cloud
Schémas consultables
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Activer SSL (sous Configuration SSL) Non
Type de destination Adresse de l'hôte
Hôte 192.0.2.0
Port PORT
Hôte 192.0.2.0
Port PORT
Hôte 192.0.2.0
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Pour utiliser un type de connexion multinœud, SSL doit être désactivé dans l'instance Cassandra, et vous devez utiliser le nom d'utilisateur et le mot de passe pour vous authentifier. Si SSL est activé au niveau de l'instance Cassandra, vous devez générer un certificat SSL, l'activer dans la connexion Cassandra, et spécifier le certificat public ou privé.

Multinœud avec type de connexion SSL

Nom du champ Détails
Emplacement europe-west1
Connecteur Apachecassandra
Version du connecteur 1
Nom de connexion apache-cassandra-vm-conn-multinode1
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com/td>
Base de données test-google-cloud
Schémas consultables
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Activer SSL (sous Configuration SSL) Oui
Choisissez "Modèle de confiance" (sous "Truststore"). Privé
Magasin de confiance personnalisé CUSTOM_TRUST_STORE
Version du secret 1
Certificat client (sous Key Store) CLIENT_CERT
Version du secret 1
Clé privée du client (sous Key Store) CLIENT_PRIVATE_KEY
Version du secret 1
Type de destination Adresse de l'hôte
Hôte 192.0.2.1
Port PORT
Hôte 192.0.2.2
Port PORT
Hôte 3 192.0.2.3
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Pour en savoir plus sur la configuration SSL pour Apache Cassandra, consultez la page Configurer un cluster Cassandra avec SSL.

Pour en savoir plus sur la configuration de Cassandra sur un seul nœud, consultez les pages Installer Cassandra ou Installer Apache Cassandra sur CentOS 7 .

Pour en savoir plus sur la configuration de Cassandra sur plusieurs nœuds, consultez Installer Cassandra sur plusieurs centres de données ou Initialiser un cluster multinœud.

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'accepte aucune des opérations d'entité, ne sont pas répertorié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 une sortie . Toutefois, il est possible qu'un connecteur ne prenne en charge aucune action, auquel cas la liste Actions est vide.

Limites du système

Le connecteur Apache Cassandra peut traiter 65 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.

Utiliser la connexion Apache Cassandra dans une intégration

Une fois la connexion créée, elle devient disponible à la fois 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.

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

Actions

Ce connecteur permet l'exécution des 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 Execute custom query (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.

Exemples d'opérations d'entité

Exemple : Lister les enregistrements d'une entité

Cet exemple répertorie les enregistrements de l'entité Users.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Users 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 définir la filterClause selon vos besoins.

    Par exemple, définir la clause de filtre sur employeeCode='5100' and startDate='2010-01-01 00:00:00' (affiche uniquement ces enregistrements) dont le codeemployee est 5100 et startDate est 2010-01-01 00:00:00.

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

Cet exemple extrait un enregistrement de l'entité Users.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez User 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 et puis saisissez 103032 dans le champ Default Value (Valeur par défaut).

    Ici, 103032 est la valeur de clé primaire de l'entité Users.

Exemple : Supprimer un enregistrement d'une entité

Cet exemple supprime un enregistrement de l'entité Users.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Users 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 et puis saisissez 113132 dans le champ Default Value (Valeur par défaut).

    Si l'entité possède des clés primaires composites au lieu de spécifier l'entityId, vous pouvez également définir le filterClause. Par exemple, employeeCode='5100' and startDate='2010-01-01 00:00:00'.

Exemple : Créer un enregistrement dans une entité

Cet exemple crée un enregistrement dans l'entité Users.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Users dans la liste Entity.
  3. Sélectionnez l'opération Create, puis cliquez sur OK.
  4. 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 :
    {
    "employeeCode": "5100",
    "startDate": "2010-01-01 00:00:00.0",
    "country": "US"
    }
  5. Si l'intégration aboutit, le champ connectorOutputPayload de la tâche du connecteur contient la réponse de l'opération de création.

Exemple – Mettre à jour un enregistrement dans une entité

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

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Users 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 à celle-ci dans la section Champ Default Value:
    {
    "country": "IN"
    }
  5. Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur entityId, puis saisissez 113132 dans le champ Default Value (Valeur par défaut).

    Si l'entité possède des clés primaires composites au lieu de spécifier l'entityId, vous pouvez également définir le filterClause. Par exemple, employeeCode='5100' and startDate='2010-01-01 00:00:00'.

  6. Si l'intégration aboutit, le champ connectorOutputPayload de la tâche du connecteur contient la réponse de l'opération de mise à jour.

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
espace de touches STRING Vrai Espace de clés Cassandra

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