Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 42
    Points : 43
    Points
    43

    Par défaut Vérification intégrité de données décrites dans des fichiers csv

    Bonjour à tous,

    Tout est à peu près dans le titre. Je vais essayer d'être synthétique:

    Je travaille sur un système basé sur un progiciel depuis lequel sont extraites des données sous forme de fichiers .csv.
    Ces mêmes fichiers csv sont fournis ensuite à d'autres systèmes. Je souhaite donc, avant l'étape de diffusion, faire des vérifications minimales (intégrité, format de données, quelques vérifications fonctionnelles) pour maximiser la qualité de la donnée. Aujourd'hui tout ça est fait "manuellement" par des personnes de l'équipe mais j'aimerais qu'à terme ce soit automatisé quand on sera en production et que ça tournera.

    Du peu de connaissance que j'en avais il me semblait que Talend (ou un autre ETL) était capable de faire ça mais je n'en suis pas certain. Je vous sollicite donc pour avoir vos avis sur la faisabilité de la chose, vos avis, vos suggestions sur le sujet. Je précise que j'ai posté dans le forum Talend. Si toutefois, ça ne vous semblait pas approprié, n'hésitez pas à déplacer le post. Merci d'avance pour vos réponses. A bientôt.

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : décembre 2013
    Messages : 21
    Points : 33
    Points
    33

    Par défaut

    Bonjour,

    Peux tu donner un exemple de vérification que tu veux faire ? Il existe un composant Talend nommé tSchemaComplianceCheck, vas voir la documentation sur ce composant, il peut répondre en partie à tes besoins.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 42
    Points : 43
    Points
    43

    Par défaut

    Bonjour fulcho et merci d'avoir pris le temps de me répondre rapidement.
    Pour répondre à ta question, il y a en fait 3 types de contrôle à effectuer sur nos données (fichiers .csv):

    • Contrôle 1

    Le premier type consiste en un contrôle d'intégrité des données au sens relationnel.
    Par exemple, est ce que l'id de l'objet A est bien présent dans la liste des attributs de l'objet B avec lequel il est sensé être en relation.

    • Contrôle 2

    Le deuxième type est un contrôle de format
    Par exemple, est ce que tel champ de tel objet respecte le format de date attendu.

    • Contrôle 3

    Enfin le troisième et dernier type de contrôle est plus un contôle de type fonctionnel.
    Est que la valeur de tel attribut dans un objet est bien la somme de tel et tel autre attribut multiplié par 3 (c'est juste pour l'exemple).

    Voilà, tu sais tout. J'espère avoir été clair.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : décembre 2013
    Messages : 21
    Points : 33
    Points
    33

    Par défaut

    Alors, comme ça, sans voir le projet, ca va être difficile de trouver une solution pour ça, cependant je peux peut-être te laisser des pistes.

    Contrôle 1 : Tu peux peut-être faire un contrôle dans ton tMap, tu fais une jointure de type INNER JOIN entre 2 fichiers sur tes 2 fichiers d'entrées. (https://help.talend.com/reader/ZndcS...X62VBCkwJGS~wA , https://help.talend.com/viewer/attac...SikWsWyRvIP8zQ ) . Si tu fais ça bien, il ne te gardera que les données qui sont bien présent dans les 2 fichiers.

    Contrôle 2 : Tu peux utiliser le composant tSchemaComplianceCheck, tu devrais y trouver ton bonheur, sinon avec une expression régulière (https://www.lucaswillems.com/fr/arti...ons-regulieres)

    Contrôle 3 : Toujours dans le tMap, tu peux définir une variable dans lequel tu fais une condition. (Format : Condition?SI_OUI:SI_NON )


    Si je ne suis pas clair ou si tu as d'autres questions, n'hésites pas.

    PS : Un conseil, vas y pas à pas, ne tentes pas de faire tous tes contrôles d'un coup sinon tu vas t'y perdre.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 42
    Points : 43
    Points
    43

    Par défaut

    Parfait. Merci pour les liens.
    Je passe en résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 30/01/2014, 10h13
  2. Réponses: 5
    Dernier message: 30/01/2012, 18h38
  3. conception de données stockées dans des fichiers
    Par clubist dans le forum Schéma
    Réponses: 13
    Dernier message: 30/12/2008, 00h41
  4. Réponses: 2
    Dernier message: 09/06/2007, 22h09
  5. exporter données sql dans un fichier csv en java
    Par pinkemma dans le forum JDBC
    Réponses: 2
    Dernier message: 07/03/2007, 09h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo