Vous êtes sur la page 1sur 42

Les ETL Open Source : Une relle

alternative aux solutions propritaires


par Atol Conseils et Dveloppements
Date de publication : 25 juin 2008
Dernire mise jour :
D'annes en annes, l'Open Source n'a cess de toucher de nouveaux domaines
d'applications.
Aprs la conqute des systmes d'exploitation (Linux), des bases de donnes (MySql,
PostgreSql), de l'internet (serveurs, outils de gestion de contenu web), de nombreuses
applications mtiers Open Source ont galement vu le jour.
Ainsi, des ERP, des outils de gestion de contenu d'entreprise (ECM), de relation client
(CRM) ont fait leur apparition. Pour ne citer qu'eux : Alfresco, Compiere, SugarCRM.
Depuis peu, c'est le domaine de la Business Intelligence qui a vu l'apparition des logiciels
libres, ceux-ci couvrant tous les aspects du dcionnel: reporting, dashboards, analyse multi-
dimensionnelle, data-minining, et bien sr ETL.
C'est dans un contexte de concentration (*) des grands acteurs commerciaux du domaine
et du dynamisme actuel de l'OSBI (**) que nous vous prsentons ce livre blanc sur Les
ETL Open Source .
Sylvain DECLOIX - Responsable Ple OSBI
Atol Conseils et Dveloppements
www.atolcd.com
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 2 -
http://business-intelligence.developpez.com/
I - Introduction............................................................................................................................................................. 3
II - Qu'est-ce qu'un ETL ?.................................................................................................................................... 4
III - Pourquoi utiliser un ETL open source ?...............................................................................................................6
IV - Notre comparatif Talend Open Studio / Pentaho Data Integration .......................................................... 7
IV-A - Prsentation de Talend Open Studio..........................................................................................................7
IV-B - Prsention de Pentaho Data Integration.....................................................................................................9
IV-C - Comparatif des fonctionnalits..................................................................................................................14
IV-C-1 - Accs aux donnes.......................................................................................................................... 14
IV-C-2 - Dclenchement des processus........................................................................................................ 15
IV-C-3 - Traitement des donnes...................................................................................................................15
IV-C-4 - Traitement des donnes...................................................................................................................16
IV-C-5 - Dveloppement avanc.................................................................................................................... 16
IV-C-6 - Dploiement/Mise en production...................................................................................................... 17
IV-C-7 - Administration................................................................................................................................... 17
IV-C-8 - Gestion de la scurit...................................................................................................................... 17
IV-D - Comparatif des temps de traitements.......................................................................................................17
IV-D-1 - Mthodologie de ralisation des tests..............................................................................................17
IV-D-2 - Test n1............................................................................................................................................ 18
IV-D-3 - Test n2............................................................................................................................................ 20
IV-D-4 - Test n3............................................................................................................................................ 21
IV-D-5 - Test n4............................................................................................................................................ 23
IV-D-6 - Test n5............................................................................................................................................ 25
IV-D-7 - Test n6............................................................................................................................................ 27
IV-D-8 - Test n7............................................................................................................................................ 30
V - Conclusion........................................................................................................................................................... 33
VI - Annexe 1............................................................................................................................................................ 34
VII - Annexe 2........................................................................................................................................................... 36
VII-A - Un besoin et un projet client....................................................................................................................36
VII-B - Mise en place technique.......................................................................................................................... 37
VII-C - Rsultat sur un extranet.......................................................................................................................... 40
VII-D - Feedback sur l'utilisation de Pentaho Data Integration ..................................................................... 41
VII-E - Retour client............................................................................................................................................. 42
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 3 -
http://business-intelligence.developpez.com/
I - Introduction
Depuis quelques annes, des ETL Open Source ont fait leur apparition au milieu de la multitude des ETL propritaires
(voir liste en annexe 1).
Ces ETL ont notamment profit de l'mergence de l'OSBI ( Open Source Business Intelligence ) et de l'apparition
de nouvelles solutions dcisonnelles Open Source ambitieuses et dj matures.
Des socits telles que Pentaho (www.pentaho.org), SpagoBI (www.spagobi.org), JasperIntelligence
(www.jasperforge.org), Talend (www.talend.com) ont ainsi contribu l'mergence et la dmocratisation de ces
ETL Open Source.
Parmi ceux-ci, nous avons voulu effectuer une analyse comparative dtaille de deux d'entre eux :

Pentaho Data Integration ( Kettle l'origine)

Talend Open Studio


Ces deux ETL Open Source nous paraissent en effet l'heure actuelle les plus intressants en termes :

de fonctionnalits proposes,

de maturit,

de prennit.
Pentaho Data Integration ( PDI ) et Talend Open Studio ( TOS ) peuvent rpondre de faon quivalente la
plupart des ETL propritaires disponibles sur le march.
Atol Conseils et Dveloppements est ainsi en mesure de vous apporter conseil, support et assistance dans la la
mise en oeuvre de projets spcifiques utilisant l'un de ces 2 ETL Open Source.
Vous trouverez en Annexe 2 un exemple de projet ralis avec Pentaho Data Integration.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 4 -
http://business-intelligence.developpez.com/
II - Qu'est-ce qu'un ETL ?
ETL est l'acronyme de Extract # Transform -Load .
Un ETL permet ainsi l' Extraction, la Transformation et le Chargement de donnes depuis des sources diverses
(bases de donnes, fichiers) vers des cibles pralablement dfinies.
De nombreux systmes de gestion de bases de donnes sont supports nativement en lecture/criture (Oracle, MS
Sql Server, DB2, Postgresql, MySql,...).
De nombreux types de fichiers peuvent galement tre lus ou crits: Csv, Excel, Txt, Xml, ...
Notons que la plupart des ETL disposent d'une interface graphique permettant l'laboration des diffrents scnarios
d'intgration.
Le travail des dveloppeurs en est ainsi grandement facilit, tant au niveau de la conception que de la maintenance
des traitements de donnes.
Les ETL sont communment utiliss dans l'informatique dcisionnelle afin de permettre l'alimentation des
datawarehouses (entrepts de donnes).
Ces derniers servent de supports pour l'analyse des donnes sous plusieurs formes :

Rapports et tats,

Tableaux de bords (dashboards, balanced scorecard),

Indicateurs de performance ( KPIs ),

Analyse multi-dimensionnelle (OLAP) ,

Analyse exploratoire (Data-Mining).


Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 5 -
http://business-intelligence.developpez.com/
Ainsi, les ETL proposent dans la plupart des cas des fonctionnalits propres l'alimentation des datawarehouses :

Cration de cles techniques ( Surrogate keys )

Mise jour de type dimension Lente ( Slow Changing Dimension )

Agrgation de donnes

Alimentation de base multidimensionnelles (tables de faits et dimensions)


Les volumes de donnes traits sont toujours trs importants, ainsi les critres de performance sont primordiaux
dans le choix d'un ETL.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 6 -
http://business-intelligence.developpez.com/
III - Pourquoi utiliser un ETL open source ?
Le choix le plus difficile dans tout projet dcisionnel ou d'intgration/migration de donnes consiste dterminer
quelle mthode doit tre mise en oeuvre :
1 Faut-il crer du code spcifique (procdures SQL, code Java ou autre) ?
2 Faut-il acheter un ETL propritaire (Informatica, Oracle Warehouse Builder, BO Data Integrator ou autre) ?
La premire solution semble intressante, car elle permet de rester au plus prs des spcificits mtiers des donnes
traiter, tout en s'affranchissant des contraintes lies l'achat et l'utilisation d'un ETL propritaire. Cependant,
cette solution peut s'avrer coteuse long terme, tout simplement car l'volutivit constante des donnes mtier
entrane une ncessaire adaptation des traitements d'intgration. Celle-ci n'est pas toujours facile grer, surtout si
les quipes projets voluent au cours du temps.
La deuxime solution va permettre de mettre en oeuvre trs rapidement les traitements d'intgration, avec cependant
des cots levs (achat des licences, formations,...) et ceci ds la phase de dmarrage du projet.
Il existe dsormais une solution alternative: Utiliser un ETL Open Source.
On bnficie ainsi des avantages d'un ETL tout en gardant une matrise lisse des cots.
Ces derniers sont en effet rduits aux cots de formation initiale de l'outil et d'une ventuelle souscription une hot-
line technique. Aucune licence n'est payer dans ce modle conomique.
C'est donc dans cette 3me approche que se positionnent les ETL Talend Open Studio et Pentaho Data
Integration
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 7 -
http://business-intelligence.developpez.com/
IV - Notre comparatif Talend Open Studio / Pentaho Data Integration
IV-A - Prsentation de Talend Open Studio
Talend Open Studio est dvelopp par Talend (www.talend.com), une socit franaise dynamique et relativement
jeune. La premire version de Talend Open Studio a vu le jour au 2me semestre 2006, et la version actuelle
est la 2.3.
Talend Open Studio est un ETL du type gnrateur de code . Pour chaque traitement d'intgration de donnes,
un code spcifique est gnr, ce dernier pouvant tre en Java ou en Perl. Les donnes traites et les traitements
effectus sont donc intimement lis.
Talend Open Studio utilise une interface graphique, le Job Designer (base sur Eclipse RCP) qui permet la
cration des processus de manipulation de donnes :
De nombreux types d'tapes sont disponibles pour se connecter aux principaux SGBD (Oracle, DB2, MS SQL Server,
PostgreSQL, MySQL,...) ainsi que pour traiter tous les types de fichiers plats (CSV, Excel, XML), aussi bien en lecture
qu'en criture.
Talend facilite la construction des requtes dans les bases de donnes en dtectant le schma et les relations entre
tables.
Un rfrentiel permet de stocker les mta-donnes afin de pouvoir les exploiter dans diffrents jobs.
Par exemple on peut sauvegarder le type et le format des donnes d'entre d'un fichier CSV afin de pouvoir les
exploiter ultrieurement.
Une gamme complte de composants :
Le Job Designer intgre une Component Library : une palette graphique de composants et connecteurs.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 8 -
http://business-intelligence.developpez.com/
Les processus d'intgration sont construits simplement en dposant des composants et connecteurs sur le
diagramme, en dessinant leurs connexions et relations, et en modifiant leurs proprits.
La plupart de ces proprits peut tre issue des mtadonnes dj dfinies.
La Component Library inclut plus de 80 composants et connecteurs, fournissant des fonctions basiques telles que des
associations, transformations, agragation et recherches; des fonctions spcialises comme le filtrage de donnes,
le multiplexage de donnes...
Cette librairie supporte tous les principaux SGBDR, formats de fichiers, annuaires LDAP...
La Component Library peut facilement tre complte en utilisant des langages standards tels que Perl, Java ou SQL.
Des traces et statistiques d'excution en temps rel :
La conception trs visuelle des "jobs" permet de prsenter des statistiques d'excution en temps rel ou encore de
tracer les donnes transitant ligne ligne dans les composants de la chane de traitement.
Quand un job d'intgration est lanc via le Job Designer (en mode graphique), il est possible d'afficher les statistiques
de traitement en temps rel, montrant le nombre de lignes traites et rejetes, ainsi que la vitesse d'excution (lignes
par secondes). On peut ainsi reprer immdiatement les goulots d'tranglement.
Il est aussi possible d'activer un mode de traage, qui affiche pour chaque ligne le comportement adopt et montre
le rsultat des transformations. Les fonctionnalits de debogage traditionnelles sont videmment disponibles.
L'enrichissement des traitements par ajout de code spcifique :
La totalit du code gnr par Talend Open Studio, quelque soit le langage cible, est toujours visible et accessible
depuis l'environnement de conception.
On peut bien sr implmenter des spcificits mtiers propres aux donnes traites, ceci en ajoutant de nouvelles
routines .
Exemple de code gnr par Talend Open Studio :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 9 -
http://business-intelligence.developpez.com/
Intgration dans les suites dcisionnelles Open Source :
Talend est partenaire des diteurs des suites dcisionnelles SpagoBI et JasperIntelligence.
IV-B - Prsention de Pentaho Data Integration
Pentaho Data Integration est l'ETL de la suite dcisionnelle Open Source Pentaho.
Cet ETL, Kettle l'origine, est le fruit du travail de Matt Casters, un consultant BI qui l'a dvelopp l'origine
pour ses propres besoins au dbut des annes 2000.
Courant 2006, Matt Casters rejoint la socit Pentaho, et Kettle devient Pentaho Data Integration .
Les nouvelles versions s'enchanent alors un rythme soutenu. La prochaine version est la 3.0.2 qui doit sortir
courant Fvrier 2008.
Contrairement Talend Open Studio, Pentaho Data Integration est un moteur de transformation ETL: les donnes
traites et les traitements effectuer sont parfaitement spars. (on parle de meta-data driven ETL)
Les traitements sont stocks dans un rfrentiel (repository) qui peut tre soit au format XML (fichiers plats), soit
dans une base de donnes (ce qui permet notamment le partage entre plusieurs designers).
Tout comme Talend Open Studio, de nombreux types de SGBD sont supports (une trentaine) ainsi que tous les
types de fichiers plats (Csv, dlimit, Excel, XML).
Pentaho Data Integration dipose d'une interface graphique Spoon (base sur SWT), depuis laquelle on peut crer
deux types de traitements :

des transformations : celles-ci constituent les traitements de base d'intgration de donnes avec toutes les
tapes (steps) ncessaires l'extraction, la transformation, et le chargement des donnes.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 10 -
http://business-intelligence.developpez.com/

des tches (jobs) : ceux-ci permettent le squencement de plusieurs transformations avec des fonctionnalits
plus orients EAI : gestion des erreurs, envoi de mails de notification, transferts FTP/SFTP, excution de
scripts shell ou SQL, etc...
Caractristiques de Pentaho Data Integration :

Un produit sous licence GNU disponible sur plusieurs systmes d'exploitation :

Une suite de 3 composants: L'interface graphique Spoon , les dclencheurs en mode batch pour les
transformations ( Pan ) et les jobs ( Kitchen ).

Une installation simple (un dossier dcompresser) => un environnement d'excution JAVA 1.5 suffit

La possibilit de prvisualiser les flux de donnes traites, et ceci pour une tape donne.

La possiblit d'excuter les traitements sur le poste local, un serveur distant, ou un ensemble de serveurs
(excution en grappe ; clustering)

La possibilit de logger les traitements dans une base de donnes spcifique.

L'intgration parfaite avec la plate-forme dcisionnelle Pentaho. Par exemple, les flux de donnes en
provenance de l'ETL peuvent servir alimenter des rapports ou des dashboards en temps rel.
Spoon, l'interface graphique de cration des transformations et jobs :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 11 -
http://business-intelligence.developpez.com/
Spoon, le suivi des traitements real time :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 12 -
http://business-intelligence.developpez.com/
Briques de traitements de donnes (liste non exhaustive) :
Step Etape Description
Extraction depuis EXCEL Extraction de donnes
depuis un ou plusieurs
onglets d'un fichier XLS
Extraction depuis ACCESS Extraction de donnes
depuis une table d'une base
Access
Extraction depuis une base
de donnes
Extraction de donnes
depuis une table d'un SGBD
(Oracle, MySql, Postgres,
SQLServer, DB2, AS400,
SAP, etc...) : 30 SGBD
supports via JDBC et/ou
ODBC
Extraction depuis un fichier Extraction de donnes
depuis un fichier CSV ou de
type dlimit
Extraction depuis un fichier
XML
Extraction de donnes
depuis un fichier XML
Extraction depuis un
annuaire
Extraction de donnes
depuis un annuaire de type
LDAP
Alimentation base de
donnes
Insertion ou mise jour
d'une table d'un SGBD
(insert/update)

Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 13 -
http://business-intelligence.developpez.com/
Recherche dans base de
donnes
Recherche des
enregistrements dans une
base de donnes selon une
liste de valeurs
Recherche dans un flux Recherche des
enregistrements dans un flux
de donnes selon une liste
de valeurs
Normalisation Ligne Normalise des informations
Dnormalisation ligne Dnormalisation de lignes
Ajout squence Ajoute une squence
(calcule ou rcupre
depuis une base de donnes)
Filtrage de ligne Permet de diriger les flux
de donnes vers 2 cibles
diffrentes selon un ou
plusieurs critres
Agrgation de donnes Permet de raliser des
calculs d'agrgation sur un
ensemble de lignes (somme,
moyenne, min, max, count,
etc...)
Calculs Permet de crer des
donnes calcules partir
des donnes traites
Stockage des traitements au format XML :
Les jobs et transformations sont stocks dans un meta-langage, qui peut tre soit stock au format XML, soit dans
une base de donnes.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 14 -
http://business-intelligence.developpez.com/
IV-C - Comparatif des fonctionnalits
IV-C-1 - Accs aux donnes
Accs aux donnes relationnelles (SGBD)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 15 -
http://business-intelligence.developpez.com/
Fichiers plats
Connecteurs applicatifs
Autres
IV-C-2 - Dclenchement des processus
Dclenchement par message
Dclenchement par type de polling
IV-C-3 - Traitement des donnes
Transformations et calculs par dfaut
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 16 -
http://business-intelligence.developpez.com/
Attention : les tapes marques NON ci-dessus sont seulement pour la prise en charge automatique. Les 2 outils
fournissent, bien sr, un mcanisme de requtage directement en SQL qui permet de faire toutes les jointures et
les requtes imbriques...
Transformations manuelles
IV-C-4 - Traitement des donnes
IV-C-5 - Dveloppement avanc
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 17 -
http://business-intelligence.developpez.com/
IV-C-6 - Dploiement/Mise en production
IV-C-7 - Administration
IV-C-8 - Gestion de la scurit
IV-D - Comparatif des temps de traitements
IV-D-1 - Mthodologie de ralisation des tests
Les performances des temps de traitements sont un critre important dans le choix d'un ETL.
Les rsultats des tests qui sont donns dans les paragraphes suivants correspondent des cas simples et ne peuvent
en aucun cas prjuger des performances relles en environnement de production.
Seuls des tests pousss sur des traitements d'intgration rels peuvent permettre de qualifier dfinitivement l'ETL
choisi.

L'ensemble des tests ont t effectus sur un PC Portable Dell


Les caractristiques techniques sont les suivantes :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 18 -
http://business-intelligence.developpez.com/

Les versions utilises des 2 ETL sont les suivantes:

Pentaho Data Integration v3.0.1

Talend Open Studio v2.2.3

Pour chaque test, les rsultats prsents sont issu d'une moyenne de trois essais raliss dans des
conditions identiques.

Tous les traitements sont lancs en ligne de commande.


Ainsi, aucun essai n'est lanc depuis les interfaces graphiques aussi bien pour Pentaho Data Integration que Talend
Open Studio.

Enfin, les essais sont raliss uniquement en code gnr en Java pour Talend Open Studio, afin que l'on
puisse comparer de faon objective ceux obtenus avec Pentaho Data Integration, dont le moteur est crit en
Java.
IV-D-2 - Test n1
Descriptif 1. Extraction des donnes d'un fichier CSV
2. Chargement des donnes dans un autre
fichier CSV
- Le sparateur ; du fichier initial est
remplac par le sparateur , .
Dtails Le fichier d'entre comporte 7 champs typs
sequence [integer]; now [datetime]; first
[number]; second [string]; third [datetime];
fourth
[boolean]; fifth [integer]
0000000001;2007/11/0510:44:43.014;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000002;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000003;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000004;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000005;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000006;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000007;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000008;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000009;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
0000000010;2007/11/0510:44:43.029;12.345;undeuxtroisquatrecinq;0304/12/0500:00:00.000;Y;12345
etc.

Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 19 -
http://business-intelligence.developpez.com/
Modlisation dans Pentaho Data
Integration (PDI)
Modlisation dans Talend Open Studio
Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 20 -
http://business-intelligence.developpez.com/
IV-D-3 - Test n2
Descriptif 1. Extraction des donnes d'un fichier CSV
2. Chargement des donnes dans un fichier
XML
Dtails Le fichier d'entre comporte 7 champs typs
(mme fichier que Test1)
Le fichier de sortie est un fichier XML dont la
structure est la suivante :

Modlisation dans Pentaho Data
Integration (PDI)

Modlisation dans Talend Open Studio
Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 21 -
http://business-intelligence.developpez.com/
IV-D-4 - Test n3
Descriptif 1. Extraction des donnes d'un fichier CSV
2. Chargement des donnes dans une table
Postgresql
Dtails Le fichier d'entre comporte 7 champs typs
(mme fichier que Test 1 et 2)
La table Postgresql charge comporte les
champs suivants :

Modlisation dans Pentaho Data
Integration (PDI)

Modlisation dans Talend Open Studio
Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 22 -
http://business-intelligence.developpez.com/
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 23 -
http://business-intelligence.developpez.com/
IV-D-5 - Test n4
Descriptif 1. Extraction des donnes d' un fichier
commandes (format) CSV
2. Chargement des donnes dans une table
[livraisons] avec calcul du dlai de livraisons
et du montant global de chaque commande.
Rcupration du nom littral du produit via
un lookup sur la table [produits] partir
de son code.
Dtails Le fichier commandes.csv possde
la structure suivante. Il existe 26 zone de
livraisons (A, B, C, D, ...., X, Y, Z) :

La table [produits] possde la structure
suivante. Cette table (gnre alatoirement
pour les tests) contient le code et la
description de 100 000 produits :

La table cible [livraisons] doit contenir les
donnes ci-dessous aprs traitement :
[livraisons].[montant]= {prix_unit} x {qte}
[livraisons].[delai]= {date_livr} # {date-cmde}
[livraisons].[desc_complete]= Texte
comprenant {description produit} et
{zone_livraison}


Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 24 -
http://business-intelligence.developpez.com/
Modlisation dans Pentaho Data
Integration (PDI)
Le lookup sur la table [produits] permet de
ramener la description du produit partir du
code produit prsent dans le fichier d'entre :

L'tape JavaScript permet la ralisation
des calculs :

Modlisation dans Talend Open Studio
Le composant tMap, permet la fois de
raliser le lookup sur la table [produits] et la
ralisation des diffrents calculs :

Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 25 -
http://business-intelligence.developpez.com/
IV-D-6 - Test n5
Descriptif Test identique au Test 4, sauf qu'on isole
au dbut du traitement toutes les donnes
provenant venant des zones de livraisons
codes W, X, Y et Z
Ces lignes isoles sont exportes dans un
fichier CSV pour traitement ultrieur.
Dtails Le fichier CSV des lignes rejetes contient
ainsi le code produit et la zone de livraison
rejete associe (W, X, Y ou Z)

Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 26 -
http://business-intelligence.developpez.com/
Modlisation dans Pentaho Data
Integration (PDI)
Le filtrage des lignes s'effectue de la faon
suivante :

Modlisation dans Talend Open Studio
Comme dans le test 4, c'est le composant
tMap qui permet d'isoler les lignes rejeter :

Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 27 -
http://business-intelligence.developpez.com/
IV-D-7 - Test n6
Descriptif Test identique au Test 5, avec alimentation
d'une table d'agrgation [livraisons_stats]
Dtails La table d'agrgation [livraisons_stats] doit
contenir les donnes ci-dessous aprs les
traitements suivants. Le groupement de
donnes est effectu pour chaque zone de
livraison.
[livraisons_stats].[nb_livraisons]= {nb total
de livraisons sur la zone} (count)
[livraisons_stats].[montant_max]= {montant
maxi d'une commande pour la zone} (max)
[livraisons_stats].[montant_min]= {montant
mini d'une commande pour la zone} (min)
[livraisons_stats].[delai_moyen]= {delai
moyen de livraison pour la zone} (avg)


Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 28 -
http://business-intelligence.developpez.com/
Modlisation dans Pentaho Data
Integration (PDI)
Pour que les calculs d'agrgation soit
corrects, le flux de donnes doit tre tri
par zone de livraison. Dtail de l'tape
Agrgation de valeurs :

Modlisation dans Talend Open Studio
Pour que les calculs d'agrgation soit
corrects, le flux de donnes doit tre tri
par zone de livraison. Dtail de l'tape
tAggregateRow :

Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 29 -
http://business-intelligence.developpez.com/
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 30 -
http://business-intelligence.developpez.com/
IV-D-8 - Test n7
Descriptif Utilisation d'une tape de traitement
Dimension lente de type 2
Pour plus d'infos sur les diffrents types de
Slow Changing Dimension consulter la
page :
http://en.wikipedia.org/wiki/
Slowly_changing_dimension
Dtails La table [produits_ref_scd] permet
l'historisation des prix d'un catalogue produit.
Extrait de la table avant le traitement :

Le fichier trait indique le code et le prix de
l'article la date du traitement :
100; 746.48
101; 528.72
Une fois le traitement effectu, la table
[produits_ref_scd] stocke l'historique des
prix :

Pour un code produit donn, ds que
le prix est diffrent de celui prsent en
base, un nouvel enregistrement est cre
avec un nouveau numro de version. La
priode de validit est galement mise jour
(date_debut, date_fin)

Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 31 -
http://business-intelligence.developpez.com/
Modlisation dans Pentaho Data
Integration (PDI)
Modlisation dans Talend Open Studio
Rsultats du Test
(Temps de traitement exprims en sec.)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 32 -
http://business-intelligence.developpez.com/
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 33 -
http://business-intelligence.developpez.com/
V - Conclusion
A l'issue de l'ensemble de notre tude comparative, voici ce que nous pouvons conclure :
Talend Open Studio et Pentaho Data Integration sont des ETL ayant leurs propres spcificits, et sont donc de
ce fait plus complmentaires que concurrents
Ce sont des alternatives relles des ETL propritaires comme Informatica Power Center, Oracle Warehouse
Builder, Cognos DecisionStream...
Pourquoi ?
Les PLUS de Pentaho Data Integration Les PLUS de Talend Open Studio
Une interface simple et intuitive qui permet
de raliser trs rapidement vos premiers
traitements
Un rfrentiel de mtadonnes qui permet
la rutilisation des formats de fichiers, des
connexions aux bases, ...
Un rfrentiel de stockage des jobs qui peut
tre partag par plusieurs dveloppeurs
La notion de contexte qui permet de
switcher facilement d'un environnement de
test un environnement de production
Une parfaite intgration la plate-forme
PENTAHO, qui permet ventuellement la
rcupration de donnes dcisionnelles en
temps rel
Un outil de planification (scheduler) intgr
Un forum trs riche et dynamique et un wiki
bien document
Un forum galement dj trs riche
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 34 -
http://business-intelligence.developpez.com/
VI - Annexe 1
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 35 -
http://business-intelligence.developpez.com/
Socit ETL Commentaire
Abinitio Abinitio
Altova Mapforce
Attunity Integration Suite
Barracuda software Barracuda Integrator
Benetl Benetl Freeware
Business Objects Data Integrator
Cast Iron Systems Cast Iron Integration
Appliance

CA Data integrator
OpenSys Clover ETL Open Source
Cognos Decisionstream
Corporator Transformer
CoSORT CoSORT ETL tools
Crossflo Systems DataExchange
Datacyr Corporation DataCyr Transform
Data Exchanger Data Exchanger
DataHabitat DH ETL
Datamirror Datamirror
D2K D2K
Embarcadero DTStudio
Enhydra Octopus Open Source
ETL Solutions ltd Transformation Manager
ETI ETI Solution
GammaSoft data'distribution
Group 1 Data Flow
Hummingbird Genio
Information Builders iWay
IBM Websphere DataStage
Ikan MetaSuite
Informatica PowerCenter Market leader
iSoft Amadea
Microsoft DTS Ceased to exist
Microsoft Integration Services Bundled with SQL server
Oracle Warehouse Builder
Oracle Sunopsis
Pentaho Pentaho Data integration Open Source
Pervasive Data Junction
Pervasive Data Integrator & Business
Integrator

Platinum Info Pump Acquired by CA.
Powershift Manheim
Sagent Technology Sagent Solution Acquired by Group 1
SAS Data integration Previously ETL/Studio
Solonde Warehouse Workbench Acquired by Sybase
Sterling Commerce Gentran Integration Suite
Sunopsis Data Conductor Acquired by Oracle
Sybase Data Integration Suite &
Data Federation

Syncsort DMExpress
Talend Talend Open Studio Open Source
WisdomForce# FastReader
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 36 -
http://business-intelligence.developpez.com/
VII - Annexe 2
VII-A - Un besoin et un projet client
En 2007, en lien direct avec l'explosion des cours des crales, il a t dcid de mettre en place un service en
ligne de Bourse aux crales afin de permettre aux craliers d'avoir un minimum de garanties concernant les
prix de vente et d'achat des crales.
C'est dans ce contexte que l'ETL Pentaho Data Integration a t mis en place pour rcuprer les cotations EuroNext
MATIF du bl, du colza et du mas, et ainsi permettre une mise jour quotidienne des services de bourse disponible
sur un trentaine d'extranets.
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 37 -
http://business-intelligence.developpez.com/
VII-B - Mise en place technique
La syntaxe des fichiers XML traiter est la suivante :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 38 -
http://business-intelligence.developpez.com/
Le job permet :

de rcuprer par FTP les fichiers XML

de lancer le traitement et l'intgration des donnes dans l'entrept central

de notifier par mail le bon droulement (ou non) des traitements

d'excuter des ordres SQL pour indiquer l'application l'heure des traitements et le bon droulement de
ceux-ci.

Dtail du job du step 2 :


Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 39 -
http://business-intelligence.developpez.com/

Dtail du job du step 3 :


Mise jour en parallle des 30 serveurs extranets :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 40 -
http://business-intelligence.developpez.com/
VII-C - Rsultat sur un extranet
Le rsultat du traitement d'intgration de donnes permet de visualiser quotidiennement partir de 19h45 les cours
de clture du MATIF sur chacun des extranets.
Les donnes sont prsentes de faon tabulaire et graphiques :
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 41 -
http://business-intelligence.developpez.com/
VII-D - Feedback sur l'utilisation de Pentaho Data Integration
Dans ce contexte mtier trs prcis, voici les lments que l'on peut retirer de l'utilisation d'un ETL Open Source :

Phase de Conception/Dveloppement :
L'utilisation de Pentaho Data Integration est trs simple et intuitive, il n'y a pratiquement aucun code crire pour la
conception et la dfinition des traitements d'intgration.
Il y a donc des gains consquents en terme de dveloppement, malheureusement on ne peut pas s'affranchir de
l'analyse (!)
La documentation, les samples fournis avec l'outil et le site de Pentaho Data Integration (kettle.pentaho.org)
permettent bien souvent de trouver la solution un point de blocage.
Les fonctions de prvisualisation de l'ETL permettent de tester efficacement les traitements lors de la phase de
dveloppement.

Phase d'installation :
Il suffit juste d'installer Pentaho Data Integration sur le serveur cible (dcompression d'un zip, installation de java 1.5
si besoin), puis ensuite de planifier les traitements batch (via crontab sous Linux).
Le dploiement des jobs peut se faire par recopie du repository de DEV sur le serveur de PROD (remonte du
dump de la bdd du repository kettle)
Les ETL Open Source : Une relle alternative aux solutions propritaires par Atol Conseils et Dveloppements
- 42 -
http://business-intelligence.developpez.com/

Phase de production :
Chaque jour, les mails de notification permettent d'tre informs du bon droulement des traitements.
A ce jour, aucun plantage n'a t constat depuis la mise en production effectue le 23 Mai 2007.

Maintenance :
La maintenance volutive ou corrective est grandement simplife du fait de la vision graphique des traitements et
du dcoupage de ceux-ci en briques lmentaires.
Si jamais un jour il faut aller chercher les donnes via webservice, il suffira de remplacer l'tape parsing XML
par un webservice call

Cots de licences :
Aucun
VII-E - Retour client

Adhrents.coop communique chaque anne via la rapport annuel de la FFCAT (Fdration Franaise des
Coopratives Agricoles de Collecte d'Approvisionnement et de Transformation).
Les 2 pages qui suivent illustrent la satisfaction des coopratives quant la mise en place des services de bourse
en ligne, qui sont aliments en Back-End par un ETL Open Source !

Vous aimerez peut-être aussi