Accéder au contenu principal Passer au contenu complémentaire

Ajout de flux de transformations

Vous pouvez inclure des flux dans vos tâches de transformation. Le concepteur de flux vous permet de créer un flux de transformation via des sources, des processeurs et des cibles pour définir des transformations simples ou complexes.

Les flux de transformation et les processeurs sont des représentations logiques. Cela signifie que, dans les tâches ELT, une seule table est créée pour chaque cible et que tous les processeurs sont compilés dans une seule instruction SQL par cible.

Conditions préalables requises

Avant de créer un flux de transformation, vous devez :

  • Alimenter la tâche de stockage avec les données intégrées à utiliser dans le flux de transformation, ou enregistrer les données existantes. Pour plus d'informations sur l'intégration et pour savoir comment enregistrer des données, voir Intégration de données et Enregistrement de données qui existent déjà sur la plateforme de données.
  • Préparer et exécuter la tâche de stockage ou de transformation utilisée comme source dans votre flux de transformation. Il n'est pas obligatoire d'exécuter la tâche de stockage, mais il est recommandé de pouvoir afficher l'aperçu des données à chaque étape du flux.

Création d'un flux de transformation

Pour créer un flux de transformation valide, vous avez besoin d'au moins un ensemble de données source et une cible nommée avec des clés définies.

  1. Ouvrez la tâche Transformer les données dans votre pipeline de données.
  2. Dans Transformer, sélectionnez les ensembles de données sources à inclure dans le flux de transformation, puis cliquez sur Ajouter un flux de transformation.

    Ajouter un flux de transformation apparaît, vous permettant de fournir les paramètres de la transformation.

  3. Saisissez un nom pour l'ensemble de données cible dans Nom.

    Vous pouvez également ajouter une description plus longue dans Description.

  4. Dans Matérialisation, sélectionnez si la sortie transformée doit être matérialisée ou non. Vous pouvez choisir d'hériter du paramètre des paramètres de la tâche de données.

    • La sélection d'Activé créera des tables et permettra de gérer le traitement ELT associé.

    • Si cette option est Désactivée, des vues effectuant des transformations à la volée seront créées.

  5. L'option Chargement incrémentiel vous permet d'ajuster la requête pour un chargement de données incrémentiel en appliquant des filtres ou d'autres conditions afin de réduire l'ensemble des données traitées via des macros. L'option Chargement incrémentiel est disponible uniquement si les données sont matérialisées sous forme de tables.

    • Lorsque l'option Chargement incrémentiel est Activée

      La première exécution de la tâche effectuera un chargement initial, insérant l'ensemble des résultats de la requête dans votre table cible. Les exécutions suivantes effectueront des chargements incrémentiels en fonction des filtres ou conditions spécifiques que vous avez définis pour le traitement incrémentiel. Lors du chargement incrémentiel, la tâche traitera uniquement les données sous forme de mise à jour ou d'insertion ; les suppressions ne sont pas prises en charge.

    • Lorsque l'option Chargement incrémentiel est Désactivée

      La première exécution de la tâche effectuera un chargement initial, insérant l'ensemble des résultats de la requête dans votre table cible. Les exécutions suivantes traiteront l'ensemble des résultats de la requête en les comparant à votre table cible et en traitant les enregistrements nouveaux, modifiés ou supprimés.

    Note InformationsSi la requête sélectionne tous les enregistrements qui devraient exister dans la cible, désactivez Chargement incrémentiel. Les enregistrements non sélectionnés seront supprimés de la cible.
  6. Cliquez sur Ajouter lorsque vous êtes prêt à créer le flux de transformation.

    Le concepteur de flux apparaît, la cible est créée et elle apparaît dans votre flux comme composant cible.

    Note InformationsIl est obligatoire de fournir un nom unique pour la cible de votre flux. Si vous souhaitez renommer la cible du flux ultérieurement, sélectionnez la cible et saisissez le nouveau nom dans Nom de l'ensemble de données.
  7. Si aucune clé n'est définie pour votre cible, cliquez sur Modifier près du champ Key(s) & nullables (Clé(s) et nullables). La fenêtre de configuration s'ouvre.
    Note InformationsLes clés ne sont pas héritées des ensembles de données sources et doivent être manuellement définies. Les éléments nullables sont hérités des ensembles de données sources et peuvent être modifiés.
  8. Dans Configure keys and nullables (Configurer les clés et nullables), sélectionnez Key (Clé) dans la colonne à définir comme clé primaire et Nullables dans la ou les colonnes à définir comme éléments nullables.
  9. Cliquez sur Confirmer pour enregistrer vos modifications et fermer la fenêtre de configuration.

Si le statut de votre flux de transformation est valide, vous pouvez fermer le flux et préparer vos données.

Vous pouvez modifier les paramètres de Matérialisation et de Chargement incrémentiel ultérieurement dans Paramètres de la cible.

  • Sélectionnez la cible et cliquez sur Modifier à côté de Paramètres dans la configuration de la cible.

Ajouter un processeur

Vous pouvez ajouter des processeurs à vos flux.

Les processeurs sont des composants que vous pouvez ajouter à vos flux afin de transformer vos données entrantes et de renvoyer les données transformées vers l'étape suivante du flux.

  1. Dans le concepteur de flux, sélectionnez le composant de flux après lequel ajouter un processeur.
  2. Cliquez sur Icône d'ellipse verticale dans le composant de flux, puis sur Add processor (Ajouter un processeur), et sélectionnez le processeur à ajouter. Vous pouvez également glisser le processeur du panneau gauche vers le canevas.
  3. Note ConseilVous pouvez afficher une courte description du processeur en sélectionnant le processeur dans le panneau Processeurs.
  4. Configurez votre processeur en fonction de vos besoins et cliquez sur Enregistrer afin d'enregistrer vos modifications et de mettre à jour l'aperçu des données.
    Note InformationsVous pouvez afficher un aperçu de l'échantillon de vos données via SQL et Aperçu des données. Pour plus d'informations, voir Affichage d'un aperçu des données.

Processeurs disponibles

Cas d'utilisation : Jointure, agrégation et filtrage de données dans Snowflake

Dans ce cas d'utilisation, les données client Snowflake doivent être transformées à l'aide de processeurs. Étant donné que les informations client proviennent de deux ensembles de données, vous souhaitez commencer par ajouter un processeur Join (Jointure) pour combiner les enregistrements. Vous souhaitez également utiliser un processeur Aggregate (Agrégation) pour calculer le prix moyen des commandes, ainsi qu'un processeur Filter (Filtrage) pour filtrer le type d'enregistrements client à conserver dans vos ensembles de données de sortie.

Flux de transformation avec un processeur Join (Jointure), un processeur Aggregate (Agrégation) et un processeur Filter (Filtrage).

Le premier ensemble de données est basé sur une table Snowflake appelée CUSTOMER_ACCOUNT, et son schéma ressemble à ceci :

Schéma de table Snowflake sur les comptes clients

Le deuxième ensemble de données est basé sur une table Snowflake appelée CUSTOMER_ORDER, et son schéma ressemble à ceci :

Schéma de table Snowflake sur les commandes clients

  1. Glissez un processeur Join (Jointure) du panneau gauche Processeurs vers le canevas.
  2. Liez la deuxième source au processeur Join (Jointure) de sorte à pouvoir combiner les données des deux ensembles de données.
  3. Configurez le processeur Join (Jointure) pour joindre les deux ensembles de données sources sur les clés d'ID client (CUSTOMER_ID) .
  4. Glissez un processeur Aggregate (Agrégation) après le processeur Join (Jointure).
  5. Configurez le processeur Aggregate (Agrégation) de sorte à calculer le montant moyen des achats client (ORDER_TOTAL_PRICE) et stockez-le dans une nouvelle colonne que vous pouvez nommer avg_order_price, tout en regroupant les enregistrements par type de segment client (LEFT_CUSTOMER_SEGMENT).
  6. Glissez-déposez un processeur Filter (Filtrage) du panneau gauche Processeurs vers le canvas.
  7. Configurez le processeur Filter (Filtrage) de sorte à filtrer les types de clients d'entreprise (Business).
  8. Sélectionnez Icône d'ellipse verticale sur le processeur Filter (Filtrage) pour ouvrir le menu, puis cliquez sur Add non-matching target (Ajouter une cible non-correspondante) pour ajouter une deuxième cible à votre flux.

    Cette cible contiendra les enregistrements qui ne correspondaient pas aux critères de filtre, les types de clients individuels (Individual).

  9. Saisissez un nom pour le nouvel ensemble de données cible, individual_cust, par exemple.
  10. Vérifiez l'aperçu du résultat dans les deux cibles :

    La cible business_cust affiche le prix de commande moyen des types de clients d'entreprise (Business), à savoir, dans ce cas, 157.463687151.

    Résultat affichant le prix de commande moyen des types de clients d'entreprise (Business)

    La cible individual_cust affiche le prix de commande moyen des types de clients individuels (Individual), à savoir, dans ce cas, 153.576530612.

    Résultat affichant le prix de commande moyen des types de clients individuels (Individual)
  11. Assurez-vous que votre flux de transformation a un statut valide, puis fermez-le.
  12. Dans la fenêtre Transformer, cliquez sur Préparer pour préparer vos données.

Bonnes pratiques

Lorsque vous ajoutez des ensembles de données sources ou cibles à vos flux, vous devez définir les clés et nullables dans le panneau de configuration des ensembles de données cibles.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !