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, pointez sur le nœud du plug-in et 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 nouvelle connexion ponctuelle ou une connexion existante réutilisable.

      Nouvelle connexion

      Pour ajouter une connexion ponctuelle à 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, conservez 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 les identifiants (nom d'utilisateur et mot de passe) de la base de données.
        4. Facultatif : si votre pilote JDBC nécessite des configurations supplémentaires, saisissez les 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 et suivez les étapes de l'onglet Nouvelle connexion sur cette page.

    3. Facultatif : Pour tester la connectivité, cliquez sur Obtenir un schéma. Ce schéma est utilisé à la place de celui 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 nuls 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 les données 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 "Fractionner par", 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 les Propriétés avancées, par exemple pour modifier la casse des noms de colonnes.

  6. Facultatif : cliquez sur Valider et corrigez les éventuelles erreurs.

  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 dans 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. Ce champ s'affiche si l'option Utiliser la connexion est sélectionnée. 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é de l'utilisateur pour la connexion à la base de données. Obligatoire pour les bases de données qui nécessitent 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 qui nécessitent une authentification. Facultatif pour les bases de données qui ne nécessitent pas d'authentification.
Arguments de connexion Oui Non Liste de paires arbitraires tag/valeur de chaîne en tant qu'arguments de connexion. Pour les pilotes JDBC qui nécessitent 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 nuls et qu'il peut contenir un sous-ensemble des champs.
Importer une requête Oui Oui Requête SELECT pour importer les données 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 du 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 limites qui renvoie le minimum et le maximum des valeurs de la colonne fractionnée. Exemple : SELECT MIN(id),MAX(id) FROM table. Non obligatoire si le nombre de fractionnements est défini sur 1.
Nom du champ "Split-by" Oui Non Nom du champ utilisé pour générer les 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 fractionnements à 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 accélérer l'importation, mais au détriment d'une utilisation plus élevée de la mémoire.
La valeur par défaut est 1000.
Activer l'auto-commit Non Non Indique si l'auto-commit doit être activé pour les requêtes exécutées par cette source. Laissez ce paramètre défini sur False, sauf si vous utilisez un pilote JDBC qui provoque une erreur lors de l'exécution de l'opération de validation.
La valeur par défaut est False.
Casse des noms de colonnes Oui Non Définit la casse des noms de colonnes renvoyés par la requête. Vous pouvez choisir d'utiliser des majuscules ou des minuscules. Par défaut, ou pour toute autre entrée, les noms de colonnes ne sont pas modifiés et la casse des lettres renvoyée par la base de données est utilisée. La définition de cette propriété permet de prédire la mise en majuscules des noms de colonnes dans différentes bases de données, mais elle 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 No change (Aucun changement).
Niveau d'isolation des transactions Oui Non Niveau d'isolation des transactions pour les requêtes exécutées par ce récepteur. Pour en savoir plus, consultez setTransactionIsolation(). Le pilote Phoenix JDBC 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 les pilotes de ce type, définissez ce champ sur TRANSACTION_NONE.
La valeur par défaut est TRANSACTION_SERIALIZABLE.
Modèle à remplacer Non Non Modèle à remplacer dans le nom du champ du tableau (généralement utilisé avec la propriété Remplacer par). Si la propriété Remplacer par n'est pas définie, le modèle est supprimé du nom du champ.
Remplacer par Non Non Chaîne remplacée dans le nom du champ du tableau. Vous devez également configurer le champ Modèle à remplacer.
Schéma de sortie Non Non Spécifie le schéma de sortie. 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.

Étapes suivantes