Retour

Validation de données en fonction d’un schéma

Temps de lecture : 4 minutes

Dans ce tutoriel vous apprendrez à utiliser un schéma tSchemaComplianceCheck afin de vérifier la qualité de vos données sources pour les valider ou les rejeter.

Prérequis :

Composants ETL utilisés dans le traitement

  • tFileInputDelimited : Pour lire les données d’un fichier CSV.
  • tSchemaComplianceCheck : Pour vérifier la qualité des données.
  • tLogRow : Pour afficher les données sur la console d’exécution.

Scénario

Le flux d’entrée provient d’un fichier CSV simple contenant des données dont les propriétés ont un mauvais type, un mauvais ID, dont les données sont supérieures à la longueur maximum, ou contenant des valeurs nulles dans les colonnes alors que celles-ci sont définies comme non nullables.
Pour détecter ces anomalies nous allons utiliser le composant tSchemaComplianceCheck qui permet de vérifier le type, la nullabilité et la longueur des données du flux d’entrée en fonction du schéma de référence défini.

Configurer le Job

  • Déposez les composants suivants : un tFileInputDelimited, un tSchemaComplianceCheck et deux tLogRow dans l’espace de modélisation graphique.
  • Reliez le tFileInputDelimited au tSchemaComplianceCheck à l’aide d’un lien Row > Main.
  • Cliquez-droit sur le composant tSchemaComplianceCheck et sélectionnez Row > Main pour le connecter au premier composant tLogRow. Ce flux de sortie ne contiendra que les données valides.
  • Cliquez-droit une deuxième fois sur le composant tSchemaComplianceCheck et cette fois sélectionnez Row > Rejects pour le relier au second composant tLogRow. Cette deuxième sortie regroupera toutes les données non conformes.
schéma de données

Configurer les composants

  • Double-cliquez sur le composant tFileInputDelimited afin d’afficher sa vue Basic settings. Configurez ses propriétés, notamment le nom du fichier d’entrée et le nombre de lignes d’en-tête à ignorer.
Propriété du composant Talend
  • Cliquez sur le bouton […] à côté du champ Edit Schema pour décrire la structure de données de ce fichier d’entrée. Dans ce scénario, le schéma est composé de cinq colonnes : ID, Name, BirthDate, State et City.
Fenêtre de propriétés
  • Renseignez le champ Length des colonnes Name, State et City : respectivement 7, 10 et 10. Cliquez sur OK pour propager les changements et fermer la boîte de dialogue Schema.
  • Double-cliquez sur le composant tSchemaComplianceCheck pour afficher sa vue Basic settings et configurer les paramètres de validation.
Composant
  • Cochez l’option Custom defined dans la zone Mode pour effectuer des validations personnalisées.
  • Dans le tableau Checked Columns, définissez les vérifications à effectuer. Pour ce scénario :
    • Le type de la colonne ID doit être Int.
    • La longueur des colonnes Name, State and City doit être vérifiée.
    • Le type de la colonne BirthDate doit être Date et le modèle de date attendu est dd-MM-yyyy.
    • Toutes les colonnes doivent être cochées pour les valeurs null, vous devez donc décocher la case Nullable de toutes les colonnes.
  • Dans la vue Advanced settings du composant tSchemaComplianceCheck, cochez la case Treat all empty string as NULL afin de rejeter toutes les lignes contenant des champs vides.
  • Pour visualiser le résultat du processus de validation sous forme de tableau dans la console Run, double-cliquez sur chaque composant tLogRow et cochez la case Table dans leur vue Basic settings.

Exécuter le Job

Enregistrez votre Job et appuyez sur F6 pour l’exécuter.

Deux tableaux s’affichent dans la console, qui montrent respectivement les données valides et les données rejetées :

  • Données valides :
Exemple de données
  • Données rejetées :
Données de rejet

Vous savez désormais utiliser un schéma tSchemaComplianceCheck afin de vérifier la qualité de vos données sources pour les valider ou les rejeter.

Laisser un commentaire

Il n'y a pas de commentaires pour le moment. Soyez le premier à participer !