mercredi 19 janvier 2011

[Tutorial] Couplage de l'etl Talend TOS avec un serveur SVN subversion sur Ubuntu

Ce post va donner une petite méthode pour coupler un serveur svn sur un poste Ubuntu avec un etl Talend Open Studio. En effet, Talend TOS permet de donner un numéro de version aux jobs développés mais ne permet pas nativement de centraliser ce versionning sur un serveur svn. 
Cette fonctionnalité peut être vitale dans le cas où le développement des jobs etl se fait à plusieurs. La version payante de Talend, Talend Integration Suite propose cette fonctionnalité de versionning totalement intégrée dans le studio.

Prérequis

 Paquets à installer au préalable sur le serveur svn:
  • paquet apache2
  • subversion
  • libapache2-svn
Configuration du partage svn par http.

Création du repository svn dans le dossier /var/svn:


Attribution de la propriété du repository à l'utilisateur apache:


Partage du repository créé grâce à apache:

sudo vim /etc/apache2/mods-enabled/dav_svn.conf

Rajouter:
<Location /svn_tos>
  DAV svn
  SVNPath /var/svn/svn_tos
</Location>

Redémarrage du serveur apache




Dans un navigateur, à l'adresse http://localhost/svn_tos, on peut visualiser le repository svn.

Installation d'un client svn subersion dans la plate_forme Talend

Talend 4.1.2 est basé sur une plate forme Eclipse 3.5. On peut donc installer un client subversion en tant que simple plugin eclipse.
Télécharger le client subclipse 1.06 ici
Dézipper le contenu des dossiers features et plugins dans les dossiers du même nom dans l'installation de Talend.
Créer un projet nommé svn_test puis un job de test.
Faire un commit initial du projet dans le serveur subversion à l'aide de l'onglet équipe.
Quitter Talend et se reconnecter à l'aide d'un autre workspace en créant un projet du même nom pour simuler des développeurs multiples.
Se connecter au référentiel svn et faire un checkout du projet en tant que projet eclipse.
En revenant dans le référentiel de jobs Talend, on peut visualiser le projet créé précédement sur le svn. On peut ensuite à loisir modifier ces jobs Talend et faire un commit des fichiers de projet Talend.

Pour voir TOS couplé à svn en action:
  





En conclusion, on voit qu'il est possible de donner des capacités basiques de versionning à Talend à l'aide de cette méthode. L'action de committer ses développements reste à l'initiative du développeur et il suffira d'un peu de méthode et d'organisation pour éviter les conflits de versions.
Parallèlement, la version TIS payante de Talend permet le versionning de façon totalement intégré et transparente (à chaque sauvegarde des jobs etl...) et couple ceci à une plate-forme web de déploiement et de monitoring d'exécution des jobs finaux. Les cycles de développement-déploiement-exécution-suivi seront ainsi considérablement raccourcis et la productivité sera améliorée.

5 commentaires:

  1. Bonjour Julien

    Tout d'abord content de voir un nouveau blog en français sur l'OSBI ;-)

    Un article très intéressant sur la gestion des jobs Talend avec SVN.

    A noter qu'on peux faire la même chose avec son "concurrent" Pentaho Data integration (aka Kettle) lorsqu'on utilise les transformations et jobs au format XML (.ktr et .kjb).

    Le top du top, c'est d'utiliser un référentiel de type base de données (SGBD), car dans ce cas le travail collaboratif devient nettement plus simple (et c'est dispo dans la version gratuite en +)

    A bientôt

    Sylvain - http://www.osbi.fr

    RépondreSupprimer
  2. Bonjour Sylvain,

    Content que tu es trouvé l'article intéressant. Le blog commence tout juste et j'espère m'améliorer au fur et à mesure des articles.
    J'ai eu l'occasion d'utiliser(et d'apprécier) le référentiel partagé de Kettle par le passé.
    Néanmoins, ce que j'aime bien avec l'utilisation d'un serveur svn c'est le fait de proposer un outil standard de versionning de sources. A mon sens, ca permet de faire rentrer la pratique ETL plus facilement dans les process de développement standards que l'on rencontre chez un client.

    A bientôt

    RépondreSupprimer
  3. Bonjour,

    Sujet extrèmement intéressant ! (on ne peut pas féliciter TALEND pour son usage de SVN dans TIS). Néanmoins, les tests de SubEclipse portent ici sur Talend MDM Community Edition et non, comme indiqué, sur Talend Open Studio. L'intégration (sous Windows) sous TOS (ou TIS) échoue avec des erreurs de JAR manquants:
    - Designer Feature (4.0.3.r47759) requiert plug-in "com.ibm.icu (3.8.1.1)" ou compatible.
    - Commons Feature (4.0.3.r47759) requiert plug-in "org.eclipse.emf".

    Une idée de solution :-) ?

    RépondreSupprimer
  4. L'intégration des plugins Subclipse dans Talend Open Studio sous Windows échoue également pour ma part, j'arrive a installer plusieurs JAR mais les erreurs se succèdent.

    ----- Erreurs dans la configuration à l'issue de l'opération -----
    Help Feature (4.2.2.r63143) requiert plug-in "org.slf4j.api"

    Quelqu'un a t il déjà réussi cette opération ?
    Merci.

    RépondreSupprimer
  5. Bonjour Merci pour l'initiative,

    Je travaille sous windows, et ai téléchargé Talend MDM et je bloque sur cet onglet navigation que je n'ai pas.

    Merci.

    RépondreSupprimer