SingleStore

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

Avant de commencer

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

  • Dans votre projet Google Cloud :
    • Assurez-vous que la connectivité réseau est configurée. Pour en savoir plus sur les schémas de réseau, consultez 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 type spécial de compte Google 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 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 Activer des services.

    Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer au moment de configurer le connecteur.

Configurer le connecteur

Une connexion est propre à 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 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 Emplacements.

    2. Cliquez sur SUIVANT.
  4. Dans la section Détails de connexion, procédez comme suit :
    1. Connecteur : sélectionnez SingleStore 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, indiquez le nom de l'instance de connexion.

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

      • Ils peuvent contenir des lettres, des chiffres ou des traits d'union.
      • Les lettres doivent être en minuscules.
      • Ils doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
      • Ils ne peuvent pas dépasser 49 caractères.
    4. (Facultatif) Saisissez une description de l'instance de connexion.
    5. (Facultatif) Activez 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. (Facultatif) Configurez les paramètres de nœuds 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 davantage de transactions pour une connexion, vous devez disposer de plus de nœuds. À l'inverse, moins de nœuds sont nécessaires si une connexion traite moins de transactions. Pour comprendre comment les nœuds affectent la tarification de votre connecteur, consultez 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 améliorer la disponibilité) et le nombre maximal de nœuds sur 50.

    8. Base de données : nom de la base de données SingleStore.
    9. Autoriser les variables utilisateur : lorsque cette option est définie sur "True", les variables utilisateur (avec le préfixe @) sont utilisables dans les requêtes SQL.
    10. Jeu de caractères : jeu de caractères client par défaut utilisé par le fournisseur. Exemple : "utf8".
    11. Dates en zéros renvoyées comme NULL : indique si les valeurs de date ou de date et d'heure uniquement composées de zéros doivent être renvoyées comme NULL.
    12. BrowsableSchemas : cette propriété restreint les schémas signalés à un sous-ensemble des schémas disponibles. Par exemple, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
    13. (Facultatif) Cliquez sur + AJOUTER UNE ÉTIQUETTE pour ajouter une étiquette à la connexion sous la forme d'une paire clé/valeur.
    14. Cliquez sur SUIVANT.
  5. Dans la section Destinations, saisissez des informations sur 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 de l'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 de point de terminaison dans la liste, puis sélectionnez le rattachement de point de terminaison requis dans la liste Rattachement de 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 SUIVANT.
  6. Dans la section Authentification, saisissez les informations d'authentification.
    1. Sélectionnez un type d'authentification, puis saisissez les informations appropriées.

      Le type d'authentification suivant est compatible avec la connexion SingleStore :

      • Nom d'utilisateur et mot de passe
    2. Pour savoir comment configurer ce type d'authentification, consultez Configurer l'authentification.

    3. Cliquez sur SUIVANT.
  7. Vérifier : vérifiez vos informations de connexion et d'authentification.
  8. Cliquez sur Créer.

Configurer l'authentification

Saisissez les informations en fonction de l'authentification que vous souhaitez utiliser.

  • Nom d'utilisateur et mot de passe
    • Nom d'utilisateur : nom d'utilisateur pour le connecteur
    • Mot de passe : secret Secret Manager contenant le mot de passe associé au connecteur

Configuration SingleStore

Pour configurer l'authentification pour SingleStore, procédez comme suit :

  • Configurez un compte SingleStore.
  • Configurez une base de données SingleStore et les détails de la destination.
  • Configurez l'authentification par nom d'utilisateur et mot de passe.

Configurer un compte SingleStore

  1. Inscrivez-vous à un essai sans frais de SingleStore.
  2. Connectez-vous au compte SingleStore.
  3. Vous pouvez vous connecter avec votre adresse Gmail, votre compte Microsoft ou votre adresse e-mail professionnelle.

Configurer la base de données SingleStore et les détails de la destination

  1. Une fois connecté, accédez à Instances ou Databases (Bases de données).
  2. Cliquez sur votre instance de base de données pour afficher ses détails. Recherchez le nom de la base de données associée à votre instance SingleStore.
  3. Connectez-vous à cette base de données pour accéder à vos données.

  4. Accédez à Cloud dans le menu de navigation, puis cliquez sur un espace de travail existant.
  5. Dans l'onglet Overview (Vue d'ensemble), affichez l'espace de travail et la base de données dans l'espace de travail.
  6. Des options permettant de créer un espace de travail ou une base de données s'affichent.

  7. Recherchez le nom d'hôte ou l'adresse IP du serveur et le numéro de port associé à votre instance de base de données SingleStore dans les détails de l'instance.
  8. Ces informations sont généralement fournies avec les détails de la connexion.

Pour en savoir plus sur la création d'une base de données SingleStore, consultez Create a database (Créer une base de données).

Configurer l'authentification par nom d'utilisateur et mot de passe

  1. Saisissez le nom d'utilisateur ou l'ID de messagerie utilisé pour la connexion à l'instance SingleStore.
  2. Saisissez le mot de passe utilisé pour la connexion à l'instance SingleStore.

    Pour en savoir plus sur l'espace de travail SingleStore et la création d'une base de données, consultez la documentation SingleStore.

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 la connexion SingleStore.

Type de connexion avec nom d'utilisateur et mot de passe SingleStore

Nom du champ Détails
Emplacement europe-west1
Connecteur Singlestore
Version du connecteur 1
Nom de connexion google-cloud-singlestore-conn
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Configuration SSL Non
Destinations Si votre destination se trouve dans un réseau privé, créez un rattachement de point de terminaison pour y accéder.
Adresse de l'hôte ADRESSE_HÔTE
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

Type de connexion SSL SingleStore

Nom du champ Détails
Emplacement Europe-West1
Connecteur Singlestore
Version du connecteur 1
Nom de connexion google-cloud-singlestore-ssl-conn
Activer Cloud Logging Oui
Compte de service SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Niveau de verbosité 5
Nombre minimal de nœuds 2
Nombre maximal de nœuds 50
Configuration SSL Activer SSL
Connexion non sécurisée Autorisation de tous les certificats
Certificat client CERTIFICAT_CLIENT
Version du secret 1
Clé privée du client Sélectionnez un secret contenant la clé privée du client au format PEM.
Version du secret 1
Phrase secrète de la clé privée du client PHRASE_SECRÈTE_CLÉ_PRIVÉE_CLIENT
Version du secret 1
Destinations Si votre destination se trouve dans un réseau privé, créez un rattachement de point de terminaison pour y accéder.
Adresse de l'hôte ADRESSE_HÔTE
Port PORT
Nom d'utilisateur NOM D'UTILISATEUR
Mot de passe MOT DE PASSE
Version du secret 1

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 par le biais de 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és. 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, alors que dans un connecteur de serveur de fichiers, ce sont les dossiers, et dans un connecteur de système de messagerie, ce sont les files d'attente.

    Toutefois, il est possible qu'un connecteur n'accepte 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é. Voici les opérations possibles :

    Lorsque vous sélectionnez une entité dans la liste proposée, cela 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 "Connecteurs". Cependant, si un connecteur n'accepte pas l'une des opérations d'entité, cette opération non compatible ne figure pas dans la liste Operations.

  • Action : une action est une fonction de première classe mise à la disposition de l'intégration par le biais de 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 n'accepte aucune action, auquel cas la liste Actions est vide.

Limites du système

Le connecteur SingleStore peut traiter 10 transactions par seconde et par nœud, et limite les transactions au-delà de ce seuil. Par défaut, Integration Connectors alloue deux nœuds (pour améliorer la disponibilité) à une connexion.

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

Exemples d'opérations d'entité

Exemple : Lister les enregistrements d'une entité

Cet exemple liste 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 Entrée de la tâche de la tâche Connecteurs, vous pouvez définir la filterClause selon vos besoins.

    Par exemple, si vous définissez la clause de filtre sur employeeCode='5100' and startDate='2010-01-01 00:00:00', vous ne voyez que les enregistrements dont l'employeeCode est 5100 et la startDate est 2010-01-01 00:00:00.

Exemple : Récupérer un seul enregistrement à 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 Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 103032 dans le champ Valeur par défaut.

    Ici, 103032 est la valeur de la 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 Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 113132 dans le champ Valeur par défaut.

    Si l'entité comporte des clés primaires composites, vous pouvez définir la filterClause au lieu de spécifier l'entityId. 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 "Connecteurs" contiendra 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 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 :
    {
    "country": "IN"
    }
  5. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 113132 dans le champ Valeur par défaut.

    Si l'entité comporte des clés primaires composites, vous pouvez définir la filterClause au lieu de spécifier l'entityId. 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 "Connecteurs" contiendra la réponse de l'opération de mise à jour.

Actions

Dans cette section, vous trouverez la liste des actions prises en charge par le connecteur. Pour savoir comment configurer les actions, consultez Exemples d'actions.

Action ExecuteCustomQuery

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

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

  1. Suivez les instructions détaillées pour ajouter une tâche "Connecteurs".
  2. Lorsque vous configurez la tâche "Connecteurs", 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 illustrant execute-custom-query-action image illustrant 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'ouvre.

      image illustrant custom-sql-query image illustrant 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 de séquence.

      image illustrant add-query-param image illustrant 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.

Si cette action aboutit, elle renvoie l'état 200 (OK) avec un corps de réponse contenant les résultats de la requête.

Problèmes connus

Les opérations de création, de lecture, de mise à jour et de suppression échouent sur les entités qui comportent des champs de type Bit et Blob.

Exemples d'actions

Exemple : Trouver la valeur la plus élevée

Cet exemple montre comment exécuter une fonction définie par l'utilisateur. Dans cet exemple, la fonction find_greater compare deux entiers et renvoie l'entier le plus élevé.

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action find_greater, 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 :
    {
    "$1": 1.0,
    "$2": 5.0
    }
  4. Si l'action aboutit, le champ connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :

    [{
    "bignum": 5.0
    }]

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 Commandes Terraform de base.

Pour afficher un exemple de modèle Terraform permettant de créer une connexion, consultez 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 Obligatoire Description
database STRING True Nom de la base de données SingleStore.
allow_user_variables BOOLEAN False Lorsque cette option est définie sur "True", les variables utilisateur (avec le préfixe @) sont utilisables dans les requêtes SQL.
characterset STRING False Jeu de caractères client par défaut utilisé par le fournisseur. Exemple : "utf8".
zero_dates_to_null BOOLEAN False Indique si les valeurs de date ou de date et d'heure uniquement composées de zéros doivent être renvoyées comme NULL.
browsable_schemas STRING False Cette propriété restreint les schémas signalés à un sous-ensemble des schémas disponibles. Par exemple, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Utiliser la connexion SingleStore dans une intégration

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

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

Demander de l'aide à la communauté Google Cloud

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

Étapes suivantes