Aller au contenu principal

Composants ETL

La palette de l'éditeur de pipelines regroupe quatre familles de composants (les « bricks ») :

FamilleComposantsRôle
Extract17Lire les données et démarrer un flux
Transform70, dont 10 méga-bricksTransformer, filtrer, combiner les flux
Load17Écrire les données vers une destination
Orchestration18Déclencher et enchaîner des pipelines (workflows)

Ces totaux comptent le catalogue complet, y compris les bricks legacy conservées pour compatibilité mais masquées de la palette (voir l'encadré ci-dessous) ; la palette n'affiche que les bricks unifiées et méga-bricks.

L'identité d'un composant est son attribut name, affiché en français dans la palette (ex. Source fichier, Écriture base de données). La recherche de la palette couvre les noms et leurs synonymes (français et anglais).

La palette de composants dans l'éditeur de pipelines La palette, organisée par famille. Glissez un composant sur le canvas pour l'ajouter au pipeline.

La plupart des transformations sont des méga-bricks : un seul composant qui enchaîne plusieurs opérations dans l'ordre de votre choix (ex. la brick Chaînes de caractères fait trim, casse, regex, split, concat…). Cela remplace les dizaines de bricks atomiques d'autrefois par une poignée de composants riches.

Migration automatique

Les pipelines créés avec les anciennes bricks atomiques (Rename Column, Trim Strings, CSV Import…) continuent de fonctionner : elles sont automatiquement converties vers les méga-bricks et bricks unifiées équivalentes au chargement. Ces bricks legacy restent dans le catalogue (elles comptent dans les totaux ci-dessus) mais sont masquées de la palette.

Sources (Extract)​

Les sources lisent les données et démarrent un flux.

ComposantDescription
Source fichierLit des fichiers depuis une connexion storage. Format (CSV / JSON / Excel / Parquet / XML / PDF / brut) choisi sur la brick.
Lister fichiersÉnumère les fichiers d'une connexion storage sans lire leur contenu : une ligne par fichier.
Source base de donnéesLit depuis n'importe quelle base (PostgreSQL, MySQL, SQL Server, Oracle, SQLite, Snowflake…), table entière ou requête SQL.
REST APIAppelle une API REST en mode autonome ou en enrichissement par ligne.
Code Python (source)Génère un flux avec du code Python (pandas).
Import MémoireRelit une donnée stockée plus tôt par un Export Mémoire.

Transformations​

Le cœur de la palette : les méga-bricks (chaînables) et quelques transformations spécialisées.

Méga-bricks​

ComposantOpérations enchaînables
Colonnesrenommer, supprimer, convertir le type, réordonner, ajouter une colonne calculée, coalesce, remplir les null, hash
Lignesfiltrer, trier, échantillonner, dédoublonner, limiter
Chaînes de caractèrestrim, casse, regex replace, accents, split, concat, base64, url, format
Datesparser, formater, extraire (year/month…), différence entre 2 colonnes
Valeursremplacer des valeurs, mapper via dictionnaire
JSONaplatir, parser, sérialiser
Agrégationsgroup by + agrégats, pivot, unpivot, window functions
Qualitévalider (regex / range / not-null / in-set), match
Combinaisonsunion (empilement) ou lookup (enrichissement clé/valeur)

Transformations spécialisées​

ComposantDescription
CorrespondanceMappage de champs façon Talend (expressions, types de sortie).
Exécuter SQLExécute du SQL sur une connexion base, placeholders alimentés par les lignes.
Code PythonTransforme le flux avec du code Python (pandas).
Pour chaque ligneTraite les lignes une par une, plusieurs en parallèle, chacune dans son propre processus.
From XMLExtrait des champs d'une colonne XML via XPath (Factur-X, réponses d'API stockées).
Générer avec l'IAInterroge un modèle sans données en entrée et produit ses réponses en lignes.
Appel IAOcérise un document, interroge un modèle sur du texte, ou extrait des champs directement d'un document. Indépendant du fournisseur.
AperçuAffiche un aperçu des lignes dans les logs (debug).

La brick legacy Structure (réorganisation de colonnes) est masquée de la palette : ses opérations sont couvertes par la méga-brick Colonnes, voir Bricks héritées.

Contrôle de flux​

ComposantDescription
JointureJointure SQL multi-tables (inner / left / right / full / cross).
RouteAiguille les lignes vers plusieurs sorties selon des conditions.
Contrôle de schémaSépare les lignes conformes au schéma déclaré de celles qui ne le sont pas, motif à l'appui.
ComparaisonCompare deux datasets (ajouts / suppressions / modifications).
CombinaisonsUnion ou lookup de deux entrées (voir méga-bricks).

Actions​

Composants pass-through (1→1) : le DataFrame ressort inchangé, l'action est un effet de bord. Voir la page Actions.

ComposantDescription
AssertionVérifie des assertions, plante le pipeline si violées.
InstantanéSauvegarde l'état courant du DataFrame (debug / replay).
AlerteEnvoie une alerte conditionnelle sans interrompre le flux.
Étiqueter l'exécutionPose un label sur l'exécution (visible en monitoring).

Destinations (Load)​

ComposantDescription
Écriture fichierÉcrit des fichiers vers une connexion storage (format choisi sur la brick).
Écriture base de donnéesÉcrit dans n'importe quelle base (append / replace / upsert).
Export APIEnvoie les données vers une API REST (par lot ou par ligne).
NotificationMail / Slack / Webhook à chaque exécution, template Markdown.
Code Python (sortie)Consomme le flux avec du code Python (export libre).
Export MémoireStocke en mémoire pour réutilisation par un Import Mémoire.

Orchestration​

Composants de workflow (type ORCH), pour déclencher et enchaîner des pipelines. Voir Orchestration et le détail par sous-famille : Déclencheurs, Contrôle de flux, Actions.

Utilisation​

  1. Glissez un composant depuis la palette vers le canvas (ou cherchez-le par nom ou synonyme).
  2. Connectez les ports d'entrée / sortie entre composants.
  3. Configurez les paramètres dans le panneau de droite.
  4. Exécutez le pipeline (voir Exécuter un pipeline).

Ports de connexion​

PortPositionDescription
EntréeGaucheReçoit les données
SortieDroiteEnvoie les données traitées
Sorties dynamiquesDroiteCertaines bricks (Route, REST API, Export API) créent des sorties nommées selon leur configuration