Source de lot de base de données

Cette page explique comment configurer le plug-in de source par lot de base de données dans Cloud Data Fusion.

Vous pouvez utiliser cette source générique chaque fois que vous devez lire des données à partir d'une base de données. Par exemple, vous pouvez l'utiliser pour créer des instantanés quotidiens d'une table de base de données générique et écrire la sortie dans BigQuery.

Configurer le plug-in

  1. Accédez à l'interface Web de Cloud Data Fusion, puis cliquez sur Studio.
  2. Vérifiez que Pipeline de données – lot est sélectionné (et non Temps réel).
  3. Dans le menu Source, cliquez sur Base de données.
  4. Pour configurer le plug-in, maintenez le pointeur sur le nœud du plug-in, puis cliquez sur Propriétés.
  5. Saisissez les propriétés suivantes. Pour en savoir plus sur chaque propriété, consultez Propriétés.

    1. Saisissez un libellé pour le nœud de base de données (par exemple, database tables).
    2. Saisissez les informations de connexion. Vous pouvez configurer une connexion ponctuelle ou une connexion existante réutilisable.

      Nouvelle connexion

      Pour ajouter une connexion unique à la base de données, procédez comme suit:

      1. Laissez l'option Utiliser la connexion désactivée.
      2. Saisissez les propriétés de connexion suivantes :
        1. Dans le champ "Nom du pilote JDBC", saisissez le nom du pilote, le cas échéant. Sinon, laissez l'option Aucun plug-in JDBC sélectionnée.
        2. Dans le champ Chaîne de connexion, saisissez la chaîne de connexion JDBC, y compris le nom de la base de données.
        3. Facultatif: si votre base de données nécessite une authentification, saisissez le nom d'utilisateur et le mot de passe de la base de données.
        4. Facultatif: si votre pilote JDBC nécessite des configurations supplémentaires, saisissez des arguments clé-valeur pour la connexion dans le champ Arguments de connexion.

      Connexion réutilisable

      Pour réutiliser une connexion existante, procédez comme suit:

      1. Activez l'option Utiliser la connexion.
      2. Cliquez sur Parcourir les connexions.
      3. Sélectionnez la connexion.

      4. Facultatif: Si aucune connexion n'existe et que vous souhaitez en créer une réutilisable, cliquez sur Ajouter une connexion, puis suivez la procédure décrite dans l'onglet Nouvelle connexion de cette page.

    3. Facultatif: Pour tester la connectivité, cliquez sur Obtenir un schéma. Ce schéma est utilisé à la place du schéma renvoyé par la requête. Il doit correspondre au schéma renvoyé par la requête, sauf que vous pouvez marquer des champs comme pouvant être vides et qu'il peut contenir un sous-ensemble des champs.

    4. Dans le champ Requête d'importation, saisissez une requête SELECT pour importer des données à partir de la table spécifiée (par exemple, select id, name, email, phone from users;).

    5. Facultatif: dans le champ Requête de délimitation, saisissez les valeurs minimale et maximale à lire (par exemple, SELECT * FROM table WHERE $CONDITIONS).

    6. Facultatif: Dans le champ Nom du champ de fractionnement, saisissez le nom du champ qui génère les fractionnements.

    7. Facultatif: dans le champ Nombre de fractionnements à générer, saisissez un nombre (par exemple, 2).

    8. Facultatif: Dans le champ Taille de récupération, saisissez un nombre, par exemple 1000.

    9. Facultatif: saisissez des propriétés avancées, telles que la modification de la casse des noms de colonnes.

  6. (Facultatif) Cliquez sur Valider et corrigez les erreurs détectées.

  7. Cliquez sur Fermer. Les propriétés sont enregistrées et vous pouvez continuer à créer votre pipeline de données dans Cloud Data Fusion Studio.

Propriétés

Propriété Macro activée Obligatoire Description
Label Non Oui Nom du nœud de votre pipeline de données.
Utiliser la connexion Non Non Recherchez une connexion à la source. Si l'option Utiliser la connexion est sélectionnée, vous n'avez pas besoin de fournir d'identifiants.
Connexion Oui Oui Nom de la connexion à utiliser. Si l'option Utiliser la connexion est sélectionnée, ce champ s'affiche. Les informations sur la base de données et la table sont fournies par la connexion.
Nom du pilote JDBC Oui Oui Pilote JDBC à utiliser.
La valeur par défaut est Aucun plug-in JDBC.
Chaîne de connexion Oui Oui Chaîne de connexion JDBC, y compris le nom de la base de données.
Username (Nom d'utilisateur) Oui Non Identité utilisateur pour la connexion à la base de données. Obligatoire pour les bases de données nécessitant une authentification. Facultatif pour les bases de données qui ne nécessitent pas d'authentification.
Mot de passe Oui Non Mot de passe à utiliser pour se connecter à la base de données spécifiée. Obligatoire pour les bases de données nécessitant une authentification. Facultatif pour les bases de données qui ne nécessitent pas d'authentification.
Arguments de connexion Oui Non Liste de paires de tags/valeurs de chaîne arbitraires en tant qu'arguments de connexion. Pour les pilotes JDBC nécessitant une configuration supplémentaire, ces arguments sont transmis au pilote JDBC en tant qu'arguments de connexion au format suivant: key1=value1;key2=value.
Nom de référence Non Oui Nom identifiant de manière unique cette source pour la traçabilité et l'annotation des métadonnées. Il s'agit généralement du nom de la table ou de la vue.
Obtenir le schéma Non Non Schéma des enregistrements générés par la source. Il est utilisé à la place du schéma renvoyé par la requête. Il doit correspondre au schéma renvoyé par la requête, sauf qu'il vous permet de marquer des champs comme pouvant être vides et qu'il peut contenir un sous-ensemble des champs.
Requête d'importation Oui Oui Requête SELECT pour importer des données à partir de la table spécifiée. Vous pouvez spécifier un nombre arbitraire de colonnes à importer ou importer toutes les colonnes à l'aide de *. La requête doit contenir la chaîne $CONDITIONS. Par exemple, SELECT * FROM table WHERE $CONDITIONS. La chaîne $CONDITIONS est remplacée par la limite de champ splitBy spécifiée dans le champ Requête de délimitation. La chaîne $CONDITIONS n'est pas obligatoire si le champ Nombre de fractionnements est défini sur 1.
Requête de délimitation Oui Non Requête de délimitation qui renvoie la valeur minimale et maximale des valeurs de la colonne de fractionnement. Exemple : SELECT MIN(id),MAX(id) FROM table. Facultatif si le nombre de fractionnements est défini sur 1.
Nom du champ à diviser Oui Non Nom du champ utilisé pour générer des divisions. Non obligatoire si le nombre de fractionnements à générer est défini sur 1.
Nombre de divisions à générer Oui Non Nombre de divisions à générer.
La valeur par défaut est 1.
Taille de récupération Oui Non Nombre de lignes à extraire à la fois par fractionnement. Une taille de récupération plus importante peut entraîner une importation plus rapide, mais cela se traduit par une utilisation de la mémoire plus importante.
La valeur par défaut est 1 000.
Activer le commit automatique Non Non Indique si l'engagement automatique doit être activé pour les requêtes exécutées par cette source. Laissez cette valeur définie sur False, sauf si vous utilisez un pilote JDBC qui génère une erreur lors de l'exécution de l'opération de validation.
La valeur par défaut est False.
Cas du nom de la colonne Oui Non Définit la casse des noms de colonnes renvoyés par la requête. Vous pouvez choisir des majuscules ou des minuscules. Par défaut, ou pour toute autre entrée, les noms de colonne ne sont pas modifiés et la casse renvoyée par la base de données est utilisée. Définir cette propriété permet de prévoir la capitalisation des noms de colonnes dans différentes bases de données, mais cela peut entraîner des conflits de noms de colonnes si plusieurs noms de colonnes sont identiques lorsque la casse est ignorée.
La valeur par défaut est Aucune modification.
Niveau d'isolation des transactions Oui Non Niveau d'isolation des transactions pour les requêtes exécutées par ce sink. Pour en savoir plus, consultez setTransactionIsolation(). Le pilote JDBC Phoenix génère une exception si les transactions ne sont pas activées dans la base de données Phoenix et que ce champ est défini sur true. Pour ce type de pilotes, définissez ce champ sur TRANSACTION_NONE.
TRANSACTION_SERIALIZABLE est la valeur par défaut.
Modèle à remplacer Non Non Modèle à remplacer dans le nom du champ de la table (généralement utilisé avec la propriété Remplacer par). Si la propriété Replace with (Remplacer par) n'est pas définie, le format est supprimé du nom du champ.
Remplacer par Non Non Chaîne remplacée dans le nom du champ de la table. Vous devez également configurer le champ Modèle à remplacer.
Schéma de sortie Non Non Spécifie le schéma généré. Seules les colonnes définies dans le schéma sont incluses dans l'enregistrement de sortie.

Bonnes pratiques

Vérifiez si un plug-in plus spécifique est disponible pour votre base de données. Par exemple, si vous disposez d'une source de base de données Oracle, utilisez plutôt le plug-in de source de lot de base de données Oracle, car il est conçu pour fonctionner avec le schéma Oracle.

Étape suivante