BI experience

3 février 2010
par maryam khiali
2 Commentaires

Repository Manager : une brique Talend qui facilite la vie

Pour arriver à toujours mieux développer et gérer ses jobs, Talend propose un petit module : le « Repository Manager ». Cette brique a pour but de migrer les jobs d’une plateforme à une autre. Exemple : de la plateforme de développement à la plateforme de recette.
Cette brique fait partie de l’offre LCP (Life Cycle Plateform) que propose Talend qui comprend :

  • l’audit Talend (dans la plateforme TAC où les données seront stockées en base de données)
  • le repository manager
  • le Talend Testing Plateform (permet de tester les évolutions d’un job faire des tests de non régression d’une version à une autre)

Le repository manager, plateforme web, propose la logique suivante :

  1. L’administrateur va dans un premier temps déclarer les différents environnements de développement, de recette et de production par type. La plateforme de développement sera déclarée en tant que « source », la plateforme de recette en tant que « source and target » et la plateforme de production en tant que « target ».
  2. Des règles seront ensuite définies selon le type d’objet et son statut, sa version…pour importer ou exporter les job. La plateforme propose la gestion de l’évolution des statuts des jobs (Exemple statut « GoToRecette » puis lors de lorsqu’il est exporter puis importer dans la recette son statut deviendra « Delivered »)
  3. Ces règles peuvent être planifiées
  4. Un onglet Dashboard permettra de suivre les différentes étapes de chaque exécution.

Cet outil peut vraiment se révéler indispensable lors de développement au quotidien. Talend marque encore un point!

31 janvier 2010
par maryam khiali
1 Commentaire

Talend et son Master Data Management

Talend propose une formule « full integration » qui comprend : TIS (Talend Integration Studio), TDQ (Talend, Data Quality), MDM (Master Data Management).

talendmdm

Avec le master data management, Talend permet de gérer un référentiel de données. Le but de cette brique est finalement de centraliser l’information qui sera qualifiée de « Vérité absolue » pour l’entreprise.

Ce référentiel sera géré grâce à une plateforme qui est une autre vue dans eclipse (du même genre que Talend Integration Studio) et grâce à un client web (du même type que la plateforme TAC (Talend Administration Center).

Voici la démarche du produit :

  1. Tout d’abord dans la plateforme eclipse, il faudra créer le modèle de données : la structure du référentiel qui créera automatiquement des écrans de gestion pour visualiser ou modifier les données (plateforme web) qu’il y aura dans ces structures
  2. MDM permet la gestion des rôles et des droits d’accès aux données.
  3. Au niveau de l’application web, les utilisateurs pourront se connecter et verront une vue  du référentiel que le développeur aura créée au préalable. Sur cette plateforme web, certains utilisateurs clefs pourront faire des recherches, modifier ou ajouter des données. Ils pourront naviguer dans les données
  4. Le développeur mettra en place des règles qui permettront de faire un contrôle sur les données. Ces dernières ne passeront dans le référentiel que si ces règles sont respectées. Ces règles seront appliquées dès que les utilisateurs voudront toucher aux données du référentiel via la plateforme web.
  5. D’autres données pourront être chargées via des jobs Talend (déployés sur le MDM et accessibles en webservice.), qui pourront utiliser les composants de data quality de l’entreprise QAS. Ces jobs ou process mettront donc en place aussi des contrôles de qualité.
  6. Pour déclencher ces jobs, le développeur pourra définir des triggers.
  7. Pour venir parfaire ce processus, les développeurs pourront designer le workflow que suivent les données.
  8. Un journal permettra de suivre toutes les modifications faites.
  9. L’outil offre une possibilité intéressante : lors d’une modification, un utilisateur aura la possibilité de tester l’impact de cette modification sur un projet local avant de la synchroniser avec le projet principale.

Une version open source est actuellement accessible depuis le 25 Janvier : ici

La différence entre la version open source gratuite et payante est :

  • dans la version gratuite vous aurez l’accès à la modélisation du référentiel, et à la partie web visualisation et modification des données
  • dans la version payante, vous pourrez utiliser la gestion de workflow en plus, les droits d’accès, le versioning, le journal…

24 janvier 2010
par maryam khiali
1 Commentaire

Talend et sa prestation « Framework »

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 mutualisation 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 rejet 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’informations 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 vu 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.

14 janvier 2010
par maryam khiali
4 Commentaires

Différents environnements? Allons voir du coté des contextes de Talend…

Talend propose dans son application, de créer des contextes (variables) qui peuvent être déclarés aussi bien au niveau d’un job qu’au niveau d’un projet.

La notion de contexte peut être vraiment utile lors de la gestion de différents environnements : développement, recette, production. Nous allons voir dans ce post comment créer ces contextes.

Deux possibilités s’offrent à nous:

La première solution :

Commençons par une déclaration de connexion classique :

declaration_connexion_1

En Cliquant sur le bouton « Exporter comme Contexte », nous obtenons la fenêtre ci-dessous. Puis en cliquant sur l’icône qui est ici encadrée en rouge, Talend nous permet de créer différentes possibilités de contexte pour notre connexion.

declaration_connexion_21

Ces contextes sont créés en cliquant sur « nouveau » ici encadré en rouge
declaration_connexion_31

C’est enfin dans cette fenêtre que nous pouvons modifier les variables de connexion à nos différents environnements

declaratiobn_connexion_4

Et voilà! La connexion fait maintenant appel aux contextes :

declaration_connexion_5

Ces contextes sont liés au projet

declaration_connexion_6

La seconde solution :

La gestion des environnements pourra se faire en passant par le composant tContextLoad qui fait finalement appel à des fichiers de configuration :

Grâce à un fichier texte comme celui-ci :

contextload_31

Puis dans Talend, les jobs commenceront comme ceci :
contextload_1

Attention ne pas oublier de déclarer ces contextes dans le job :
contextload_2

Et de finalement les déclarer dans les connexions d’input et/ou d’output
contextload_4

Les noms « serveur, port, login… » présents dans le fichier texte doivent avoir le même nom que les variables de contexte. C’est ainsi que dans un même fichier on pourra déclarer plusieurs connexions. Vous n’avez plus qu’à créer un fichier de dev, un autre de recette et un de prod et le tour est joué!

Ces deux solutions sont réalisables aussi bien sur TIS que sur TOS. L’une gère la connexion au niveau du projet (solution 1) et l’autre au niveau du job (solution 2).

Pour le schedule de l’exécution des jobs, sous TOS, il faudra fonctionner avec des script bash.
-En exportant les scripts du job en .zip en faisant clique droit « exporter les scripts du job » sur le job que vous aurez sélectionné. Puis dans le .zip vous trouverez un .sh ou .bat. En vous mettant dans ce répertoire vous pourrez exécuter des lignes de commandes de type :

  • test_run.bat –context_param filename=C:/Prod.txt –context=Default sous Windows et
  • sh ./test_run.sh –context_param filename=home/test_fichier_load.txt –context=Default (attention au permission n’oublier pas le chmod)

Si on regarde cette ligne de commande de plus près :

  • soit vous pourrez passer par le fichier –context_param filename=C:/Prod.txt si vous avez un context load (solution 2) dans le job ou
  • soit vous pourrez enlever cette partie faisant appel au fichier et changer –context=Default en mettant –context=PROD par exemple si le contexte est géré dans le projet (solution 1)

Sous TIS Lors de la construction du job le développeur prendra comme contexte par défaut (celui de dev). Par la suite ce job pourra être scheduler par l’administrateur. Il pourra choisir le contexte d’exemption approprié sur la plateforme que propose TIS : Talend Administration Center (TAC).

Voilà j’espère avoir été claire sur cette gestion des environnements par contexte. Si vous avez des commentaires n’hésitez pas…

10 janvier 2010
par maryam khiali
0 Commentaires

JasperServer-pro 3.7

Dès ce début Janvier Jasperspoft sort une nouvelle version de son logiciel :

Jasperserver pro 3.7 donnera accès à :

  • un rapport d’Audit sur l’utilisation des rapports
  • à une fonction help pour les utilisateurs
  • dans l’utilisation des domaines l’utilisateur pourra utiliser des filtres, des liens hypertext, faire des requêtes MDX pour les topics, pourvoir ajouter du texte
  • des maps de type fusion maps (voir le précédent post), widget pro et des charts pro
  • l’utilisateur pourra rencontrer des cascading parameters (des input control liés entre eux => exemple : l’utilisateur choisi le pays puis il aura accès aux villes de ce pays seulement) que le développeur aura pu créer avec iReport professional 3.7

Le but de jaspersoft est de remplacer l’exploitation jpivot par celle du requêteur ad-hoc.

J’espère vous mettre d’autres informations sur cette nouvelle version lors de l’utilisation de cette dernière. En effet nous sommes actuellement en train de faire l’update.