Talend | BI experience - Part 2

Archive pour le mot-clef ‘Talend’

Talend et sa prestation “Framework”

Dimanche 24 janvier 2010

Talend nous a proposé une formation de 7 jours appelée : “Framework”. Cette prestation avait pour but d’analyser nos jobs, notre manière de fonctionner afin d’aller vers une industrialisation de nos jobs.

Voici ce qui a été analysé :

  • l’utilisation de joblet pour la mutialisation de certains morceaux de codes ou de flux (exemple un joblet pour les connexions qui reviennent pour chaque job)
  • l’utilisation de contextes pour gérer les connexions aux différents environnements voir ce post
  • la notion de commit et rollback pour garder l’intégrité de nos données en cas de problèmes d’exécution
  • la gestion de tables de rejets avec des commentaires techniques et fonctionnels
  • la gestion de logs voir ce post
  • l’utilisation du fichier audit que TIS nous fournit afin d’avoir plus d’information sur la construction des jobs
  • le schedule des jobs sur la plateforme TAC
  • l’utilisation du projet de référence : une sorte de projet virtuel vue par d’autres projets (à configurer dans la plateforme TAC). Ce projet de référence définit des connexions, des joblets, des jobs types. Ces différentes composantes sont ainsi réutilisables dans un projet quelconque grâce à un drag and drop.
  • la présentation du nouveau logiciel “Repository Manager” qui va nous permettre d’exporter et d’importer nos jobs grâce à une interface assez friendly

Cette prestation nous a vraiment permis de faire  des développements plus propres, plus travaillés. Je la recommande si vous en avez l’occasion.

le dernier Magic Cadran Gatner des ETL

Dimanche 13 décembre 2009

Ou se situe votre ETL?

171986_0001

Est il plutôt du type leader? challenger ? visionnaire? ou est il positionné sur une niche?
Aujourd’hui les ETL sont comparés sur de nombreux critères tels que :

  • l’efficacité du produit
  • la capacité à répondre à la demande des clients
  • leur évolution
  • la qualité du support
  • la stratégie de vente
  • le prix

Ces critères font que les éditeurs se positionnent chacun sur différents créneaux. Que vous pouvez situer sur le magic cadran.

Il y a les éditeurs présents depuis longtemps sur le marché : les leaders qui ont finalement déjà percé en proposant des licences assez onéreuses pour un produit de haute qualité tels que : Informatica et IBM.
Puis il y a les nouveaux sur le marché : les challengers, les visionnaires qui ont compris les problématiques de coûts des entreprises. Ils essayent de se faire connaître. Ce sont les mieux placés pour arriver à gagner du terrain sur le marché en proposant des outils et une stratégie commerciale plus souples. Leur différence : leur capacité à réaliser leur business plus ou moins rapidement. Microsoft est ainsi un challenger avec un potentiel a s’introduire dans le marché peut être plus facilement que le visionnaire persuasive software.
Et enfin il y a les ETL présent sur des niches qui proposent des options particulières. Ces ETL sont soit en déclin ou vraiment en début de course…

Ce dernier magic cadran diffusé le 25 Novembre 2009 est spéciale puisque c’est le premier à intégrer dans ses comparaisons, un logiciel open source : Talend.

C’est donc qu’aujourd’hui le logiciel open source rentre réèllement dans la course. Mais sera t-il tenir la distance avec sa stratégie commerciale, l’avancement des fonctionnalités de son produit…Seul l’avenir nous le dira!

l’AMC et l’AMD de TIS

Lundi 21 septembre 2009

L’AMD (Activity Monitoring Dashboard) et l’AMC (Activity Monitoring Control) sont deux modules qui permettent de faire des contrôles sur l’exécution des flux.

L’AMD est plutôt pour l’administrateur des jobs Talend. Ce module se trouve sur la plateforme TAC (Talend Administration Center). Il propose un contrôle sur :

  • le temps d’exécution
  • la visualisation des erreurs JAVA ou PERL lors d’un problème d’exécution d’un job

L’AMC est un module proposé au développeur dans la plateforme TIS (Talend Integration Studio) . Il lui permet de visualiser :

  • le temps d’éxécution
  • le nombre de lignes géré
  • les erreurs JAVA, PERL enventuelles

Ces informations peuvent être collectées aussi bien au niveau d’un composant qu’au niveau d’un job. Ces données que fourni l’AMC pourront être stockées dans une base de données à part, dans le référentiel de TAC ou dans une autre base de donnéess au choix.

Pour configurer votre TIS :

  • aller dans Window>preferences>AMC et créer le point de connexion à une base de données
  • redéclarer cette connexion dans le référentiel Talend Studio

Puis pour avoir accès à la plateforme AMC aller dans Window > perspective > AMC perspective.

Afin de collecter les informations sur l’exécution d’un job, deux méthodes s’offrent à nous:

  • une méthode implicite
  • une méthode explicite

La méthode implicite : Il suffit de cocher les options dans la view du job (Window > Show view > Job).

implicite

Puis

pour le contrôle du temps d’exécution : cocher les options dans les composants : advanced settings >tStatCatcher Statistic

pour le contrôle du nombre de lignes : en cliquant sur un lien de type row on a ensuite accès à 2 modes :

  • absolute : permet juste de connaître le nombre de lignes passant dans ce lien
  • relative : permet de regarder le nombre de lignes passant dans ce lien en fonction d’un autre. Il est possible ensuite de faire des seuils avec des codes couleurs qui seront répercutés au niveau des graphiques de l’AMC. (voir Thresholds)

La méthode explicite : en utilisant directement des composants dans le job (voir Logs&Errors):

  • tStatCatcher : pour les statisitques du temps d’exécution
  • tFlowMetter : pour le nombre de lignes traitées
  • tLogCatcher, tWarn, tDie : pour le contrôle des erreurs Java

Talend et son commandline

Mercredi 4 mars 2009

Dans un de mes posts précédent, j’ai décris l’architecture d’un projet avec les serveurs de développement, de recette et de production.

Mais comment passer les flux Talend d’un serveur à un autre?
Et bien le commandline.bat ou commandline.sh présent dans le répertoire de votre client TIS est la clef!

Voici un tutorial trés bien mené sur developpez.com

Et puis en bonus voici la liste des commandes à laquelle vous aurez accès avec ce commandline :
commandline

Talend, les librairies Java et la manipulation des String

Lundi 2 mars 2009

Chez mon client actuel, le datawarehouse était sous SQL Server. Puis pour des raisons politique, on m’a finalement demandé de stocker ce datawarehouse sous Postgres.

Après avoir réadapter mes flux, reconstruit la structure de mon datawarehouse sous Postgres, je me suis vite rendue compte à quel point SQL Server était permissif : certains flux ne fonctionnaient plus.

Il a donc fallu que je me penche réellement sur le sujet du “nettoyage des données”. J’avais déjà fait un post sur une routine qui nettoyait les données des caractères spéciaux.

Mais comme vous le savez Talend est souple et permet d’utiliser les librairies JAVA. Alors il faut profiter de cet avantage…

Pour les String par exemple, il suffit de télécharger ce .jar : commons-lang-2.4.jar et de l’appeler dans votre flux pour pouvoir utiliser ses fonctions.

Vous pourrez l’insérer dans vos job avec ce composant présent dans la rubrique Custom Code (en lui indiquant le point jar que vous pouvez télécharger ici ):

tLibrairyLoad

Voici un exemple d’utilisation avec la fonction trimToEmpty : org.apache.commons.lang.StringUtils.trimToEmpty(monchampString)).

Si vous avez d’autres libraires à conseiller pour manipuler les String ou d’autres types de données n’hésitez pas à nous en faire part.