08 Obs Francheteau

86

Transcript of 08 Obs Francheteau

Page 1: 08 Obs Francheteau

Master Professionnel ALMA 2007/2008

Rapport de stage

Étude des ETL Open Source

Encadrant : Réalisé par :Antony GICQUEL Florian FRANCHETEAU

Tuteur :Christophe JERMANN

Page 2: 08 Obs Francheteau

Table des matières

1 Introduction 6

2 Présentation de la société 82.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.1.1 AQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.2 Silicomp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.3 Orange Business & Services . . . . . . . . . . . . . . . . . . . . . 9

2.2 Activités d'Orange Business & Services IT&L@bs . . . . . . . . . . . . . 92.2.1 Le pôle IT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2.2 Le pôle L@bs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Les Centres Opérationnels de l'Ouest de la France . . . . . . . . . . . . . 10

3 Qu'est-ce qu'un ETL ? 123.1 La Business Intelligence . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.1.1 Dé�nition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1.2 Les entrepôts de données . . . . . . . . . . . . . . . . . . . . . . . 123.1.3 Des fonctionnalités di�érentes d'une base de données classique . . 123.1.4 Modèles en étoile et en �ocon . . . . . . . . . . . . . . . . . . . . 13

3.2 Dé�nition d'un outil ETL . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3 Extract, Transform, Load . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.3.1 Extract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.2 Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.3.3 Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.4 Autres fonctionnalités des outils ETL . . . . . . . . . . . . . . . . . . . . 163.5 Application des outils ETL à la BI . . . . . . . . . . . . . . . . . . . . . 163.6 Autres applications des outils ETL . . . . . . . . . . . . . . . . . . . . . 17

3.6.1 Migration de données . . . . . . . . . . . . . . . . . . . . . . . . . 183.6.2 Synchronisation de données . . . . . . . . . . . . . . . . . . . . . 18

4 Pourquoi de l'Open Source ? 194.1 Dé�nition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2 Alternatives à l'Open Source . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.2.1 Créer un ETL maison . . . . . . . . . . . . . . . . . . . . . . . . 194.2.2 Acheter un ETL propriétaire . . . . . . . . . . . . . . . . . . . . . 20

4.3 Avantages de l'Open Source . . . . . . . . . . . . . . . . . . . . . . . . . 21

5 Comparatif des solutions ETL Open Source 225.1 Comparatif préliminaire . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

5.1.1 Recherche des ETL Open Source existants . . . . . . . . . . . . . 22

Page 3: 08 Obs Francheteau

TABLE DES MATIÈRES 2

5.1.2 Les critères à retenir . . . . . . . . . . . . . . . . . . . . . . . . . 235.1.3 Les trois phases de l'étude . . . . . . . . . . . . . . . . . . . . . . 235.1.4 Tableaux comparatifs préliminaires des dix ETL . . . . . . . . . . 24

5.2 Présentation de cinq ETL Open Source . . . . . . . . . . . . . . . . . . . 245.2.1 Pentaho Data Integration . . . . . . . . . . . . . . . . . . . . . . 255.2.2 Talend Open Studio . . . . . . . . . . . . . . . . . . . . . . . . . 285.2.3 Clover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.2.4 Jitterbit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.2.5 Apatar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.3 Tableaux comparatifs détaillés . . . . . . . . . . . . . . . . . . . . . . . . 385.3.1 Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.3.2 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.3.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

6 Tests de performances 406.1 Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406.2 Cas de Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.3 Tests �chier vers �chier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6.3.1 Fichier CSV vers autre �chier CSV . . . . . . . . . . . . . . . . . 426.3.2 Fichier CSV vers XML . . . . . . . . . . . . . . . . . . . . . . . . 44

6.4 Tests �chier vers base de données . . . . . . . . . . . . . . . . . . . . . . 466.4.1 Fichier CSV vers base MySQL . . . . . . . . . . . . . . . . . . . . 466.4.2 Fichier CSV vers base SQL Server Express 2005 . . . . . . . . . . 476.4.3 Fichier CSV vers base Oracle Express 10g . . . . . . . . . . . . . 486.4.4 Fichier CSV vers base PostgreSQL . . . . . . . . . . . . . . . . . 496.4.5 Fichier CSV vers base FireBird . . . . . . . . . . . . . . . . . . . 506.4.6 Fichier CSV vers base Access 2003 . . . . . . . . . . . . . . . . . 516.4.7 Fichier XML vers base MySQL . . . . . . . . . . . . . . . . . . . 52

6.5 Scénarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546.5.1 Test 1 - Fichiers CSV avec transformations de dates . . . . . . . . 546.5.2 Test 2 - Di�érentes tables avec �ltrage . . . . . . . . . . . . . . . 576.5.3 Test 3 - Di�érentes tables avec calcul et agrégation . . . . . . . . 59

7 Bilan 617.1 Quel ETL choisir ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617.2 Pourquoi choisir TOS et non PDI . . . . . . . . . . . . . . . . . . . . . . 617.3 Pourquoi choisir PDI et non TOS . . . . . . . . . . . . . . . . . . . . . . 62

8 Étude approfondie de TOS et de PDI 648.1 Talend Open Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

8.1.1 Étude des composants . . . . . . . . . . . . . . . . . . . . . . . . 648.1.2 Intégration à un projet . . . . . . . . . . . . . . . . . . . . . . . . 66

8.2 Pentaho Data Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 668.2.1 Étude des composants . . . . . . . . . . . . . . . . . . . . . . . . 668.2.2 Intégration à un projet . . . . . . . . . . . . . . . . . . . . . . . . 68

Page 4: 08 Obs Francheteau

TABLE DES MATIÈRES 3

9 Études annexes e�ectuées 699.1 Étude sur les SGBD gratuits / Open Source . . . . . . . . . . . . . . . . 699.2 Utilisation d'un ETL propriétaire dans un véritable projet . . . . . . . . 709.3 Étude sur les plateformes OSBI . . . . . . . . . . . . . . . . . . . . . . . 719.4 Étude sur les outils de reporting Open Source . . . . . . . . . . . . . . . 73

10 Conclusion 75

11 Webographie 76

12 Annexes 7712.1 Tableaux comparatifs des dix ETL . . . . . . . . . . . . . . . . . . . . . 77

12.1.1 L'organisation, la communauté . . . . . . . . . . . . . . . . . . . 7712.1.2 Informations générales et accessibilité . . . . . . . . . . . . . . . . 7812.1.3 Possibilités, Compatibilités . . . . . . . . . . . . . . . . . . . . . . 79

12.2 Tableaux comparatifs détaillés de cinq ETL . . . . . . . . . . . . . . . . 8012.2.1 L'organisation, la communauté . . . . . . . . . . . . . . . . . . . 8012.2.2 Informations générales, accessibilité . . . . . . . . . . . . . . . . . 8012.2.3 Fonctionnalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Page 5: 08 Obs Francheteau

Table des �gures

3.1 modèle en étoile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2 modèle en �ocon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.3 Un outil ETL extrait des données sources, les transforme puis les charge

dans des données cibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.4 Schéma explicatif de l'utilisation d'outils ETL dans l'informatique déci-

sionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.5 Schéma explicatif de la migration de données . . . . . . . . . . . . . . . . 183.6 Schéma explicatif de la synchronisation de données . . . . . . . . . . . . 18

4.1 Magic Quadrant de Gartner (Source : site o�ciel de Gartner) . . . . . . 204.2 Diagramme représentant les coûts des solutions en fonction du temps passé

(Source : site o�ciel de Pentaho) . . . . . . . . . . . . . . . . . . . . . . 21

5.1 Pentaho Data Integration : Création de transformation . . . . . . . . . . 265.2 Pentaho Data Integration : Création de tâche (Job) . . . . . . . . . . . . 275.3 Talend Open Studio : Création d'un job . . . . . . . . . . . . . . . . . . 295.4 Talend Open Studio : Le Business Modeler . . . . . . . . . . . . . . . . . 305.5 Clover : Interface de création d'un graphe . . . . . . . . . . . . . . . . . . 325.6 Jitterbit : Interface d'opérations . . . . . . . . . . . . . . . . . . . . . . . 345.7 Jitterbit : Interface de transformations . . . . . . . . . . . . . . . . . . . 355.8 Apatar : interface de création d'un DataMap . . . . . . . . . . . . . . . . 36

6.1 Schéma de la base de données tests . . . . . . . . . . . . . . . . . . . . . 416.2 Diagramme Comparatif : Fichier CSV vers autre �chier CSV . . . . . . . 426.3 Diagramme Comparatif : Fichier CSV vers �chier XML . . . . . . . . . . 456.4 Diagramme Comparatif : Fichier CSV vers base MySQL . . . . . . . . . 466.5 Diagramme Comparatif : Fichier CSV vers base SQL Server Express 2005 476.6 Diagramme Comparatif : Fichier CSV vers base Oracle XE 10g . . . . . . 486.7 Diagramme Comparatif : Fichier CSV vers base PostgreSQL . . . . . . . 496.8 Diagramme Comparatif : Fichier CSV vers base FireBird . . . . . . . . . 506.9 Diagramme Comparatif : Fichier CSV vers base Access 2003 . . . . . . . 516.10 Diagramme Comparatif : Fichier XML vers base MySQL . . . . . . . . . 526.11 Test 1 - Modélisation sous Talend Open Studio . . . . . . . . . . . . . . 546.12 Test 1 - Modélisation sous Pentaho Data Integration . . . . . . . . . . . 556.13 Diagramme Comparatif : Fichiers CSV avec transformations de dates . . 556.14 Test 2 - Modélisation sous Talend Open Studio . . . . . . . . . . . . . . 576.15 Test 2 - Modélisation sous Pentaho Data Integration . . . . . . . . . . . 576.16 Diagramme Comparatif : Jointures de tables avec �ltrage . . . . . . . . . 586.17 Test 3 - Modélisation sous Talend Open Studio . . . . . . . . . . . . . . 596.18 Test 3 - Modélisation sous Pentaho Data Integration . . . . . . . . . . . 59

Page 6: 08 Obs Francheteau

TABLE DES FIGURES 5

6.19 Diagramme Comparatif : Jointures de tables avec agrégation . . . . . . . 60

9.1 Architecture de BOMAG . . . . . . . . . . . . . . . . . . . . . . . . . . . 709.2 Capture d'écran de JasperServer . . . . . . . . . . . . . . . . . . . . . . . 719.3 Capture d'écran de Pentaho BI Platform . . . . . . . . . . . . . . . . . . 729.4 Capture d'écran de SpagoBI . . . . . . . . . . . . . . . . . . . . . . . . . 729.5 Exemple de rapport créé avec JasperReports . . . . . . . . . . . . . . . . 749.6 Capture d'écran de JasperReports . . . . . . . . . . . . . . . . . . . . . . 74

Page 7: 08 Obs Francheteau

Chapitre 1

Introduction

Dans le cadre de notre cursus universitaire, en deuxième année de Master ProfessionnelALMA, nous avions à e�ectuer un stage professionnel de cinq mois. Pour de nombreusesraisons, j'ai préféré suivre celui-ci à Rennes. Ce stage se devait d'être en lien étroit avecnotre cursus, c'est-à-dire qu'il devait nous permettre d'utiliser des principes, méthodesou technologies étudiés tout au long de notre formation a�n de pouvoir valider cettedernière. Après de nombreuses recherches (tant sur Internet que dans des salons tels queles salons du stage à Rennes et à Nantes) et plusieurs entretiens e�ectués en Bretagne,j'ai �ni par choisir la société Silicomp-AQL récemment rachetée par Orange Business &Services (OBS). J'ai trouvé cette dernière très agréable, bien située, avec un excellentaccueil.

Le sujet du stage, quant à lui, a pour nom "Etude des ETL Open Source". Ce stage,d'une durée de cinq mois, s'inscrit dans le domaine du décisionnel (ou en anglais, BusinessIntelligence). Il est précisé que le stagiaire doit avoir une connaissance en SGBD (Systèmede Gestion de Bases de Données).

Le sigle ETL signi�e "Extract Transform Load". Ces outils extraient des donnéesde sources hétérogènes, les transforment et alimentent di�érentes cibles, là aussi hétéro-gènes. Ils sont souvent utilisés pour récupérer di�érentes informations a�n d'alimenterrégulièrement des entrepôts de données qui, eux, permettent une meilleure analyse de cesdernières.

Dans un premier temps, le travail consiste à recenser tous les outils ETL Open Sourcedisponibles et d'en extraire de nombreux critères permettant de les di�érencier. Dans unsecond temps, le déroulement du stage nécessite d'installer plusieurs de ces outils (ceuxjugés les plus pertinents) pour pouvoir e�ectuer de nombreux tests a�n de retenir les plusperformants.

La branche d'OBS dans laquelle j'e�ectue mon stage souhaite se positionner de plusen plus du côté du décisionnel. Ce stage a donc une grande importance à leurs yeux etils en attendent beaucoup. L'objectif �nal de celui-ci est de fournir une note de synthèsedécrivant les caractéristiques, les avantages et les inconvénients des meilleurs ETL OpenSource et de pouvoir choisir l'ETL le plus approprié pour un projet donné. Ceci leurpermettra de répondre à des appels d'o�res de nombreux clients ne souhaitant pas dé-bourser une fortune pour acquérir un ETL propriétaire. Il est aussi indispensable, à la �ndu stage, de pouvoir apporter les informations nécessaires a�n d'intégrer un ETL OpenSource à un projet décisionnel et aussi de pouvoir pro�ter au maximum des avantages del'ETL choisi.

Page 8: 08 Obs Francheteau

CHAPITRE 1. INTRODUCTION 7

En�n, il est précisé dans le sujet du stage, qu'en parallèle des résultats de l'analyse surles ETL, un rapport comparant di�érents SGBD Open Source pourra être fourni (cetteétude est judicieuse étant donné que les SGBD sont intimement liés aux ETL). Tout cecia�n de pouvoir proposer aux clients une o�re complète et Open Source si possible pourune raison évidente de coûts. Cette étude permettra en dé�nitive qu'OBS puisse acquérirde nouveaux projets et conquérir de nouveaux clients.

Nous allons donc tout d'abord nous attarder sur la société OBS et son historique avecle rachat d'AQL puis de Silicomp. Nous pourrons ensuite débuter notre étude sur les ETLOpen Source en commençant bien évidemment par comprendre les enjeux de la BusinessIntelligence.

Page 9: 08 Obs Francheteau

Chapitre 2

Présentation de la société

2.1 Historique

2.1.1 AQL

AQL est né en octobre 1988 à Rennes. Cette société, dont les trois lettres signi�entAlliance Qualité Logiciel, a été créée par Stéphane Miège. Comme son nom l'indique, lemaître mot d'AQL est la qualité. Cette société s'est spécialisée en trois départements :l'EDI (Échange de Données Informatisées), les réseaux et l'assurance qualité. L'idée del'EDI est de pouvoir transmettre directement les documents informatiques (chose rare àl'époque). Quant à l'assurance qualité, c'est un ensemble de normes et de procédures àsuivre tout au long d'un projet, pour que celui-ci atteigne le niveau de qualité recher-ché. Le premier objectif d'AQL était donc de jouer sur la performance pour pouvoir sedémarquer des autres SSII (Société de Services en Ingénierie Informatique). Cette poli-tique a rapidement porté ses fruits, AQL a pu atteindre en l'espace de moins d'un anun e�ectif de 19 personnes (dont 15 ingénieurs) et de nombreux clients tels que Citroën,TRANSPAC, OST, le CCETT et CELAR.

Suite logique de leur orientation, AQL a été certi�é ISO 9001 en 1992. Cette normespéci�e des exigences au niveau de la conception, du développement, de la production,de l'installation et du service après-vente. Un logiciel développé sous cette norme doitdonc suivre toutes ces contraintes. En 2000, la société Silicomp rachète AQL. En 2001,AQL est certi�é ISO 9001 :2000 (norme plus récente, une nouvelle version est prévuepour 2008).

2.1.2 Silicomp

Silicomp, elle, a été créée en 1983 par Jean-Michel Gilner à Grenoble. Silicomp atoujours voulu se di�érencier des classiques SSII et a donc adopté en 1994 le modèle SSTI(Société de Solutions en Technologies Informatiques). Ce modèle a pour but d'apporter

Page 10: 08 Obs Francheteau

Activités d'Orange Business & Services IT&L@bs 9

une forte composante technologique dans les solutions proposées aux clients. Cela permetde perfectionner le marketing de l'o�re par cet apport de di�érenciateur technologique etainsi, de se démarquer des classiques SSII. Cette orientation a pu o�rir une forte croissanceà Silicomp qui a ainsi acquis di�érentes sociétés (Gex Informatique en 1990, Qualience en1999, Telecom Systems et AQL en 2000, AXEAN en 2001 et en�n QConsulting en 2003).Silicomp a aussi ouvert de nombreux bureaux à travers le monde : en 1994 à Singapouret aux Etats-Unis, ils atteignent même en 1998 la Silicon Valley, puis, par la suite, l'Indeet le Canada.

En 2004, Silicomp et sa �liale AQL fusionnent, ce qui créé Silicomp-AQL. L'orientationde Silicomp tourne autour de trois principaux domaines : la technologie de l'information(avec la télé numérique par exemple), les réseaux (explosion des réseaux haut débit) ainsique la R&D (Recherche et Développement). Alors que Silicomp atteint 1200 employés,elle se fait racheter par France Télécom le 4 janvier 2007. Le nom de Silicomp devient,en 2008, Orange Business & Services IT&L@bs.

2.1.3 Orange Business & Services

Durant la période 2005-2008, France Télécom a mis en ÷uvre la stratégie NExT(Nouvelle Expérience des Télécoms). L'objectif de cette dernière est de créer de nouvellessources de croissance en o�rant des services simples, innovants et convergents. Ils ontdonc créé la �liale entreprise d'Orange : Orange Business & Services (OBS). OBS disposede près de 10 000 employés à travers le monde et Orange, de 191 000 employés.

OBS a donc vu le jour le 1er juin 2006 et est composé de 6 �liales NRS (NetworkRelated Services) proposant des compétences fortes dans des domaines très en pointes.Orange Business & Services IT&L@bs (constituée principalement de l'entreprise Silicomp-AQL) est une de ces 6 �liales.

2.2 Activités d'Orange Business & Services IT&L@bs

Le nom IT&L@bs vient de ses deux pôles d'activités : le pôle IT (Information Tech-nologies) et le pôle L@bs (laboratoires de recherche). Il comporte environ 1300 employésdans le monde.

2.2.1 Le pôle IT

Ce pôle correspond à l'activité d'une SSII classique, il s'occupe donc de tout cequi touche aux systèmes d'informations et à l'ingénierie logicielle. IT&L@bs a choisi des'orienter vers les résultats en essayant d'améliorer en permanence leurs quatre secteursd'activité.

Le premier concerne les solutions industrielles. IT&L@bs cherche à accompagner lesbureaux d'études, les centres de recherche et de production, en suivant tout le cycle desproduits ou des systèmes, de leur conception à leur maintient.

Page 11: 08 Obs Francheteau

Les Centres Opérationnels de l'Ouest de la France 10

Le second secteur concerne les systèmes embarqués. En e�et, on assiste actuellementà une forte expansion de cux-ci. Ils sont omniprésents dans notre vie quotidienne : destéléphones portables aux automobiles, en passant par la télévision ou les guichets au-tomatiques bancaires. De nombreux systèmes communiquent entre eux et, l'évolutionde la technologie impose de gérer un nombre croissant de données le plus rapidementpossible. Ces systèmes embarqués sont un axe majeur d'activité chez IT&L@bs qui gèreentièrement leurs cycles de développement.

IT&L@bs s'occupe aussi des systèmes d'information d'entreprise. Cela consiste à aiderles organisations à concevoir ou refondre leurs systèmes d'informations. Là aussi, tout lecycle de vie est géré, de l'architecture au déploiement des systèmes.

En�n, la sécurité des systèmes d'informations a toujours été une activité majeure deSilicomp, ils continuent ainsi depuis quinze ans dans cette voie. Ils gèrent aussi bien lesadministrations que les organisations privées.

2.2.2 Le pôle L@bs

Comme son nom l'indique, ce pôle gère des laboratoires spécialisés. IT&L@bs possèdedeux laboratoires majeurs : la laboratoire CESTI et le laboratoire FIME.

CESTI (Centre d'Evaluation de la Sécurité des Technologies de l'Information) existedepuis 1992. De nombreux experts en sécurité vont essayer d'évaluer si un produit ouun système est bien conforme à un référentiel. Et ensuite, ils vont pouvoir accorder descerti�cations de sécurité qui peuvent être déclinés en plusieurs niveaux.

FIME est un laboratoire indépendant dédié aux cartes à puces aussi bien dans ledomaine de la monétique que du transport ou de la santé. Il a obtenu des accréditationsdes plus grandes marques de cartes à puces. Le centre de Rennes est spécialisé dans lescartes à puces RFID (Radio Frequency Identi�cation).

2.3 Les Centres Opérationnels de l'Ouest de la France

L'Ouest est composé de sept CO (Centres Opérationnels) dont deux à vocation ré-gionale.

Le CO National Portail et eBusiness (50 personnes) s'occupe des portails d'entrepriseset des achats/ventes via les médias Internet. Ils ont entre autre développé le portail"cinéma" de l'UGC et une partie du portail Orange Mobile.

Le CO National Gouvernance du SI (Système d'Information) (50 personnes) s'occupede donner des conseils et d'apporter son expertise sur l'architecture, l'urbanisation ou lasécurité des systèmes d'informations.

Les CO Laboratoires Sécurité et Conseil Sécurité font partie, contrairement auxautres, du pôle L@bs. Le premier se situe au niveau de la recherche, dans le domainede la sécurité des SI dans des laboratoires con�dentiels. Le second apporte expertise etconseils dans ce même domaine.

Le CO Régional SFP (Software Factory Platform) (105 personnes) conçoit de nom-breux logiciels autour des plates-formes de services et des technologies de l'information.

Page 12: 08 Obs Francheteau

Les Centres Opérationnels de l'Ouest de la France 11

Ils utilisent beaucoup de Java JEE, de .NET et de technologies réseaux (pour la télé à lademande ou la sécurité des portails).

Le CO National TTM (Terminaux et Technologies Multimedia) (65 personnes) s'oc-cupe de l'étude, du développement, de la validation et de l'intégration de composantstechniques. Ils ont développés de nombreuses applications sur des terminaux de télévisionnumérique ou de portables a�n d'être commercialisés par Orange ou d'autres sociétés.

En�n le CO Régional SLO (Service Local Ouest) (70 personnes) s'occupe de la crois-sance locale axée PME/PMI. C'est dans ce CO que le stage est e�ectué. Il permet d'ap-porter la souplesse, la réactivité et la proximité pour répondre aux besoins des clients.Les technologies utilisées sont du Java JEE, .NET, C++, PHP, Oracle, Sunopsis, etc. Ilssouhaitent actuellement acquérir plus de compétences au niveau de la Business Intelli-gence et c'est en partie pour cette raison que j'e�ectue mon stage. Le sujet propose, ene�et, d'étudier di�érents composants décisionnels Open Source (dont principalement lesETL) pour pouvoir les intégrer dans de futurs projets.

Page 13: 08 Obs Francheteau

Chapitre 3

Qu'est-ce qu'un ETL ?

3.1 La Business Intelligence

3.1.1 Dé�nition

Avant de nous pencher sur la dé�nition d'un outil ETL, il est important de faire unbref rappel sur le domaine de la Business Intelligence (ou informatique décisionnelle enfrançais) car c'est en e�et le plus souvent dans ce contexte que s'utilisent les ETL.

La Business Intelligence (ou BI) est une branche de l'architecture des systèmes d'infor-mation. Elle permet de mettre en ÷uvre des moyens pour collecter, consolider et restituerdes données a�n d'o�rir à une entreprise une aide à la décision (souvent dans les domainesdu marketing, de la production ou de la comptabilité).

La BI permet d'apporter les solutions à un problème décisionnel donné (par exemple :pourquoi les ventes ont-elles chuté au deuxième trimestre de l'année ? et que faut-il fairepour y remédier ?). Le coeur de la Business Intelligence repose sur les entrepôts de donnéesalimentés par les ETL, et récupérés par de nombreux outils permettant de répondre auxproblèmes. Nous allons donc nous intéresser tout d'abord à ces entrepôts de données.

3.1.2 Les entrepôts de données

Voici la dé�nition du grand dictionnaire :

Un entrepôt de données est une structure informatique dans laquelle est cen-

tralisé un volume important de données consolidées à partir des diverses bases

de données internes et externes d'une entreprise, et qui est conçue pour o�rir

un accès rapide à l'information stratégique nécessaire à la prise de décision.

Auparavant, les entrepôts de données servaient surtout à l'archivage, désormais ilssont devenus des composants majeurs de l'informatique décisionnelle.

3.1.3 Des fonctionnalités di�érentes d'une base de données clas-sique

Un entrepôt de données est, en quelque sorte, une base de données qui possède denombreuses spéci�cités. Alors qu'une base de données classique sert à stocker et à gérer lesdonnées (en ajouter, les mettre à jour, en supprimer), l'entrepôt, lui, va être orienté dansl'analyse des données pour aider à prendre des décisions. La mise à jour de ces données

Page 14: 08 Obs Francheteau

La Business Intelligence 13

est donc souvent di�érée. Pour e�ectuer l'aide à la décision, les entrepôts doivent aussiservir à garder un historique de données, c'est pour cela que leur taille est souvent plusélevée que les bases de données classiques où les données obsolètes sont e�acées. En�n,alors qu'une base est construite selon un modèle entité-association quelconque, l'entrepôta une structure bien précise pour faciliter l'analyse. Le plus souvent, les entrepôts dedonnées sont structurés selon un modèle multidimensionnel. Ce modèle est la base duconcept OLAP (Online Analytical Processing) qui dé�ni un mode de construction desdonnées pour une bonne analyse. On distingue de nombreux modèles de données dontcelui en étoile ou le modèle en �ocon.

3.1.4 Modèles en étoile et en �ocon

Figure 3.1 � modèle en étoile

On remarque, sur le modèle en étoile ci-dessus, que la table de vente est celle qui estcentrale (on la nomme souvent table de faits). Ce sont les attributs de cette table quiserviront de mesures d'analyses (quantité et prix). Chaque table liée à la table de fait estappelée dimension. Ces tables serviront à paramétrer les valeurs de l'analyse (par exemplecalculer les ventes à une date donnée). Le modèle en �ocon (ci-dessous) est semblable aumodèle en étoile excepté que chaque dimension peut être décomposée en sous hiérarchies.Ici on a décomposé les tables Dates et Magasins. Ainsi, il est plus facile et plus rapide denaviguer à l'intérieur de celles-ci. Par exemple, on peut voir les ventes selon une annéepuis préciser en analysant les ventes selon les mois et ainsi de suite. À noter aussi qu'ilexiste le modèle en constellation permettant de fusionner plusieurs modèles en étoilepossédant des dimensions identiques.

Figure 3.2 � modèle en �ocon

Page 15: 08 Obs Francheteau

Extract, Transform, Load 14

3.2 Dé�nition d'un outil ETL

À présent que nous avons vu les grands principes de l'informatique décisionnelle, nouspouvons nous attarder sur les outils ETL. À l'origine, le principe est simple : il s'agitd'alimenter les entrepôts de données. Maintenant, les ETL ce sont largement diversi�és etpermettent d'e�ectuer de nombreuses opérations que nous verrons par la suite. Concrè-tement, on dispose de sources (souvent hétérogènes) que l'on extrait pour alimenter unentrepôt servant à leurs analyses. Les sources peuvent aussi bien être des bases de don-nées (de n'importe quel SGBD), des �chiers (CSV, XML, Excel) et voire d'autres formats(annuaires LDAP, Web services). Les ETL s'occupent de transformer ces sources, via denombreux composants, en une ou plusieurs cibles qui peuvent être, là aussi, de n'importequels formats.

Figure 3.3 � Un outil ETL extrait des données sources, les transforme puis les chargedans des données cibles

3.3 Extract, Transform, Load

Comme expliqué précédemment, ETL signi�e Extract, Transform, Load (Extraction,Transformation, Chargement). Ce sont les trois étapes que doit impérativement implé-menter un outil ETL. E�ectuées dans l'ordre, elles forment un traitement, une tâcheou un scénario (selon les diverses appellations des logiciels). Nous allons à présent lesdétailler.

3.3.1 Extract

La première étape concerne l'extraction des données qui sont la plupart du temps hé-térogènes. Cela signi�e qu'elles peuvent provenir de SGBD (MySQL, Oracle, SQL Server,etc.), de �chiers plats (Txt, Excel, XML, etc.), d'ERP (Enterprise Ressource Planning),de bases hiérarchiques (les ancêtres des SGBD) ou d'autres applications spéci�ques. Onpeut déjà remarquer le premier obstacle aux ETL : la multitude de formats sources pos-sibles à gérer.

Page 16: 08 Obs Francheteau

Extract, Transform, Load 15

Cette étape doit permettre de se connecter aux bases, soit de façon native, soit viaJDBC/ODBC ou encore avec des connecteurs spéciaux.

Il est aussi important, lorsque l'on extrait des données, de pouvoir les analyser. Il fautdonc connaître les propriétés de celles-ci : savoir si par exemple cette donnée est de typeentier ou chaîne de caractères et quelle est sa taille maximale. Cela peut paraître simplelorsque la source provient d'un SGBD mais s'avère plus complexe lorsqu'elle provientd'un �chier plat. Il faut aussi pouvoir reconnaître les clés primaires et étrangères permet-tant respectivement d'identi�er une table de façon unique, et de garantir l'intégrité desdonnées.

L'extraction peut aussi s'occuper de véri�er les erreurs des sources. Par exemple, ilest possible qu'une personne fasse une faute de frappe en écrivant "Canuda" au lieu de"Canada" alors l'outil ETL doit détecter cette erreur et la corriger.

En�n, cette première étape doit être e�ectuée le plus rapidement possible en exploitantau minimum les ressources du système. Étant donné qu'un ETL peut occuper et ce,pendant de nombreuses heures, une grande partie du ou des processeurs disponibles, onlance donc souvent les processus ETL la nuit. Pour gagner du temps, l'objectif de cetteétape est aussi de �ltrer au maximum les données. Par exemple, il faut que l'on puisseextraire les données uniquement mises à jour ou ajoutées après la dernière extraction.

L'étape d'extraction est donc très importante. Elle doit être performante et complètepour pouvoir disposer d'un bon outil ETL.

3.3.2 Transform

Cette seconde étape a pour objectif la transformation des données. Elle est bienévidemment indispensable si l'on veut obtenir des cibles di�érentes des sources.

C'est cette étape qui va permettre de joindre les di�érentes sources selon les clésprécédemment spéci�ées. Elle va aussi permettre de �ltrer les données. Le �ltrage estbien di�érent de l'extraction puisque l'on �ltre selon des critères à dé�nir, par exempleon va �ltrer les produits dont le prix est supérieur à 1000e.

Une partie importante de l'étape de transformation est de pouvoir e�ectuer des calculs.Ils peuvent être simples comme une addition ou multiplication, mais peuvent être aussiplus complexes. Disposer d'un outil ETL proposant de nombreuses opérations par défautest donc un plus. La transformation doit aussi s'occuper des di�érentes agrégations :e�ectuer les commandes SQL classiques tels que SUM (somme), COUNT (comptage) ouAVG (moyenne).

L'outil ETL peut également permettre de générer des clés de substitution (surro-gate key) pour cette étape de transformation. Chaque ligne d'un ensemble de donnéespeut posséder une clé primaire et une autre dite de substitution. La di�érence majeureentre ces deux clés dépend de la donnée (si elle est actuelle ou temporelle). Une baseactuelle va stocker uniquement les données actuelles valides, alors qu'une base tempo-relle va s'occuper en plus des données précédentes. Par exemple, l'employé Jean Dupontn'aura qu'une entrée dans une base actuelle mais en aura deux dans une base temporelle(une quand il était employé de 1988 à 1992 et une autre de 2004 à 2008). Les deux clés

Page 17: 08 Obs Francheteau

Application des outils ETL à la BI 16

primaires seront di�érentes (donc uniques) alors que les clés de substitution seront lesmêmes (non uniques). Pouvoir générer ces clés accroît les performances de l'outil ETLdans la recherche des données avec une meilleur indexation. Ainsi l'outil ETL doit pou-voir permettre de garder un historique des changements et aussi obtenir une certaineindépendance des systèmes sources (c'est lui qui gère les clés de substitution).

En bref, cette étape doit permettre d'e�ectuer toutes les transformations que l'onsouhaite appliquer aux données sources. Il ne faut pas non plus oublier la sélection ou ledécoupage des colonnes, la traduction des valeurs (les di�érents formats de dates possiblesou encore le booléen 1 qui peut signi�er M pour "Masculin"), la fusion, les lookups, lagestion des erreurs et encore de nombreuses autres fonctionnalités.

3.3.3 Load

La dernière étape, s'occupe de charger les données, préalablement extraites puis trans-formées, dans des cibles hétérogènes (le plus souvent des entrepôts de données qui pour-ront être structurés selon un modèle bien précis (vu précédemment).

Le chargement va permettre d'insérer ou de mettre à jour les données cibles, et, commedans les deux étapes précédentes, il doit aussi gérer les erreurs (une chaîne de caractèrene doit pas être inséré dans un champ fait pour les entiers).

Le chargement n'est pas à négliger pour un bon outil ETL, il doit, là aussi, êtrecomplet et performant.

3.4 Autres fonctionnalités des outils ETL

Un outil ETL, qui se veut être complet, doit implémenter de nombreuses autres fonc-tionnalités. Il peut par exemple permettre de plani�er les exécutions : lancer un trai-tement un jour précis ou à une fréquence précise selon une contrainte donnée (les pos-sibilités peuvent être nombreuses). Une console d'administration est aussi la bienvenueavec l'enregistrement d'utilisateurs et de leurs privilèges, tout en permettant de surveillerles processus ETL en cours. Tout ceci doit être géré par un système bien sécurisé. Pourun travail collaboratif, on peut bien évidemment penser à des systèmes de contrôle deversion genre CVS (Concurrent Versions System).

Pour optimiser les performances, un système ETL peut proposer de paralléliser lestraitements et de coordonner les processus. Pour bien gérer les erreurs, l'outil ETL peutproposer des rapports d'erreurs, des outils de correction de bugs, la reprise après uneerreur, la véri�cation d'un traitement avant son exécution ou encore l'a�chage des sta-tistiques d'exécutions.

Les possibilités d'un outil ETL sont donc très nombreuses et c'est bien évidemmentun critère à retenir pour disposer d'un outil ETL complet.

3.5 Application des outils ETL à la BI

La plupart du temps, les ETL sont utilisés dans le domaine de la Business Intelligence(BI) décrit auparavant. La BI est, le plus souvent, composée de di�érentes parties inti-

Page 18: 08 Obs Francheteau

Autres applications des outils ETL 17

mement liées, permettant d'aider à prendre une décision pour répondre aux problèmesdécisionnels tels que :

� L'intégration de données qui alimente des entrepôts de données. C'est ici qu'in-terviennent les ETL.

� La génération de rapports qui fournit aux utilisateurs des rapports sur l'étatdes ventes, des stocks, du chi�re d'a�aires, etc. Cette partie est gérée via des outilsde Reporting qui piocheront dans un entrepôt de données alimenté par un ETL.

� Les tableaux de bords (ou dashboards en anglais) mettent en place de nombreuxgraphiques et schémas, pour observer, d'un coup d'oeil, ce qui va ou qui ne va pasdans l'entreprise. Par exemple si un stock est quasiement vide, une jauge en rougepeut s'a�cher pour prévenir rapidement l'utilisateur. Là encore, les données serontrécupérées à partir d'un entrepôt de données.

� L'analyse des données permet d'aller plus en profondeur par rapport aux rap-ports mais aussi d'interagir et de véri�er les données selon plusieurs niveaux (an-nées, trimestres, mois, semaines, jours par exemple). Les données seront récupéréesvia des cubes multidimenssionnels OLAP, qui sont eux même alimentés par desentrepôts de données.

� Le Data Mining est la partie la moins utilisée puisque c'est la plus complexe. Cettebranche fait intervenir de nombreux algorithmes (touchant souvent au domainede l'intelligence arti�cielle) essayant d'apporter à l'utilisateur les futurs évolutionsprobables de son entreprise.

La majorité des outils ETL mettent à disposition des outils spéci�ques pour alimenterles entrepôts de données. Les clés de substitutions présentées plus haut, l'alimentationde cubes OLAP ou encore la gestion des dimensions à évolution lente (slow changingdimension) en sont des exemples.

Figure 3.4 � Schéma explicatif de l'utilisation d'outils ETL dans l'informatique déci-sionnelle

3.6 Autres applications des outils ETL

Nous avons vu précédemment l'application des ETL à des �ns décisionnelles mais ilne faut pas oublier que les outils ETL peuvent servir dans d'autres applications.

Page 19: 08 Obs Francheteau

Autres applications des outils ETL 18

3.6.1 Migration de données

Lorsqu'une entreprise souhaite passer d'une version d'une base de données ou d'uneapplication à une autre, ou même lorsqu'elle change de système, elle doit e�ectuer ceque l'on appelle une migration de données. Toutes les données existantes doivent êtretransférées dans un nouvel environnement. Une migration implique la plupart du tempsdes volumes de données très importants et celles-ci sont souvent très hétérogènes. Deplus, il faut garder une certaine cohérence entre le nouveau et l'ancien système. Les outilsETL sont donc bien adaptés à cette utilisation.

Figure 3.5 � Schéma explicatif de la migration de données

3.6.2 Synchronisation de données

Dans de nombreux systèmes, les données sont gérées séparément par de multiples ap-plications. La synchronisation de celles-ci permet de maintenir une cohésion entre toutesles applications et les bases de données.

Figure 3.6 � Schéma explicatif de la synchronisation de données

Page 20: 08 Obs Francheteau

Chapitre 4

Pourquoi de l'Open Source ?

4.1 Dé�nition

Open Source signi�e source ouverte en français. Cette notion comprend donc les lo-giciels qui ont un code source ouvert, c'est à dire que l'on peut consulter librement. Lanotion Open Source telle qu'elle est établie par l'OSI (Open Source Initiative, organisa-tion créée en 1998 pour la promotion de l'Open Source) étend largement ses possibilités.On peut, par exemple, redistribuer librement le logiciel, e�ectuer sur celui-ci des travauxdérivés, ou même le vendre. La notion Open Source décrite par l'OSI est comparableà celle du logiciel libre. Il existe de nombreuses licences permettant de mieux �xer leslicences libres. Les plus connues sont sans doutes les licences GPL et LGPL.

� La licence GPL (GNU General Public License), créée en 1989, est utilisée par laplus grande partie des projets Open Source. Elle permet de consulter, modi�er etredistribuer le travail mais il est interdit de redi�user le produit à des �ns commer-ciales. Dans le cadre d'une redistribution, il faut impérativement fournir le codesource (c'est la condition CopyLeft).

� La licence LGPL (Lesser GNU General Public License) a été créée en 1991 dansle but d'o�rir une licence moins restrictive que la GPL. Cette licence n'a plus lanotion de CopyLeft, il est donc possible de fusionner un logiciel propriétaire avecun logiciel LGPL sans garder la licence LGPL. Cependant si un utilisateur veutmodi�er le code source sous LGPL, il devra le redistribuer sous cette même licence.

Attention, il ne faut pas confondre Open Source et gratuit ! En e�et, si une entreprisedéveloppe des logiciels Open Source, il faut aussi qu'elle puisse rémunérer ses employés.Les entrées d'argent vont alors provenir d'un support technique professionnel, de forma-tions, ou de l'ajout de modules supplémentaires payants, même si cela est généralementbeaucoup moins cher que l'achat d'un logiciel propriétaire.

4.2 Alternatives à l'Open Source

4.2.1 Créer un ETL maison

Les outils ETL étant relativement récents, les entreprises ont longtemps dû créerleurs propres ETL. L'avantage de cette méthode est que l'outil s'adapte facilement auxspéci�cités métiers et aux di�érents types de données utilisés. Cependant, au vu desnombreux critères des outils ETL vus précédemment, le développement peut s'avérer

Page 21: 08 Obs Francheteau

Alternatives à l'Open Source 20

très complexe si l'entreprise désire avoir un outil complet. Si elle souhaite le restreindreà son domaine d'utilisation, elle devra faire face à de nombreux problèmes d'évolutiondes données. En e�et, l'outil ETL se doit de s'adapter au développement continuel del'entreprises.

4.2.2 Acheter un ETL propriétaire

L'achat d'un ETL propriétaire est une solution qui permet d'utiliser très rapidementles outils d'intégration de données. Cependant, l'entreprise va devoir faire face dès ledébut, à des coûts élevés de licence, de formation, ou de support technique. Ces prixsont très variables d'une solution à une autre et dépendent du nombre de licences, deprocesseurs ainsi que de leurs puissance. La plupart du temps, il faudra compter plusieursdizaine de milliers d'euros.

Il est également intéressant de voir rapidement les ETL propriétaires les plus perfor-mants. Voici un carré magique établi par Gartner (entreprise américaine importante deconsulting et de recherche dans le décisionnel).

Figure 4.1 � Magic Quadrant de Gartner (Source : site o�ciel de Gartner)

Gartner actualise ses carrés magiques tous les six mois environ, ci-dessus, il s'agit dudernier en date. On peut voir les deux leaders qui se distinguent parfaitement du reste :Informatica avec PowerCenter et IBM avec Information Server. Microsoft, BO et Oraclesont très utilisés eux aussi mais ne se montrent pas assez visionnaires, contrairement àSAS et iWay qui font l'inverse. Il faut faire attention cependant puisque ces diagrammessont seulement la vision du Gartner. Même si cette grande entreprise est très réputéedans le domaine, les résultats restent subjectifs. Ceci d'autant plus que certaines de ces

Page 22: 08 Obs Francheteau

Avantages de l'Open Source 21

entreprises sont clientes de Gartner... Il faut aussi noter que Gartner a une vision trèsnégative de l'Open Source dans le décisionnel.

4.3 Avantages de l'Open Source

L'Open Source o�re les avantages combinés des deux alternatives précédentes sansles inconvénients : une o�re complète et peu chère. Il faut simplement compter, pour laplupart des logiciels Open Source, le coût d'un support technique professionnel, voire lecoût d'une formation initiale. Il ne faut pas oublier que l'Open Source donne accès aucode source, le développeur peut donc le modi�er pour ajouter des fonctionnalités, leconsulter pour regarder le fonctionnement du programme de plus près. L'accès au codepermet aussi à de nombreuses personnes d'ajouter leurs propres composants puis de lesdistribuer sur internet. De plus, la communauté Open Source est souvent très active : denombreux utilisateurs sont disponibles sur les forums pour toute aide.

Figure 4.2 � Diagramme représentant les coûts des solutions en fonction du temps passé(Source : site o�ciel de Pentaho)

Page 23: 08 Obs Francheteau

Chapitre 5

Comparatif des solutions ETL OpenSource

5.1 Comparatif préliminaire

5.1.1 Recherche des ETL Open Source existants

Après avoir vu ce qu'était un système ETL, ses fonctionnalités et dans quels contextesil est utilisé, il a fallu rechercher sur Internet les di�érents outils ETL Open Sourcedisponibles. Certains ETL sont très répandus et donc, faciles à référencer pendant qued'autres se font beaucoup plus discrets sur la toile. Cette phase de recherche sur denombreux sites internet (forums, sites o�ciels, blogs, etc.) a permis de répertorier les dixETL suivants (dans l'ordre de leur découverte) :

1. Talend Open studio

2. Pentaho Data Integration

3. Clover.ETL

4. Enhydra Octopus

5. KETL

6. Scriptella

7. BenETL

8. OpenESB

9. Jitterbit

10. Apatar

Les outils ETL sont assez récents, c'est d'autant plus vrais pour les Open Source :l'âge moyen de ceux-ci est de deux ans. C'est donc une technologie jeune, pas toujoursmature mais, force est de constater que l'intérêt des entreprises pour ces ETL croît de jouren jour. Ils attirent un nombre croissant de clients pendant que leurs fonctionnalités etleurs performances évoluent rapidement. Cependant, le monde Open Source reste moinsstable que le monde propriétaire et des logiciels peuvent vite se trouver à l'abandon fautede personnes motivées ou de �nancements pour les maintenir et les mettre à jour. Il estnécessaire de faire très attention lors du choix de l'ETL à utiliser pour une entreprise, ilfaut avant tout étudier de nombreux critères. Après une comparaison de ces outils avec lesinformations collectées sur Internet, l'autre étape du stage consistera à installer certainsde ces ETL (les plus pertinents) et de les tester.

Page 24: 08 Obs Francheteau

Comparatif préliminaire 23

5.1.2 Les critères à retenir

Voici les quatre ensembles de critères à retenir pour pouvoir comparer ces ETL entreeux :

1. L'organisation (entreprise ou collectivité) et la communauté. Comme ex-pliqué précédemment, le monde Open Source est plus aléatoire que le propriétaire.Il faut une communauté de développeurs qui soit solide, soudée et �nancée par unorganisme tiers ou dans le meilleur des cas par une réelle société Open Source pos-sédant son propre �nancement. Le projet doit aussi être régulièrement mis à jour.Il ne faut pas non plus négliger la communauté Open Source, elle re�ète la santé duprojet. Une communauté active signi�era que le projet est en constante évolutionet permettra d'avoir accès à une aide plus rapide et e�cace.

2. Informations générales et accessibilité. L'Open Source a la réputation de dis-poser de logiciels inabordables, hors d'atteinte pour la plupart des gens. La commu-nauté doit faire en sorte d'enrayer cette réputation. Il est important qu'un logicielpossède une bonne documentation rédigée au moins en anglais (dans le meilleurdes cas en français). Il ne faut pas oublier que son installation doit être simple sansavoir recours à de nombreux autres logiciels tiers. de plus, les outils ETL ne sontpas forcément utilisés par des développeurs, il est alors préférable de disposer d'uneinterface graphique ergonomique qui nécessite le moins possible de connaissancesJava ou SQL.

3. Possibilités et compatibilités. Nous avons pu voir précédemment les di�érentesfonctionnalités d'un outil ETL. Le logiciel doit en englober le plus possible, voire enajouter des nouvelles. Il est important, au �nal, qu'il convienne pour le maximumde cas d'utilisations dans un contexte décisionnel. Si la plupart de ces critères sontdécelables sur Internet, d'autres nécessitent cependant des tests sur logiciel.

4. Performances. Ces critères doivent être analysés en grande partie via de nombreuxtests de performances sur les logiciels. Ils sont très importants surtout lorsque l'onprend en compte la quantité considérable de données à traiter.

5.1.3 Les trois phases de l'étude

L'étude sur les ETL est constitué de trois phases bien distinctes.

La première est une analyse préliminaire dont le but est de sélectionner une partie des10 ETL Open Source disponibles sur Internet pour les tests suivant. Cette sélection estindispensable étant donné qu'installer et e�ectuer des tests sur tous les ETL prendraitbeaucoup de temps et n'aurait qu'un intérêt limité. Cette phase va permettre de remplirentièrement la première catégorie de critères et pouvoir renseigner quelques informationssur les catégories 2 et 3.

La deuxième phase est une analyse plus en profondeur des ETL sélectionnés précé-demment. De nombreuses informations seront récupérées tant sur Internet qu'en testantles logiciels. Cette phase permettra de remplir intégralement les catégories 2 et 3 descritères précédemment cités.

En�n, la dernière phase s'attache à e�ectuer des tests de performances. Tout d'abordles sujets seront les ETL retenus lors de la phase 1, et, ensuite, des tests plus completset plus précis seront e�ectués sur les deux ETL principaux. Ceci permettra de remplir laquatrième et dernière catégorie de critères.

Page 25: 08 Obs Francheteau

Présentation de cinq ETL Open Source 24

5.1.4 Tableaux comparatifs préliminaires des dix ETL

Les tableaux comparatifs sur les critères globaux des dix ETL sont fournis en annexe(page 77 à 79).

Les tableaux comparatifs permettent de dé�nir les logiciels les plus aboutis (PentahoData Integration, Talend Open Studio, Clover, Jitterbit et Apatar). Le choix de ces cinqETL s'est fait grâce à de nombreux critères dont la présence d'une interface graphique.En e�et ceci est un argument de poids dans le domaine du décisionnel. Tandis qu'undéveloppeur lambda s'accommode très bien de code Java ou XML pour e�ectuer destransformations, une utilisation dans le décisionnel ne doit pas imposer à l'utilisateur des'y connaître en programmation. Ces ETL sont aussi les plus suivis sur Internet et sontdéveloppés par des entreprises (excepté Clover qui est cependant sponsorisé et �nancépar une entreprise). Ce sont donc ces cinq là qu'il va falloir installer et tester plus enprofondeur. Parmi ces ETL, on remarque deux leaders : Talend Open Studio et PentahoData Integration. Cependant, il est intéressant de pouvoir installer les trois autres (Clo-ver.ETL, Jitterbit et Apatar) pour juger de leurs capacités, de leurs avancements et deleurs possibilités. Il se peut même qu'ils soient plus simples à utiliser et plus performants.

5.2 Présentation de cinq ETL Open Source

Après avoir référencé tous les ETL Open Source existants puis les avoir comparé selonun certain nombre de critères, il fallait à présent installer les plus prometteurs et les testeren profondeur. Voici les analyses e�ectuées sur cinq de ces ETL Open Source.

Page 26: 08 Obs Francheteau

Présentation de cinq ETL Open Source 25

5.2.1 Pentaho Data Integration

5.2.1.1 Présentation

Pentaho Data Integration (anciennement Kettle) a été créé en 2001 par Matt Casterspour ses besoins personnels. À partir de la version 2.2, Kettle est devenu Open Source eten 2006, Matt Casters entre dans la société Pentaho qui développe la suite décisionnelle dumême nom. Kettle s'intègre à cette suite décisionnelle et devient Pentaho Data Integration(PDI). L'utilisation de PDI, peut se faire indépendamment de sa suite décisionnelle. CetETL est régulièrement mis à jour et possède une bonne communauté d'utilisateurs. Lestraitements sont stockés sous format XML et peuvent être intégrés dans un référentiel qu'ilest possible de gérer avec n'importe quel SGBD (pratique pour le travail collaboratif).Cependant, l'ETL PDI est un moteur de transformation, il faut donc nécessairementposséder le logiciel pour e�ectuer des transformations.PDI permet d'e�ectuer deux types de traitements :

1. Des transformations : traitement de base comprenant l'extraction de sources, latransformation et le chargement de cibles.

2. Des jobs : traitement permettant de séquencer plusieurs transformations.

PDI est aussi composé de trois applications :

1. Spoon : interface graphique, faite avec SWT (Standard Widget Toolkit, biblio-thèque graphique Java).

2. Pan : application en ligne de commande a�n de lancer une transformation donnée.

3. Kitchen : application en ligne de commande a�n de lancer une tâche donnée.

En�n, précisons que PDI a été développé entièrement en Java, de plus, il est totalementgratuit (pas de fonctionnalités supplémentaires payantes).

5.2.1.2 Analyse

Points positifs :� Installation très simple (�chier à décompresser), nécessite seulement Java 1.5 ousupérieur.

� Référentiel disponible, possibilité de le gérer via n'importe quel SGBD.� Logiciel et Documentation en français (la documentation française n'est pas tou-jours à jour).

� Interface ergonomique.� Très complet (environ 180 composants disponibles)� Visualisation des traitements en temps réel.� Console d'administration du référentiel (ajout d'utilisateurs, de pro�ls, etc.).� Possibilité d'enregistrer un historique des traitements sur le référentiel.� Intégration parfaite avec la suite décisionnelle Open Source Pentaho.� Possibilité d'exécuter les traitements sur le poste local ou sur un ou plusieurs ser-veurs distants. Avec notamment la possibilité d'écuter un traîtement en grappe surplusieurs postes.

� Possibilité d'a�cher des diagrammes montrant les statistiques de l'éxecution.� Gestion du connecteur SAP.Points négatifs :� Pas de plani�cation de traitements intégrée. Il faut utiliser la suite décisionnellePentaho ou alors passer par daire un script et l'exécuter via le plani�cateur detâches de Windows ou Cron de Linux.

Page 27: 08 Obs Francheteau

Présentation de cinq ETL Open Source 26

� Interface pas toujours très claire.� Pas de contrôle de version.� Pas de gestion des contextes (développement, tests et production).� Communauté assez faible en France.

5.2.1.3 Captures d'écran

Figure 5.1 � Pentaho Data Integration : Création de transformation

Voici, ci-dessus, l'interface principale de Pentaho Data Integration. Au centre, unetransformation est créée (jointure de deux tables avec calcul et agrégation pour insertiondans une troisième table). À gauche, la palette de composants de transformation dispo-nibles classés par type d'opération. En bas on peut voir un graphique sur les statistiquesde l'exécution de la transformation (cette option est apparue uniquement avec la version3.1 de Pentaho Data Integration)

Page 28: 08 Obs Francheteau

Présentation de cinq ETL Open Source 27

Figure 5.2 � Pentaho Data Integration : Création de tâche (Job)

Ci dessus, on peut voir la fenêtre de l'exécution d'une tâche. Ceci est semblable àl'exécution d'une transformation mais la palette de composants est di�érente. En bas onpeut observer l'a�chage des statistiques d'exécution d'une tâche (qui remplace donc lesgraphiques des transformations). À gauche on peut voir le référentiel comportant, entreautres, la liste des paramètres de connexion pour di�érentes bases de données.

Page 29: 08 Obs Francheteau

Présentation de cinq ETL Open Source 28

5.2.2 Talend Open Studio

5.2.2.1 Présentation

Talend Open Studio (TOS) a été créé le 21 septembre 2006 par la société Talend baséeprincipalement en France, mais aussi aux Etats-Unis et en Chine. Les transformationssur TOS s'appellent des Jobs (tâches en français) et se font à partir de l'interface JobDesigner. L'ETL TOS est un générateur de code, c'est à dire que, pour chaque job créé,un moteur va s'occuper de générer du code Java ou Perl (selon le choix de l'utilisateur)qui permettra d'exécuter la transformation. TOS possède une interface graphique baséesur Eclipse. La gestion des metadonnées se fait via un référentiel très complet (au formatXML). TOS possède aussi un Business Modeler permettant de modéliser les architecturesdécisionnelles de haut niveau et de façon non technique.

5.2.2.2 Analyse

Points positifs :� Talend étant un générateur de code, il est possible d'enregistrer les transformationssous forme de script, qui est alors exécutable à partir de n'importe quelle machinedisposant d'une JVM (pour Java). Talend ne doit pas forcément être installé pourexécuter un script. Ceci est très pratique pour plani�er des tâches : exécuter lescript via le plani�cateur de tâches sous Windows ou via Cron sous Linux.

� Très complet (environ 250 composants Java) et un peu moins en Perl.� Le composant tMap très puissant permet de faire facilement de nombreux traite-ments.

� Interface très ergonomique (basée sur Eclipse).� Talend est particulier, il peut aussi être utilisé en tant qu'ELT (Extract, Load,Transform) c'est à dire que les transformations peuvent tirer parti de la base dedonnées dans laquelle les cibles ont été chargées. Cela à pour avantage d'améliorergrandement les performances même si les possibilités sont alors plus limitées.

� Gestion des metadonnées très complète (connexions aux bases, schémas des don-nées, formats des �chiers, etc.)

� Visualisation des traitements en temps réel et sur le schéma.� Designer de requêtes.� Possibilité d'ajouter facilement des spéci�cités métiers (en Java ou Perl) en ajoutantdes nouvelles routines

� Code généré toujours visible.� Le Business Modeler.� Nombreux connecteurs applicatifs disponibles : CentricCRM, SalesForce, Sugar-CRM, VtigerCRM, Microsoft AX.

� Gestion des contextes (contexte de développement, de test et de production).� Intégration avec SpagoBI ou JasperServer.� Possibilité de générer de la javadoc.� L'Ecosystem de Talend centralisant de nombreux composants développés par despersonnes externes à la société.

� Possibilité d'intégrer des documents et des �chiers au référentiel.Points négatifs :� Pas de référentiel commun disponible dans l'édition de base.� Interface lourde (basée sur Eclipse).

Page 30: 08 Obs Francheteau

Présentation de cinq ETL Open Source 29

� Dans l'édition de base, obligation de passer par les scripts pour la plani�cation surWindows.

� Impossibilité d'exécuter les traitements à distance dans l'édition de base.� Des fonctionnalités payantes (se procurer Talend Integration Suite).

5.2.2.3 Captures d'écran

Figure 5.3 � Talend Open Studio : Création d'un job

En haut à gauche se situe le référentiel pour naviguer entre les di�érents jobs, code,metadonnées, documentation etc. Au centre, on peut voir l'interface de création de jobs.Sur cette capture d'écran, on observe l'exécution en temps réel d'un job avec les donnéeslues. À droite, la palette des 250 composants classés par type. En bas, on peut aperce-voir de nombreux onglets comme celui a�ché ici représentant l'exécution du job avec laconsole.

Page 31: 08 Obs Francheteau

Présentation de cinq ETL Open Source 30

Figure 5.4 � Talend Open Studio : Le Business Modeler

Ici, on peut voir l'interface de création d'un Business Model avec à droite la palettedes di�érents composants disponibles.

Page 32: 08 Obs Francheteau

Présentation de cinq ETL Open Source 31

5.2.3 Clover

5.2.3.1 Présentation

Clover est une communauté de développeurs créée en 2004 et �nancée par OpenSys(société implantée en République Tchèque). Clover, tout comme Pentaho Data Integra-tion, est un moteur de transformations. Ici, les di�érentes tâches sont appelées "graphes".Clover est constitué de trois parties :

1. Clover.ETL, le moteur de transformation en Java indispensable et gratuit

2. Clover.GUI, l'interface graphique permettant de créer des graphes de transforma-tions. Cette partie est cependant payante pour une utilisation commerciale (300epar an pour une licence et 1900e pour du multi-licence). L'interface est un plug-inEclipse donc il faut obligatoirement installer Eclipse sur le poste de travail.

3. Clover.Server, lui aussi est payant (prix à négocier) et permet d'optimiser les per-formances, de disposer d'outils de plani�cation, d'exécuter les transformations àdistance et de faciliter le travail collaboratif.

Le moteur de Clover est développé entièrement en Java. Si l'on maîtrise ce langage, ilest là aussi possible d'implémenter facilement ses propres composants. Les graphes, eux,sont enregistrés sous format XML et même avec l'interface il est souvent nécessaire demodi�er le code XML pour les éditer. Clover gère aussi les metadonnées via un référentiel(sauvegardé là encore au format XML).

5.2.3.2 Analyse

Points positifs :� Interface assez ergonomique (plugin d'Eclipse).� Gestion des metadonnées.Points négatifs :� Nécessité d'utiliser Eclipse.� Interface lourde (plugin d'Eclipse).� Clover.GUI pour l'interface et Clover.Server pour le référentiel commun et la pla-ni�cation sont payants.

� Les options des composants manquent de clarté.� Moins complet que Pentaho Data Integration ou Talend Open Studio.� Pas de connecteurs applicatifs.� Aucune intégration avec une plateforme OSBI.� Pas de gestion des contextes.� Pas d'exécution à distance.� Pas de référentiel commun.� Même avec l'interface graphique, il est souvent nécessaire de toucher au code XMLpour modi�er les propriétés des composants.

Page 33: 08 Obs Francheteau

Présentation de cinq ETL Open Source 32

5.2.3.3 Capture d'écran

Figure 5.5 � Clover : Interface de création d'un graphe

À gauche on voit l'interface permettant de naviguer dans les dossiers et de gérer lesmetadonnées. Au centre se situe le graphe de transformation avec ses divers composants.À droite on aperçoit la palette de composants. En�n, en bas, il y a les di�érents ongletsavec ici, celui permettant de modi�er les propriétés des composants.

Page 34: 08 Obs Francheteau

Présentation de cinq ETL Open Source 33

5.2.4 Jitterbit

5.2.4.1 Présentation

Jitterbit a été créé en 2005 par la société du même nom basée aux Etats-Unis etspécialisée dans les logiciels Open Source d'intégration de données. Contrairement auxautres ETL, Jitterbit fonctionne obligatoirement avec un serveur qui exécutera les trans-formations (c'est donc là aussi un ETL de type moteur de transformations). De plus, lesdonnées sont obligatoirement enregistrées dans un référentiel commun qui doit être gérépar le SGBD PostgreSQL. Il faut donc nécessairement installer PostgreSQL sur son postede travail avant d'utiliser Jitterbit.

Ce logiciel dispose d'une console d'administration complète (création d'utilisateurs, degroupes, de rôles, visualisation de l'activité des opérations, de l'historique des opérationse�ectuées etc.). Jitterbit est très di�érent des autres ETL, ici il ne faut pas construiredes graphes de transformations via du glisser-déposer mais, seulement choisir une source,une cible, puis la transformation qui permet de passer de l'une à l'autre. Dans Jitterbit,ces tâches sont appelées "Opérations". Ceci ne permet pas de faire des transformationsréellement complexes que l'on peut e�ectuer sur TOS ou PDI.

5.2.4.2 Analyse

Points positifs :� Console d'administration complète.� Serveur qui exécute les tâches qui peuvent être validés préalablement.� Plani�cation intégrée.� Référentiel commun disponible de base.� Exécution à distance.� Moins complet que Pentaho ou Talend.� Nombreux connecteurs applicatifs disponibles : SAP, SugarCRM, SalesForce, Siebel.Points négatifs :� Fonctionnement déroutant.� Le serveur prend beaucoup de ressources.� PostgreSQL imposé comme référentiel.� Quelques imperfections dans l'interface comme le fait d'avoir un onglet qui s'ouvreà chaque fois que l'on souhaite naviguer dans le projet.

� Exécution des transformations assez lente.� Aucune intégration avec une plateforme OSBI.� Pas de gestion des contextes (développement, test et production).� Aucune nouvelle version depuis six mois.

Page 35: 08 Obs Francheteau

Présentation de cinq ETL Open Source 34

5.2.4.3 Captures d'écran

Figure 5.6 � Jitterbit : Interface d'opérations

On choisit la source, la cible et la transformation à appliquer. On peut aussi plani�erl'opération et ajouter un événement sur le succès ou l'échec de l'opération. À gauchese situe le référentiel du projet permettant entre autre de naviguer entre les di�érentesopérations (chacune composée d'une source, d'une transformation et d'une cible).

Page 36: 08 Obs Francheteau

Présentation de cinq ETL Open Source 35

Figure 5.7 � Jitterbit : Interface de transformations

Cette capture d'écran représente l'interface permettant de transformer la source encible. Les types de données sources sont liés aux types de données cibles. On peut bienévidemment appliquer di�érentes fonctions de transformations.

Page 37: 08 Obs Francheteau

Présentation de cinq ETL Open Source 36

5.2.5 Apatar

5.2.5.1 Présentation

La société Apatar a été fondée aux Etats-Unis par Renat Khasanshyn qui commençasa carrière en Russie. La première version du logiciel Apatar (du nom précis de ApatarOpen Source Data Integration) a vu le jour le 7 mai 2007, il est donc très récent. Iciencore, cet ETL est un moteur de transformations et possède une interface graphiquepour créer et exécuter les transformations qui sont appellées, dans Apatar, DataMap. Ilest aussi possible de lancer les transformations en ligne de commande. Apatar est codéentièrement en Java et ne nécessite aucun autre logiciel que Java pour être exécuté. Ilpossède aussi un outil pour plani�er les lancements des transformations. Apatar metà disposition de nombreux connecteurs mais, compte tenu de sa jeunesse, il est trèsrestreint. Cependant, s'il continue à être bien développé il pourra peut-être, par la suite,concurrencer les autres ETL Open Source.

5.2.5.2 Analyse

Points positifs :� Logiciel simple.� Nombreux connecteurs disponibles : Compiere ERP, SalesForce, SugarCRM, SAP,Siebel, Amazon S3, Buzzsaw, Flickr.

� Plani�cation intégrée.Points négatifs :� Logiciel simple.� Très limité, trop peu de fonctionnalités.� Moteur de transformations lent.� Pas de gestion des metadonnées.� Pas de référentiel commun.� Pas de gestion des contextes� Pas d'exécution à distance.

5.2.5.3 Capture d'écran

Figure 5.8 � Apatar : interface de création d'un DataMap

Page 38: 08 Obs Francheteau

Présentation de cinq ETL Open Source 37

Cette capturee d'écran montre l'interface principale pour créer et lancer les transfor-mations. À gauche se situe la palette de composants. La tâche e�ectuée ici est de joindreune base via le connecteur SalesForce et une base MySQL a�n d'y appliquer des fonctionsde transformations pour alimenter une base Oracle.

Page 39: 08 Obs Francheteau

Tableaux comparatifs détaillés 38

5.3 Tableaux comparatifs détaillés

5.3.1 Méthodologie

La deuxième phase de l'étude s'attache à comparer plus en profondeur les ETL présen-tés ci-dessus. C'est aussi avec cette étude qu'ont été étudiés les points positifs et négatifsdes di�érents logiciels.

Les tableaux comparatifs sont classés selon les trois premières catégories de critèresdécrites précédemment. Une partie de ces informations a été trouvée directement surInternet. Elles ont pu être analysées et con�rmées seulement après l'installation des ETL.Pour véri�er certaines caractéristiques, il a fallu e�ectuer de nombreux tests. Le choixdes critères a été inspiré de nombreux sites Internet (cf. Webographie) mais s'est aussifait personnellement.

5.3.2 Résultats

Les tableaux comparatifs détaillés sont présents en annexes (pages 80 à 85). Ils ontreprésentés de nombreuses heures de travail et ont été mis à jour régulièrement. Ils re-groupent en tout, plus de 120 critères analysés sur les cinq ETL que sont Talend OpenStudio, Pentaho Data Integration, Clover.ETL, Jitterbit et Apatar. Voici les résultatsque l'on peut tirer de cette étude :

5.3.2.1 La communauté, l'organisation

Ici on peut observer un net avantage de Talend Open Studio et de Pentaho DataIntegration qui sont tous deux développés et �nancés par une société. Ces deux ETL OpenSource sont les plus largement utilisés dans le monde, leurs communautés sont actives etcroissent de jour en jour. Quant aux autres ETL, leurs communautés sont beaucoup plusrestreintes mais restent actives et prêtes à apporter de l'aide à tout utilisateur.

5.3.2.2 Informations générales, accessibilité

Là il est plus di�cile de départager les ETL, ils sont régulièrement mis à jour (exceptéJitterbit dont la dernière version date de plus de 6 mois). TOS et PDI sont les seuls à o�rirune documentation en Français. En�n, ils proposent tous un réel support professionnelce qui n'est pas négligeable dans une entreprise. Il faut noter que Clover.ETL est payantpour avoir l'interface graphique et, que TOS propose des options payantes. Cela montrebien qu'Open Source ne signi�e pas forcément gratuit.

5.3.2.3 Fonctionnalités

Il s'agit de la partie la plus importante, la plus longue et la plus complexe à analyser.Elle se divise donc en plusieurs sous-parties :

1. Compatibilités : dans ce domaine, TOS et PDI a�chent des résultats impres-sionnants. Ces ETL gèrent la plupart des SGBD nativement et, pour les autresil y a toujours les drivers JDBC/ODBC de disponibles. Ils sont compatibles avecles principaux OS du marché et gèrent une très grande diversité de �chiers (CSV,XML, Excel, LDIF, ZIP, etc.). Les trois autres ETL, même s'ils sont compatiblesavec les formats principaux gardent une longueur de retard.

Page 40: 08 Obs Francheteau

Tableaux comparatifs détaillés 39

2. Lecture et écriture dans un SGBD : ici petit avantage de TOS qui proposela gestion des données SIG, un designer graphique de requêtes, et l'exécution derequêtes sauvegardées dans un �chier .sql. PDI et Clover.ETL sont un peu derrièremais proposent tout de même l'exécution de procédures stockées, la normalisa-tion/dénormalisation de tables et permettent aussi de créer facilement des requêtes.

3. Transformations : TOS et PDI permettent de faire à peu près toutes les transfor-mations envisageables dans le cadre d'un projet grâce à de nombreux composants.De plus, TOS propose quelques options ELT et, permet ainsi de pro�ter de toutesles fonctionnalités que peut apporter un SGBD. Là encore, les autres ETL sontderrières. En�n, si par malchance une transformation que souhaite faire l'utilisa-teur n'est pas réalisable, l'Open Source permet de modi�er le code et d'ajouter descomposants personnalisés.

4. Accès aux données : avantage à TOS qui gère de nombreux connecteurs appli-catifs alors que PDI se contente simplement de SAP. On peut observer que c'estApatar qui implémente le plus grand nombre de ces connecteurs et c'est là sa grandeforce. À noter que PDI ne permet pas à l'heure actuelle de gérer les �ux RSS.

5. Administration : ce sujet est assez complexe mais l'avantage va à PDI et à Jitter-bit (du fait qu'il a été développé pour exécuter les transformations sur un serveurdistant). Apatar ne comprend quasiment aucune option d'administration et, cellesde Clover.ETL sont toutes payantes. TOS propose de nombreuses options mais cer-taines sont payantes aussi du fait que le référentiel commun ne soit pas inclus dansla version gratuite.

6. Déclenchement des processus : avantage à TOS qui permet d'utiliser JMS,SOAP, MOM et POP. A noter qu'aucun ETL Open Source n'utilise Corba.

7. Fonctionnalité spéci�ques : TOS et à PDI se trouve encore devant les autresETL. Ici, on touche aux deux gros avantages (et respectivement aux deux gros dé-fauts) qui di�érencient TOS et PDI. TOS permet de gérer facilement les contextesd'exécution pour passer rapidement d'une phase à une autre dans un projet (déve-loppement, tests et production). PDI, quant à lui permet de lancer les traitementssur un poste distant et propose même de les exécuter en grappes.

8. Outils : avantage à TOS et PDI qui proposent tous deux un outil de débuggingtrès pratique.

9. Optimisation : avantage à TOS et à PDI qui permettent tout deux d'optimiserau mieux les di�érents traitements à e�ectuer. TOS met à disposition le mode ELTpour di�érentes bases et, PDI propose gratuitement d'exécuter les traitements pargrappe.

5.3.3 Conclusion

Après cette étude, on peut d'ores et déjà remarquer un net avantage du côté deTalend Open Studio et de Pentaho Data Integration. Mêmes s'ils ont de nombreusescaractéristiques di�érentes, il est di�cile de départager ces deux ETL, ce que permettrontpeut-être les tests de performances.

Page 41: 08 Obs Francheteau

Chapitre 6

Tests de performances

6.1 Méthodologie

Comme expliqué dans le chapitre précédent, les temps de traitements sont des critèrestrès importants pour le choix d'un ETL. Il a donc fallu e�ectuer une troisième et dernièrephase d'étude pour comparer les performances des ETL sélectionnés dans la premièrephase. Les tests qui vont suivre ont été e�ectués localement ce qui ne re�ète donc pasles performances sur du travail à distance. Ils ont été classés en trois parties di�érentes.La première, qui est la plus simple, s'attache à mesurer les temps de traitements dupassage d'un �chier source à un �chier cible sans aucune transformation. La deuxième estsemblable à la première excepté que c'est une base de données en cible. En�n, la troisièmemet en place des scénarios impliquant diverses transformations (jointures, agrégationsetc.).

Seules les deux premières parties sont testées sur les cinq ETL. La troisième s'oc-cupe uniquement de Talend et Pentaho, les autres ETL n'étant pas, à l'heure actuelle,en mesure de les concurrencer en termes de performances ou du nombre d'opérationsdisponibles. Pour chaque test, trois essais ont été e�ectués et le résultat présenté montrela moyenne de ceux-ci.

Voici les caractéristiques du PC sur lequel ont été e�ectués les tests :

Nom Dell Optiplex 740Processeur AMD Athlon 64 X2 Dual Core 4000+ (2,10 GHz)RAM 2 Go de RAMOS Microsoft Windows XP Professionnel SP2

Java 1.6MySQL 5.0SQL Server Express 2005 SP2 1.0Oracle XE 10g Release 2PostgreSQL 8.3FireBird 2.1Access 2003 11.5

Talend Open Studio 2.3.3Pentaho Data Integration 3.0.3Clover.ETL/Clover.GUI 2.4.4/1.10.0Jitterbit 1.3.2Apatar 1.1.8

Page 42: 08 Obs Francheteau

Cas de Test 41

Les tests ont été lancés via l'interface graphique puisque c'est l'utilisation normale quel'on en fait. Des tests lancés via des lignes de commandes ont été e�ectués, mais aucunedi�érence notable de performances n'a été remarquée. Bien évidemment, les transforma-tions ont été exécutées avec le minimum possible d'applications tournant en arrière plan.Les bases de données ne servant pas pour une opération donnée ont aussi été désactivées.Sur Talend Open Studio, la gestion de plusieurs processeurs a été activée. Les modélisa-tions de ces tests sur les ETL ont essayé d'être optimisées au maximum, cependant il estsûrement possible d'améliorer d'avantage ces modélisations pour pro�ter au mieux desfonctionnalités des ETL.

NB : Dans le cadre de l'étude sur les SGBD gratuites / Open Source, il a été jugéjudicieux de tester les performances de tous les SGBD mentionnés dans ce guide. Cepen-dant, un bug sur la version de Talend Open Studio 2.3.3 et 2.4.0 empêche l'applicationde se connecter à Ingres. C'est pour cela que cette base n'apparaît pas dans les tests. Cebug a été corrigé dans la version 2.4.1 et, les tests auraient pu être e�ectués avec cettedernière mais, l'environnement de travail ayant changé (installation d'antivirus, passagedu SP2 au SP3, di�érence entre la version 2.3 et 2.4) ils n'auraient pas permis de com-parer correctement les performances de cette base. Les derniers tests e�ectués montrentdes performances proches de celles d'Oracle XE.

6.2 Cas de Test

Un cas de test complet a été implémenté pour les di�érents jeux d'essai. Il représenteun modèle en étoile utilisé pour l'analyse des ventes sur des clients, des produits, desrégions et des jours donnés. Le schéma de la base de données est représenté ci-dessous.Lors des cas d'extraction de la base, si le nombre d'enregistrements n'est pas indiqué,il faut savoir que les tables Clients et Produits contiennent 100 000 enregistrements, latable Regions en contient 10 000, la table Temps environ 7 000 et la table Faits 1 000000.

Figure 6.1 � Schéma de la base de données tests

Page 43: 08 Obs Francheteau

Tests �chier vers �chier 42

6.3 Tests �chier vers �chier

6.3.1 Fichier CSV vers autre �chier CSV

6.3.1.1 Présentation

Ce test, très simple, consiste à alimenter un �chier CSV via un autre �chier CSV :Clients.csv. Le �chier source comporte 4 champs séparés par un point-virgule : un iden-ti�ant, un nom et un prénom puis une date d'inscription. Il a été généré à partir de codeJava. Voici un exemple des cinq premières lignes :

1;oylvtn;v;27/11/2002

2;quehol;z;2/10/2007

3;p;vcw;19/3/2003

4;auzh;cslpbu;31/7/2007

5;liud;psciwpf;17/8/1997

Le �chier cible représente le même �chier que celui en source excepté que le séparateurn'est plus un point-virgule mais une simple virgule.

6.3.1.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover Jitterbit

100 000 3 4 1 11500 000 12 18 6 421 000 000 23 36 11 83

Figure 6.2 � Diagramme Comparatif : Fichier CSV vers autre �chier CSV

Page 44: 08 Obs Francheteau

Tests �chier vers �chier 43

6.3.1.3 Analyse

L'ETL Apatar n'apparaît pas sur cette opération. Le test a pourtant bien été e�ectué,cependant les temps de traitement se sont avérés beaucoup trop longs (près de 30 minutespour 100 000 lignes !). On peut remarquer qu'avec cet test très simple, Jitterbit est assezlent comparé aux autres ETL. Ceci est principalement dû au fait que les opérations soienttraitées comme si elles étaient sur un serveur distant même si celles-ci sont en local.

Page 45: 08 Obs Francheteau

Tests �chier vers �chier 44

6.3.2 Fichier CSV vers XML

6.3.2.1 Présentation

Ce test consiste à alimenter un �chier XML regions.xml à partir d'un �chier CSVregions.csv. Le �chier source comporte 3 champs séparés par un point-virgule : un codepostal, une ville et un département. Il a été généré à partir de code Java. Voici unexemple de cinq lignes représentant cinq codes postaux di�érents, deux villes mais unseul département :

85580;afzfgarajro;mf

85590;afzfgarajro;mf

85600;dxprkd;mf

85610;dxprkd;mf

85620;dxprkd;mf

Le �chier cible en XML est généré selon le format de l'exemple suivant :

<root>

...

<localite>

<CodePostal>85600</CodePostal>

<Ville>dxprkd</Ville>

<Departement>mf</Departement>

</localite>

...

</root>

6.3.2.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover

100 000 2 3 2500 000 9 14 91 000 000 18 29 18

Page 46: 08 Obs Francheteau

Tests �chier vers �chier 45

Figure 6.3 � Diagramme Comparatif : Fichier CSV vers �chier XML

6.3.2.3 Analyse

Jitterbit et Apatar ne sont pas sur ce test. Leurs temps de traitement est, là aussi, troplong. Pour 100 000 lignes, Jitterbit met près de 20 minutes et 25 minutes pour Apatar.Pentaho Data Integration est 50% plus lent que ses deux concurrents.

Page 47: 08 Obs Francheteau

Tests �chier vers base de données 46

6.4 Tests �chier vers base de données

6.4.1 Fichier CSV vers base MySQL

6.4.1.1 Présentation

Ce test consiste à alimenter une table MySQL Clients à partir du �chier CSV pré-senté précédemment. La table cible est la table Clients représentée par le schéma vu enintroduction de ce chapitre.

6.4.1.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover Jitterbit

100 000 29 28 32 88500 000 141 138 149 4221 000 000 282 278 301 900

Figure 6.4 � Diagramme Comparatif : Fichier CSV vers base MySQL

6.4.1.3 Analyse

Ici non plus, Apatar n'apparaît pas. Les temps sont encore trop longs (30 minutespour 100 000 lignes). En dehors de ce dernier et de Jitterbit, les ETL ont sensiblementles mêmes performances pour cette opération avec MySQL. Cet SGBD o�re donc desrésultats moyens sur TOS, PDI et Clover comparé aux autres ETL.

Page 48: 08 Obs Francheteau

Tests �chier vers base de données 47

6.4.2 Fichier CSV vers base SQL Server Express 2005

6.4.2.1 Présentation

Ce test est similaire au test précédent excepté que la base cible est sous SQL ServerExpress Edition 2005. Le driver JDBC utilisé est JTDS. Ce n'est pas l'o�ciel utilisé parMicrosoft mais un pilote Open Source. C'est celui implémenté par défaut dans TalendOpen Studio et Pentaho Data Integration. Il est aussi plus rapide que le driver o�cielMicrosoft (Ce pilote est d'ailleurs jugé comme étant le plus rapide pour SQL Server ouSybase).

6.4.2.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover

100 000 30 12 29500 000 148 56 1421 000 000 295 112 283

Figure 6.5 � Diagramme Comparatif : Fichier CSV vers base SQL Server Express 2005

6.4.2.3 Analyse

Là encore, Jitterbit et Apatar ont des temps de traitements plus élevés. On remarqueune grosse amélioration des performances pour Pentaho Data Integration qui est beau-coup plus rapide à travailler sous une base SQL Server. Cet SGBD o�re donc de trèsbons résultats avec PDI ainsi que des performances moyennes avec TOS et Clover.

Page 49: 08 Obs Francheteau

Tests �chier vers base de données 48

6.4.3 Fichier CSV vers base Oracle Express 10g

6.4.3.1 Présentation

On utilise le même test avec un SGBD di�érent. Ici, on teste les performances desETL avec Oracle XE. Le driver JDBC utilisé pour les trois ETL est celui d'Oracle : Thin.

6.4.3.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover

100 000 54 19 53500 000 270 87 2571 000 000 503 173 517

Figure 6.6 � Diagramme Comparatif : Fichier CSV vers base Oracle XE 10g

6.4.3.3 Analyse

Là encore, Jitterbit et Apatar ont des temps de traitements plus élevés (plus de 7minutes pour traiter seulement 100 000 lignes avec Jitterbit et des temps encore plus longssous Apatar). On peut à nouveau observer un net avantage de Pentaho Data Integrationface à Talend et Clover qui subissent une baisse de performances vis à vis de MySQL ouSQL Server Express. Oracle Express 10g o�re donc de bonnes performances avec PDImais de mauvaises avec TOS et Clover

Page 50: 08 Obs Francheteau

Tests �chier vers base de données 49

6.4.4 Fichier CSV vers base PostgreSQL

6.4.4.1 Présentation

Ici on assiste au même test sur PostgreSQL avec le pilote JDBC classique.

6.4.4.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover

100 000 34 19 34500 000 168 89 1681 000 000 330 180 338

Figure 6.7 � Diagramme Comparatif : Fichier CSV vers base PostgreSQL

6.4.4.3 Analyse

Les temps des deux autres ETL sont encore trop élevés même s'ils sont un peu plusperformants qu'avec les autres bases (Jitterbit est environ cinq fois plus lent que PDI).Une fois de plus, l'avantage va à Pentaho Data Integration qui a de bons résultats avecPostgreSQL. Clover et TOS ont des performances moyennes avec cet SGBD.

Page 51: 08 Obs Francheteau

Tests �chier vers base de données 50

6.4.5 Fichier CSV vers base FireBird

6.4.5.1 Présentation

Ici on utilise le même test avec FireBird. Le driver JDBC utilisé est JayBird 2.1, leplus répandu.

6.4.5.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI Clover

100 000 40 45 40500 000 195 224 1991 000 000 382 447 403

Figure 6.8 � Diagramme Comparatif : Fichier CSV vers base FireBird

6.4.5.3 Analyse

Les temps de traitements des trois ETL sont similaires. On remarque cependant quePentaho Data Integration est moins performant avec FireBird. Cet SGBD o�re donc desperformances très moyennes voir mauvaises pour les 3 ETL.

Page 52: 08 Obs Francheteau

Tests �chier vers base de données 51

6.4.6 Fichier CSV vers base Access 2003

6.4.6.1 Présentation

En�n, Access et le driver Microsoft ODBC sont utilisés dans ce test.

6.4.6.2 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI

10 000 12 1350 000 214 68100 000 800 124

Figure 6.9 � Diagramme Comparatif : Fichier CSV vers base Access 2003

6.4.6.3 Analyse

Seuls Talend et Pentaho ont été testés, Clover ne supportant pas les metadonnéesd'Access. On remarque que, les temps de traitements de Talend croissent exponentielle-ment selon la quantité de données à écrire dans la table. Attention, le nombre de donnéesécrites est dix fois moins élevé qu'avec les autres bases dans la mesure où Access se montretrop lent avec une trop grande quantité de données en écriture.

Page 53: 08 Obs Francheteau

Tests �chier vers base de données 52

6.4.7 Fichier XML vers base MySQL

6.4.7.1 Présentation

Ce test consiste à alimenter la table Regions d'une base MySQL via le �chier XMLgénéré auparavant. Le format de la table Regions a été présenté précédemment

6.4.7.2 Résultats

Temps (en secondes)Nombre d'enregi- TOS PDI PDI Clover Jitterbit Apatarstrements traités (avec SAX)

10 000 12 23 3 3 5 33050 000 177 680 14 13 24100 000 724 1771 28 25 47

Figure 6.10 � Diagramme Comparatif : Fichier XML vers base MySQL

6.4.7.3 Analyse

Nous pouvons observer de fortes di�érences entre les di�érents ETL. Ces écarts sontdus à la méthode de parsing des �chiers XML. Talend utilise deux moyens pour parserles �chiers XML : Xerces et Dom4j. Dom4j est le plus rapide des deux mais, comme sonnom l'indique, il repose sur le parseur DOM. Ce dernier est mal adapté sur les �chiers degrandes tailles étant donné qu'il enregistre en mémoire toute la structure du �chier XMLsous forme d'arbre. Les temps de traitements croissent exponentiellement selon les taillesde �chiers. L'avantage de DOM est qu'il est très simple à utiliser, couplé à l'interfacede Talend Open Studio ce test a été facilement implémenté. Sous Xerces, les temps detraitements sont encore plus longs

Pentaho Data Integration, lui, laisse le choix entre l'utilisation de DOM ou SAX. Cedernier est mieux adapté aux �chiers de grandes tailles étant donné qu'il parse au fur et à

Page 54: 08 Obs Francheteau

Tests �chier vers base de données 53

mesure qu'il reçoit les données, il stocke donc très peu d'informations en mémoire. Nouspouvons alors observer des grandes di�érences de performances. SAX est cependant plusdi�cile à utiliser sous Pentaho.

Clover et Jitterbit, eux, utilisent aussi SAX. Quant à Apatar la méthode de parsingest inconnue et les temps de traitement sont toujours très longs. C'est pour cette raisonque tous les tests n'ont pas été e�ectués sous cet ETL.

NB : La version 2.4 de Talend Open Studio comprend un composant gérantles �ux SAX

Page 55: 08 Obs Francheteau

Scénarios 54

6.5 Scénarios

6.5.1 Test 1 - Fichiers CSV avec transformations de dates

6.5.1.1 Présentation

Ce test consiste à récupérer des entiers, se trouvant dans un �chier CSV représentantdes dates, pour alimenter un autre �chier CSV et assembler ces di�érents nombres pour enfaire une véritable date. Le �chier source est constitué de quatre champs : un identi�ant,un jour, un mois et une année. Voici un extrait de cinq lignes :

93260;3;6;1963

93261;16;6;1963

93262;17;6;1963

93263;4;6;1963

93264;9;6;1963

Le �chier cible comprend un seul champ au format date (représenté sous Talend commesous Pentaho par un type Date et non un type String). Voici un extrait de cinq lignes :

01-09-2008

19-09-2008

21-09-2008

30-09-2008

24-09-2008

À noter aussi que les dates en doublons sont éliminées, ce qui a permis de supprimer unquart des enregistrements.

6.5.1.2 Modélisations

Figure 6.11 � Test 1 - Modélisation sous Talend Open Studio

Page 56: 08 Obs Francheteau

Scénarios 55

Figure 6.12 � Test 1 - Modélisation sous Pentaho Data Integration

6.5.1.3 Résultats

Temps (en secondes)Nombre de lignes traitées TOS PDI

100 000 3 7500 000 17 351 000 000 37 76

Figure 6.13 � Diagramme Comparatif : Fichiers CSV avec transformations de dates

6.5.1.4 Analyse

Talend s'avère plus performant que Pentaho. Avant de supprimer les doublons, PDIexige que les lignes soient triées, ce qui à priori, prend du temps. Le dédoublonnage apermis de supprimer un quart des enregistrements mais, ce n'est pas cette étape, ni celle

Page 57: 08 Obs Francheteau

Scénarios 56

du tri qui rend PDI plus lent puisque si l'on supprime celles-ci on ne constate aucungain de performance. Par conséquent, c'est la partie JavaScript qui ralentit Pentaho etle pénalise par rapport à Talend qui, lui, utilise son composant tMap très performant. Ilfaut essayer d'utiliser au minimum l'étape Javascript dans Pentaho Data Integration.

Page 58: 08 Obs Francheteau

Scénarios 57

6.5.2 Test 2 - Di�érentes tables avec �ltrage

6.5.2.1 Présentation

Ce test consiste à alimenter un �chier CSV en ne gardant que les clients qui ont e�ectuéau moins une commande dans les années 1990. Pour cela, il faut pouvoir rechercher danstrois tables : les tables Clients et Temps bien évidemment, mais aussi la table Faits quifait le lien entre les deux.

6.5.2.2 Modélisations

Figure 6.14 � Test 2 - Modélisation sous Talend Open Studio

Figure 6.15 � Test 2 - Modélisation sous Pentaho Data Integration

Page 59: 08 Obs Francheteau

Scénarios 58

6.5.2.3 Résultats

Temps (en secondes)SGBD utilisé TOS PDI

MySQL 45 42Oracle XE 42 40

SQL Server 2005 XE 10 26PostgreSQL 14 22FireBird 23 35Access 15 23

Figure 6.16 � Diagramme Comparatif : Jointures de tables avec �ltrage

6.5.2.4 Analyse

Les deux bases les plus lentes pour cette opération sont MySQL et Oracle XE. Talends'avère globalement plus rapide que son rival. À noter que cette opération ne fait que lireet n'écrit pas une seule donnée dans les bases contrairement aux premiers tests.

Page 60: 08 Obs Francheteau

Scénarios 59

6.5.3 Test 3 - Di�érentes tables avec calcul et agrégation

6.5.3.1 Présentation

Ce test consiste à alimenter une table TotalClients représentant les clients avec le coûttotal des produits achetés. Cette table possède quatre champs : l'identi�ant du client, sonnom, son prenom et le total de ses achats (un réel pouvant atteindre 6 chi�res avant lavirgule et 2 chi�res après). Pour e�ectuer cette opération il su�t de joindre la tableClients (pour récupérer le nom et prénom) à la table Faits (pour récupérer le prix et laquantité). Ensuite, il faut multiplier, pour chaque enregistrement de la table Faits, le prixpar la quantité puis de faire la somme des totaux de chaque client. Les résultats sont,pour �nir, insérés dans la table TotalClients.

6.5.3.2 Modélisations

Figure 6.17 � Test 3 - Modélisation sous Talend Open Studio

Figure 6.18 � Test 3 - Modélisation sous Pentaho Data Integration

Page 61: 08 Obs Francheteau

Scénarios 60

6.5.3.3 Résultats

Temps (en secondes)SGBD utilisé TOS PDI

MySQL 79 72Oracle XE 73 48

SQL Server 2005 XE 60 25PostgreSQL 83 43FireBird 51 71Access 795 144

Figure 6.19 � Diagramme Comparatif : Jointures de tables avec agrégation

6.5.3.4 Analyse

Access n'est pas représenté sous le diagramme du fait des temps de traitements trèslongs sous Talend Open Studio. Cela con�rme le test simple e�ectué précédemment avecAccess. La cause de la lenteur de cet SGBD n'est pas dans la lecture des données (àce niveau là, il rivalise presque avec les autres SGBD), mais à l'écriture qui se fait trèslentement. On remarque que PDI s'avère globalement plus performant que TOS. Seulle SGBD FireBird permet à Talend Open Studio de battre Pentaho Data Integration.Les temps sont étonnamment rapides avec cet SGBD sous l'ETL TOS, alors que, dansles autres tests FireBird s'avère plus lent. Là aussi, cela con�rme le test simple e�ectuéprécédemment qui montre que FireBird est plus performant sous TOS que sous PDI.

Page 62: 08 Obs Francheteau

Chapitre 7

Bilan

7.1 Quel ETL choisir ?

Les solutions ETL Open source n'ont pas à rougir face aux ETL propriétaires. Leursutilisateurs et le nombre d'applications déployées s'accroissent de mois en mois. Nombred'experts parient que, dans maximum 4 ans, ce seront les ETL propriétaires qui auront às'aligner sur les Open Source du fait de la qualité des produits, de la récession économique,de l'ampleur de l'activité de la communauté. Cependant, l'Open Source a encore trèsmauvaise réputation chez les entreprises. C'est à force de coups marketing et de séminairescomme font Talend et Pentaho, que les sociétés pourront prendre con�ance en l'OpenSource. Le choix d'un ETL Open Source, est donc un choix judicieux qui permet delimiter les coûts et les risques liés à un projet. Reste ensuite à savoir quel ETL choisir.

Parmi les dix ETL étudiés, seuls quatre peuvent être utilisables en entreprise : TalendOpen Studio, Pentaho Data Integration, Clover.ETL et Jitterbit. Parmi ces quatre solu-tions, Talend Open Studio et Pentaho Data Integration ont une nette avance qui permetde rivaliser avec les ETL commerciaux du fait de leurs qualités, de leurs compatibilitéset de leurs performances. Un avantage non négligeable de ces ETL, c'est que leur deuxconcepteurs principaux (Cédric Carbone pour Talend Open Studio et Matt Casters pourPentaho Data Integration) sont très souvent disponibles sur les forums (notamment ceuxde Developpez.com) et répondent en français d'une manière très précise à des questionstechniques ou non.

Il est très di�cile de départager ces deux ETL qui se complètent d'avantage qu'ilsne sont concurrents. On peut d'ailleurs se demander s'il existe de la concurrence dans ledomaine de l'Open Source. Le choix de l'ETL, dépend donc de la nature du projet maisaussi, des préférences des développeurs tant ces deux ETL sont di�érents d'utilisation.

7.2 Pourquoi choisir TOS et non PDI

Talend Open Studio, même s'il est plus récent que Pentaho Data Integration, possèdeune plus grande communauté française. Talend est une société, notamment basée enFrance, qui e�ectue de nombreux séminaires a�chant toujours complet et suscitant untrès grand engouement de la part de la communauté BI.

Son interface graphique peut aussi sembler plus intuitive aux habitués d'Eclipse. Ta-lend Open Studio reprend son ergonomie, éprouvée et appréciée par de nombreux utili-

Page 63: 08 Obs Francheteau

Pourquoi choisir PDI et non TOS 62

sateurs, même si celle-ci l'empêche d'être aussi réactive que celle de Pentaho Data Inte-gration.

L'Ecosystem de Talend Open Studio regroupe tous les composants développés pardes utilisateurs externes pour compléter la palette de composants initiale. Actuellement,il met à disposition près de 50 composants allant de la gestion des �chiers PDF à lapossibilité d'envoyer des SMS.

Le fait que Talend soit un générateur de code, permet de lancer les traitements àpartir de n'importe quel poste possédant une machine virtuelle Java 1.5 ou supérieur.Les traitements peuvent alors être lancés via le plani�cateur de tâches Windows. TOSpermet aussi d'utiliser soit Java soit Perl et de créer des routines personnalisées trèsrapidement.

La gestion des contextes permet de passer d'un environnement de développement àun autre de test, puis à la production. Il est aussi possible de personnaliser ces contextes.Talend Open Studio permet également la gestion des versions des �chiers et de générerde la documentation.

Un référentiel de metadonnées très complet permet de réutiliser des schémas de �-chiers, de connections, de Web services et autres et ainsi gagner beaucoup de temps.Pentaho Data Integration ne gère pas les metadonnées mais permet facilement de récu-pérer les schémas des �chiers en les scannant.

Le Business Modeler permet de représenter et de modéliser l'environnement à hautniveau. Il peut être utilisé par les personnes s'occupant uniquement de l'aspect Business etne s'y connaissant pas forcément en développement. Ils modéliseront les schémas générauxsur ce Business Modeler et ces derniers pourront permettre de guider les développeursdans leurs travaux.

Talend Open Studio gère de nombreux connecteurs applicatifs alors que Pentaho DataIntegration n'implémente que SAP (qui n'est cependant pas géré par TOS)

De nombreux outils pour corriger des erreurs, de véri�er les statistiques, les logs et decommenter les développements et d'ajouter de la documentation sont mis à dispositionpar Talend Open Studio.

La société Talend n'a pas développé de plateforme BI mais, du fait de nombreuxpartenariats, a intégré son ETL dans SpagoBI et JasperServer. Ces plateformes serventà mettre en relation di�érents composants pour e�ectuer des rapports, des tableaux debords, de plani�er les exécutions de Talend Open Studio, etc.

En�n, Talend utilise aussi un mode ELT avec quelques bases de données (MySQL,Oracle et Teradata) pour partager les traitements entre la JVM et le SGBD et doncoptimiser les performances.

7.3 Pourquoi choisir PDI et non TOS

Pentaho Data Integration o�re la possibilité de lancer un traitement sur un serveurà distance pour peu qu'il dispose de Pentaho Data Integration et d'un petit logiciel dunom de Carte.

Page 64: 08 Obs Francheteau

Pourquoi choisir PDI et non TOS 63

La possibilité d'exécuter les traitements en grappe sur des serveurs distants, permet dene pas surcharger un seul serveur mais de répartir la charge de travail pour de meilleuresperformances.

Pentaho Data Integration met un référentiel commun à disposition. Ce dernier reposesur une base de données au choix et permet ainsi d'accéder aux traitements préalablementdéveloppés à partir de n'importe quel poste ayant accès à cette base. Ce référentiel permetaussi de gérer des utilisateurs et de leur attribuer des pro�ls. TOS ne met à dispositioncette option que dans sa suite payante (Talend Integration Suite).

Pentaho Data Integration fait partie de la suite décisionnelle Pentaho très réputée ettrès utilisée parmi les solutions OSBI (Open Source Businness Intelligence). PDI s'intègreainsi facilement à cette suite décisionnelle pour e�ectuer du reporting, des analyses, dudata mining, des tableaux de bords, de plani�er les exécutions de Pentaho Data Integra-tion, etc.

Pentaho Data Integration est entièrement gratuit et ne possède aucune option sup-plémentaire payante, contrairement à Talend Open Studio.

Page 65: 08 Obs Francheteau

Chapitre 8

Étude approfondie de TOS et de PDI

8.1 Talend Open Studio

8.1.1 Étude des composants

Lors des tests de performances, Talend Open Studio et Pentaho Data Integration a�-chaient, bien que di�érentes pour certains tests, des résultats assez proches globalement.Pouvoir les comparer sur leurs fonctionnalités était jugé plus pertinent. L'idée a doncété de regarder un à un, chaque composant de Talend Open Studio pour savoir à quoi ilservait, dans quel contexte il pouvait être utilisé et comment l'utiliser.

Toute cette étude a été retransmise par écrit dans un guide des composants de prèsde 50 pages. Il représente la synthèse d'un long travail de recherche car cet ETL possèdeenviron 250 composants Java. Ceux de Perl, moins nombreux, sont aussi quelque peudi�érents. L'étude s'est faite en Java dans la mesure où ce langage est plus utilisé et, lespossibilités sur cet ETL sont plus vastes qu'avec Perl. Il faut savoir que les guides o�cielsde Talend (un guide des composants de 600 pages et un autre plus général de 200 pages),ne traitent pas de tous les composants, sont anglais et manquent souvent de clarté. C'estdans l'optique de corriger ces erreurs que ce guide a été rédigé. D'autant plus, qu'il estplus facile et rapide de lire 50 pages que 600. Voici un tableau montrant les nombres etles résumés des composants regroupés par type :

Page 66: 08 Obs Francheteau

Talend Open Studio 65

Type Groupe Nb Description

BusinessIntelligence

Charts 1 Créer des graphiquesDB SCD 10 Gérer les dimensions à évolution lenteJasper 2 Créer des rapports via JasperReport

OLAP Cube 2 Gérer OLAP via Mondrian ou Palo

Business

CentricCRM 2 Connexion au CRM CentricCRMMicrosoft AX 2 Connexion à l'ERP Microsoft AXSalesforce 2 Connexion au CRM SalesforceSugarCRM 2 Connexion au CRM SugarCRMVtigerCRM 2 Connexion au CRM VtigerCRM

Custom Code7 Ajouter du code Java ou Groovy et

modi�er des variables globales

Data Quality6 Comparer des �ux et obtenir des données

de qualité

Databases

AS400 6 Gestion du SGBD AS400Access 3 Gestion du SGBD Access

DB Generic 3 Gestion d'une base utilisant ODBCDB JDBC 7 Gestion d'une base utilisant JDBC

DB2 8 Gestion du SGBD DB2FireBird 3 Gestion du SGBD FireBirdHSQLDb 3 Gestion du SGBD HSQLDbInformix 3 Gestion du SGBD InformixIngres 4 Gestion du SGBD Ingres

Interbase 6 Gestion du SGBD InterbaseJavaDB 3 Gestion du SGBD JavaDBLDAP 2 Gestion du SGBD LDAP

MS SQL Server 11 Gestion du SGBD MS SQL ServerMax DB 3 Gestion du SGBD Max DBMySQL 13 Gestion du SGBD MySQLOracle 12 Gestion du SGBD Oracle

PostgreSQL 10 Gestion du SGBD PostgreSQLPostgrePlus 10 Gestion du SGBD PostgrePlusSQLite 6 Gestion du SGBD SQLiteSybase 11 Gestion du SGBD SybaseTeradata 11 Gestion du SGBD TeradataVertica 6 Gestion du SGBD Vertica

2 fonctions indépendantes du SGBD

Page 67: 08 Obs Francheteau

Pentaho Data Integration 66

Type Groupe Nb Description

ELTMySQL 6 Utiliser le mode ELT avec MySQLOracle 3 Utiliser le mode ELT avec OracleTeradata 8 Utiliser le mode ELT avec Teradata

FileInput 9 Utiliser �chier en source

Management 11 Gérer les �chiersOutput 9 Utiliser �chier en cible

InternetFTP 4 Gérer des �chiers via FTP

15 Gérer Web Services, Mail, RSS, etc.

Logs & Errors11 Créer des logs, des statistiques, mesurer

des �ux, chronométrer, etc.

Misc7

Divers composants

Orchestration14 Orchestrer les Jobs : créer des boucles,

paralléliser, itérer, attendre, uni�er, etc.

ProcessingFields 7 Traiter les champs (normalisation, etc.)

10 Nombreux traitements (calculs, �ltres, etc.)

System4 Lancer un Job, appeler des commandes

système, etc.

XML7 Gestion des �chiers XML (DTD, XSL,

XSD)

8.1.2 Intégration à un projet

Un des buts du stage e�ectué est de pouvoir utiliser un ETL Open Source dans unprojet BI. Il a donc été jugé important, d'étudier toutes les capacités de Talend OpenStudio pour pouvoir en pro�ter pleinement dans un projet. Là encore, un rapport a étérédigé montrant les di�érents avantages à utiliser cet ETL et, comment en tirer parti lorsde l'élaboration d'un projet.

Ce rapport fait une quinzaine de pages et explique, dans un premier temps, le fonction-nement général et les principales caractéristiques. Ensuite, il montre ce qu'o�re TalendOpen Studio en réponse aux problèmes posés par un réel projet BI (Plani�cation, admi-nistration, documentation, correction d'erreurs, travail collaboratif, optimisation, etc.).De plus, ce document présente un petit guide pour bien paramétrer le logiciel a�n qu'ilsoit prêt à l'emploi. En�n, l'utilisation des contextes, un élément important de TalendOpen Studio, est expliquée. En conclusion, il montre brièvement les autres outils qu'o�rela société Talend et qui peuvent être utilisés dans un projet BI.

8.2 Pentaho Data Integration

8.2.1 Étude des composants

Après avoir rédigé le guide de Talend Open Studio, il a été naturel de faire celui dePentaho Data Integration. Il reprend donc les mêmes principes : une étude de chaquecomposant pour analyser les fonctionnalités de cet ETL. Voici un tableau récapitulatifde tous les composants de Pentaho Data Integration :

Page 68: 08 Obs Francheteau

Pentaho Data Integration 67

TRANSFORMATIONSType Nb Description

ExtractionExtraction de données sources : �chiers CSV, XML, Excel,Bases de données, Access, LDAP, Mondrian, génération devaleurs, etc.

21

AlimentationAlimentation de données cibles : �chiers CSV, XML, Excel,Bases de données, Access, supprimer / insérer / mettre àjour une table, etc.

11

RechercheRecherche dans �ux / base de données, appel procédurestockée / service web, véri�cation existence colonne / �chier/ table, jointure de bases de données, etc.

9

TransformationEtapes de transformation : agrégation, calcul, �ltrage,transformation, tri, normalisation, etc.

29

Jointure ligne Comparaison de lignes, produit cartésien, jointure XML, etc.5

Exécution descripts

Exécution de scripts SQL, Java ou évaluation par expressionrégulière

3

Entrepôt dedonnées

Données relatives aux datas warehouses : dimensions àévolution lente et "junk dimensions"

2

Sous-transformation

Exécuter une sous-transformation, spéci�er ses entrées et sessorties

3

Lien avec TâcheEtapes de transformation qui ont un lien avec les étapes deJobs : créer ou récupérer des variables, copier les lignes versle résultats, etc.

6

En ligneLire ou écrire sur un socket et injecter un �ux de donnéesvia du code Java

3

Expérimental Composants en cours de développement4

Étapes obsolètes Composants qui ont été remplacés par d'autres1

Page 69: 08 Obs Francheteau

Pentaho Data Integration 68

JOBS (TACHES)Type Nb Description

GénéralComposants généraux : lancer un Job, exécuter unetransformation / un Job, écrire dans la trace, ping, etc.

10

Manipulation deCourriels

Récupération et envoi d'emails2

Gestion de�chiers

Composants gérant les �chiers : créer, supprimer, comparer�chiers / répertoires, compresser /décompresser une archive

16

ÉvaluationTemporiser le Job, Véri�er l'existence de �chiers / table /colonnes etc.

6

Exécution descripts

Évaluer via JavaScript, créer un script SQL ou unecommande Shell

3

ChargementBulk

Charger des données en bloc avec MySQL ou MS SQL Server3

XML Gestion des �chiers XML (DTD, XSL, XSD)4

Transfert de�chiers (FTP)

Envoi et récupération de �chiers via FTP, SFTP, SSH27

RéférentielVéri�e la connexion au référentiel et exporte le référentielvers un �chier XML

2

8.2.2 Intégration à un projet

Là encore, un guide d'une quinzaine de page a été rédigé dans la même optique quecelui de Talend Open Studio. Ce guide explique aussi comment lancer des exécutions engrappes et à distance.

Page 70: 08 Obs Francheteau

Chapitre 9

Études annexes e�ectuées

9.1 Étude sur les SGBD gratuits / Open Source

Le sujet du stage précise qu'en parallèle de l'étude sur les ETL, une note de synthèsepourra être rédigée sur une comparaison ciblée des moteurs de base de données Opensource. Un rapport d'une quinzaine de pages a donc été réalisé en conclusion de cetteétude. La méthodologie suivie a été globalement la même que celle pour les ETL, enmoins complexe cependant car, le temps alloué pour cette recherche n'a été que d'unesemaine. Après une phase de recherche globale sur les SGBD Open Source, quatre basesont été retenues : MySQL, PostgreSQL, FireBird et Ingres. De plus, Oracle et Microsoftproposent depuis peu des versions gratuites de leurs SGBD phares, il a été jugé intéressantde voir ce que ces versions pouvaient o�rir.

L'étude des SGBD peut s'avérer être un domaine très complexe dans la mesure oùil englobe de nombreux outils et critères (clustering, administration, sécurité, mirroring,moteurs, normes, etc.). C'est pour cela que ce rapport se contente de décrire les caracté-ristiques des bases, leurs avantages et leurs inconvénients. En conclusion, une synthèse aété rédigée pour aider l'utilisateur à choisir son SGBD selon le type de projet.

Le domaine des ETL étant intimement lié à celui des bases de données, les testsde performances ont été e�ectués sur les di�érentes bases. Ceci permet de savoir quetelle base est plus performante qu'une autre avec tel ETL. De plus, les ETL o�rentdes fonctionnalités sur certains SGBD uniquement. Voici donc, un tableau résumantles caractéristiques de ces bases selon les ETL Talend Open Studio et Pentaho DataIntegration.

Fonctionnalité ETL MySQL PostgreSQL Ingres FireBird Oracle SQLServer

Dimensions àévolution lente

TOS OUI OUI OUI NON OUI OUIPDI OUI OUI OUI OUI OUI OUI

Chargement enbloc des données

TOS OUI OUI NON NON OUI OUIPDI OUI en cours NON NON en cours en cours

Mode ELTTOS OUI NON NON NON OUI NONPDI NON NON NON NON NON NON

Procéduresstockées

TOS OUI NON NON NON OUI OUIPDI OUI OUI OUI OUI OUI OUI

Connection / Commit

/ Rollback

TOS OUI OUI NON NON OUI OUIPDI NON NON NON NON NON NON

Page 71: 08 Obs Francheteau

Utilisation d'un ETL propriétaire dans un véritable projet 70

9.2 Utilisation d'un ETL propriétaire dans un véritableprojet

Pendant les cinq mois de stage, l'occasion m'a été o�erte d'intervenir sur un réel projetBI. Celui-ci, qui a débuté il y a quelques années, est à destination du groupe Beaumanoir.Cette société englobe plusieurs enseignes de magasins de vêtements à travers le monde(Cache-Cache, Bonobo, Patrice Bréal, Scottage, etc.). Le projet, du nom de BOMAG,a pour but d'aider les utilisateurs à gérer les ventes et les stocks de vêtements en leursfournissant des rapports.

Le système récupère les informations provenant d'interfaces PHP et des enseignes desmagasins. Chaque enseigne dispose d'une base STORELAND contenant des centaines(voire des milliers) de tables. Ces bases sont sous Oracle pour la plus grande partie,mais aussi sur Access. Avec ces données sources, un ETL du nom de Sunopsis, permetd'alimenter un entrepôt de données. Cet ETL propriétaire a été racheté par Oracle en2006 et s'appelle dorénavant Oracle Data Integration (ODI).

Cet entrepôt de données est nommé "Infocentre" et est récupéré par une plateformedécisionnelle : BO (Business Objects). Cette dernière (propriétaire également) a été dé-veloppé par SAP et est très utilisée dans le domaine BI. Seule la partie Reporting de BOa été mise à pro�t dans ce projet.

Le travail e�ectué sur ce projet a duré trois semaines a�n d'implémenter quelquesdemandes d'évolution et corriger des anomalies autant sur Sunopsis que sur BO. Celam'a beaucoup aidé à voir comment un ETL pouvait être utilisé dans un projet BI. J'aiaussi été dans la mesure de comparer un ETL propriétaire aux ETL Open Source. TalendOpen Studio et Pentaho Data Integration n'ont pas à rougir en comparaison de Sunop-sis. Ce dernier est en réalité un ELT et, est par conséquent plus di�cile d'accès. Il fautimpérativement connaître le langage SQL pour utiliser e�cacement l'outil. Il s'avère trèscomplet notamment en tout ce qui concerne l'administration, la plani�cation et la topo-logie. Même avec une étude sur les ETL, il m'a fallu quelques heures pour appréhenderSunopsis. Quant à BO, il m'a permis d'utiliser un outil de reporting or, ce genre d'outilva souvent de pair avec les ETL.

Figure 9.1 � Architecture de BOMAG

Page 72: 08 Obs Francheteau

Étude sur les plateformes OSBI 71

9.3 Étude sur les plateformes OSBI

Le sigle OSBI signi�e Open Source Business Intelligence. Il regroupe donc tous lesoutils libres utilisés dans le décisionnel. Une plateforme OSBI est un élément majeur d'unprojet BI. C'est cette dernière qui va mettre en relation tous les composants décisionnelstels que les ETL, les outils de Reporting, etc. Elle va permettre de gérer plus précisémentces outils et ce, de nombreuses façons : plani�cation des traitements ETL, envoi de mailsincluant des rapports, paramétrage de ceux-ci, gestion des pro�ls, des connexions et dela sécurité, mise à disposition de rapports pour les utilisateurs, etc. Ces plateformes sontreprésentées par le portail de la �gure 3.4 du rapport de stage. Elles sont le plus souventaccessibles via des serveurs Web (Tomcat et Jboss en tête) et gérées par des portails oudes applications personnalisées. Ce sont avec ces plateformes que les utilisateurs �nauxvont intéragir.

Bien que cette étude ne soit pas indiquée dans le sujet du stage, pouvoir comparerdiverses plateformes Open Source s'est avéré très important. Il est en e�et di�cile deconcevoir un projet décisionnel sans celles-ci. Les critères à retenir sont très nombreux.Ici, les performances n'ont que peu d'importance, on se tournera alors vers les di�érentescompatibilités, fonctionnalités et aussi la facilité d'intégration et d'utilisation. Un rap-port de plus de 20 pages a été rédigé pour comparer les trois principales plateformesdécisionnelles Open Source actuelles : JasperServer, Pentaho BI Platform et SpagoBI.

L'étude a duré deux semaines environ, certains éléments étant très di�ciles à installeret à tester. Le choix d'une de ces plateformes dépend fortement du projet à mener maisaussi des autres composants choisis. Étant donné qu'une plateforme n'est pas compatibleavec n'importe quel composant, il est souhaitable d'en choisir une qui puisse être utiliséeavec l'ETL et l'outil de reporting sélectionnés pour le projet. Reste à savoir s'il fautchoisir les composants en fonction de la plateforme ou alors l'inverse.

Figure 9.2 � Capture d'écran de JasperServer

Page 73: 08 Obs Francheteau

Étude sur les plateformes OSBI 72

Figure 9.3 � Capture d'écran de Pentaho BI Platform

Figure 9.4 � Capture d'écran de SpagoBI

Page 74: 08 Obs Francheteau

Étude sur les outils de reporting Open Source 73

9.4 Étude sur les outils de reporting Open Source

Les outils de Reporting sont parmi les composants les plus utilisés dans la BusinessIntelligence. Ils permettent de créer des rapports avec ou sans diagrammes montrantles états de di�érentes branches d'une entreprise (état des stock, des ventes, etc.). Cesrapports s'avèrent souvent indispensables dans tout projet BI, bien qu'ils aient moinsd'impact fonctionnel qu'un ETL.

Ce sont ces rapports que les utilisateurs �naux visualiseront sous di�érents formats(PDF, HTML, Excel, etc.). Ils peuvent être accessibles via une plateforme BI et bienévidemment ils sont le plus souvent paramétrables (choix d'une période ou d'un lieuprécis par exemple).

Cette étude non plus n'était pas, à l'origine, indiquée dans le sujet de stage. Cepen-dant, vouloir proposer une o�re de Business Intelligence complète aux clients nécessitede choisir un bon outil de reporting. Là encore, dans le monde Open Source le choixest vaste. L'étude s'est arrêtée sur les trois principaux outils que sont JasperReports,Pentaho Reporting et BIRT.

Concrètement, un rapport est un �chier XML suivant un certain schéma et est générévia une librairie Java (qui dépend de l'outil de reporting choisi). Cette dernière fera lelien entre le rapport et les connexions aux bases de données. Bien évidemment, les outilsde reporting proposent des interfaces graphiques pour générer automatiquement le �chierXML.

Pentaho Reporting et JasperReports ont une approche assez similaire. Le rapport estscindé en plusieurs parties qui sont principalement : l'en-tête du rapport, l'en-tête despages du rapport, le corps, le pied des pages et le pied du rapport. L'approche de BIRT,un projet de la communauté d'Eclipse, est plus simple en faisant un glisser-déposer de sescomposants (tableaux, diagrammes, etc.) Après avoir dé�nit le design général du rapport,le développeur créé des requêtes SQL voire ajoute du code Java, des scripts JavaScript oumême des requêtes MDX (OLAP) et peut visualiser son rapport sous di�érents formats.

Cette étude a duré une semaine. Di�érents tests et exemples de rapports ont étée�ectués sur ces trois outils. Un guide d'une quinzaine de pages a été rédigé en conclusionde cette étude pour orienter le lecteur sur le choix d'un logiciel selon le projet à mener.

Page 75: 08 Obs Francheteau

Étude sur les outils de reporting Open Source 74

Figure 9.5 � Exemple de rapport créé avec JasperReports

Figure 9.6 � Capture d'écran de JasperReports

Page 76: 08 Obs Francheteau

Chapitre 10

Conclusion

S'il y a un point majeur à retenir sur ce stage, ce sont tous les béné�ces qu'il a apportétant au niveau personnel qu'au niveau de l'entreprise.

Il m'a tout d'abord permis d'apprendre de très nombreux concepts et outils du mondede la BI. Étant donné qu'il s'agit d'un stage d'étude, il a fallu chercher, collecter, analyseret retranscrire par soi même de nombreuses informations tant sur les ETL, que sur lesautres composants BI ou encore sur les concepts du décisionnel. Il su�t de voir la quantitéd'informations, mises par écrit, que j'ai pu récolter tout au long de ces 5 mois. Un autrepoint positif du stage est que j'ai pu étudier en profondeur les deux ETL majeurs OpenSource qui seront certainement utilisés dans un futur projet. Il me sera ainsi possible depro�ter au mieux de ces outils.

L'autre grand béné�ciaire de ce stage est bien évidemment l'entreprise Orange Bu-siness & Services. Elle en attendait beaucoup du stage étant donné que, suite à cetteétude, elle pourra acquérir de nouveaux clients et lancer de nombreux projets basés surces recherches. Il ne faut pas oublier les documents, pertinents, fournis avec ce stage dontdes guides pour mieux utiliser les ETL et ainsi perdre moins temps sur l'intégration ousur des questions d'ordre technique.

L'intégration au projet BOMAG m'a permis de me rendre compte des problèmes liésaux contraintes clients. J'ai été plusieurs fois amené à être en relation avec des clientspour corriger des problèmes, demander des précisions sur les spéci�cations ou rendrecompte des évolutions apportées. Il a fallut notamment gérer des contraintes de temps.

Les demandes d'évolutions devaient respecter un certain délai de livraison alors quemon stage devait avancer, lui aussi, pour rendre compte régulièrement de mes avancées auresponsable de stage ou au directeur de projets. J'ai alors privilégié le développement (etl'apprentissage) sur BOMAG et proposé un plan détaillé de mes futurs études concernantle sujet du stage. Le projet BOMAG a ainsi pu évoluer et les grandes lignes du stage ontpu se dessiner pour ensuite être présentés lors de mes réunions d'avancement.

Pour �nir, en plus de tous les béné�ces apportés par le stage, j'ai aussi pu bienm'intégrer à l'entreprise. Je suis réellement satisfait tant de l'ambiance que du travailproposé et c'est pourquoi j'ai décidé de poursuivre mon expérience à OBS.

Page 77: 08 Obs Francheteau

Chapitre 11

Webographie

Voici les di�érents sites Internet consultés pour e�ectuer ce rapport :

� Site O�ciel d'Orange Business & Services IT&L@bs� developpez.com pour ses forums et tutoriels� Wikipedia pour de nombreuses informations en tout genre� decideo pour des informations sur le décisionnel� DwFacile.com pour des informations sur les entrepôts de données� systemeETL pour de nombreuses informations théoriques sur les ETL, les entrepôtsde données et la modélisation dimensionnelle

� guidescomparatifs.com pour choisir des critères de comparaisons entre ETL� Atol Conseils & Développements pour des informations sur le décisionnel OpenSource et pour leur livre blanc concernant les ETL Open Source

� Blog d'Atol Conseils & Développements pour des informations complémentaires� Site o�ciel de Gartner pour le quadrant magique� blog d'un chef de projet d'Atol CD concernant le décisionnel Open Source� blog de Matt Casters concepteur de Pentaho Data Integration� blog de Cedric Carbone un des concepteurs de Talend Open Studio

Sans oublier les sites o�ciels des ETL :

� Talend� Pentaho� Clover� Jitterbit� Apatar� Open ESB avec ETLSE� Enhydra Octopus� KETL� Scriptella� Benetl

Page 78: 08 Obs Francheteau

Chapitre 12

Annexes

12.1 Tableaux comparatifs des dix ETL

12.1.1 L'organisation, la communauté

Page 79: 08 Obs Francheteau

Tableaux comparatifs des dix ETL 78

12.1.2 Informations générales et accessibilité

Page 80: 08 Obs Francheteau

Tableaux comparatifs des dix ETL 79

12.1.3 Possibilités, Compatibilités

Page 81: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 80

12.2 Tableaux comparatifs détaillés de cinq ETL

12.2.1 L'organisation, la communauté

Organisation TOS PDI Clover Jitterbit ApatarInfrastructure OUI OUI NON OUI OUI

PaysFrance EU Rép- EU EU

EU, Chine Belgique Tchèque BiélorussieNombred'employés

+ de environ non non 1230 50 indiqué indiqué

Nombre detéléchargements

250 000 15 000 8 000 62 000 20 000par mois par mois

Nb partenairesréférencés

64 83 2 13 9

Activité desforums

Bonne Bonne Moyenne Moyenne Moyenne

12.2.2 Informations générales, accessibilité

Version TOS PDI Clover Jitterbit ApatarDernière version stable 2.4.1 3.0.4 2.4.9 1.3.2 1.1.12Date dernière version 11/07/08 26/06/08 15/07/08 22/02/08 15/07/08Date première version 21/09/06 2001 2004-2005 2005 07/05/07

Info générales TOS PDI Clover Jitterbit Apatar

Taille du logiciel200Mo 80Mo 6Mo (sans 40Mo 35Mo

l'interface)

ETL ou ELTETL ETL ETL ETL ETLet ELT

Type outilgénérateur moteur moteur moteur moteurde code de trans- de trans- de trans- de trans-

formations formations formations formationsCode de l'appli Java Java Java Java JavaLogicielsnécessaires

Java Java Java et Java et JavaEclipse PostgreSQL

Nb composants 309 150 60 40Ajout,customisationde composants

OUI OUI OUI OUI(Java ou (Java) (Java et (Java)Perl) XML)

Intégration àdes suitesdécisionnelles

Jasper- Pentaho aucune aucune aucunesoft, (Inté-

SpagoBI grale)

Page 82: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 81

Accessibilité TOS PDI Clover Jitterbit ApatarLangue logiciel Anglais Français Anglais Anglais AnglaisLangue doc Français Français Anglais Anglais AnglaisLangue site web Français Anglais Anglais Anglais AnglaisInterfacegraphique

OUI OUI Payante OUI OUI(Eclipse) (SWT) (Eclipse)

LicenceGPL LGPL mix LGPL propri- mix GPL

commerciale étaire commerciale

Coûts TOS PDI Clover Jitterbit ApatarOptions payantes OUI NON OUI NON NONSupport Technique professionnel OUI OUI OUI OUI OUIFormations professionnelles OUI OUI OUI OUI OUIServices professionnels OUI OUI NON OUI OUI

12.2.3 Fonctionnalités

12.2.3.1 Compatibilités

Plates-Formes TOS PDI Clover Jitterbit ApatarWindows OUI OUI OUI OUI OUILinux OUI OUI OUI OUI OUIMacOS OUI OUI OUI NON NON

Bases de Données TOS PDI Clover Jitterbit ApatarSupport JDBC OUI OUI OUI OUI OUISupport ODBC OUI OUI OUI OUI OUISupport JNDI NON OUI OUI NON NON

Page 83: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 82

Fichiers plats TOS PDI Clover Jitterbit ApatarOutil générateur de lignes OUI OUI OUI NON NONFichiers longueur �xe OUI OUI OUI OUI NONFichiers CSV OUI OUI OUI OUI OUIFichiers XML OUI OUI OUI OUI OUIFlux XML (SAX) OUI OUI OUI OUI NONArborescence XML (DOM) OUI OUI NON NON OUIValidation XML via XSD OUI OUI NON NON NONValidation XML via DTD OUI OUI NON NON NONTransformation XML via XSL OUI OUI NON NON NONFichiers Excel OUI OUI OUI NON OUIFichiers LDIF OUI OUI NON NON NON

Fichiers Shape�levia Spatial OUI NON NON NON

DataIntegrator

Fichiers xBase NON OUI NON NON NONFichiers properties NON OUI NON NON NONExpressions régulières OUI OUI NON NON OUIFichiers compressés OUI OUI OUI NON NON

12.2.3.2 Lecture/Écriture de données SGBD

Lecture/Écriture SGBD TOS PDI Clover Jitterbit ApatarLecture de table OUI OUI OUI OUI OUIPrévisualisationcomplète des tables

OUI OUI 100 enregi- OUI NONstrements

Lecture de vue OUI OUI OUI OUI NONPrévisualisationcomplète des vues

OUI OUI 100 enregi- OUIstrements

Lecture de procédure stockée OUI OUI OUI NON NONAjout clause WHERE OUI OUI OUI OUI OUIAjout clause ORDER BY OUI OUI OUI NON OUILecture d'une requête OUI NON NON NON NONCréation d'une requête OUI OUI OUI NON NONDesigner graphique de requêtes OUI NON NON NON NONType simples de données OUI OUI OUI OUI OUIType complexes dedonnées

données NON NON NON NONgéographiques

Gestion des messagesd'erreur des SGBD

OUI OUI OUI NON OUI

Normalisation OUI OUI OUI NON NONDénormalisation OUI OUI OUI NON NON

Page 84: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 83

12.2.3.3 Transformations

Transformations TOS PDI Clover Jitterbit ApatarNombre de fonctionsdisponibles

plus de plus de plus de plus de plus de70 en Java 60 60 110 50

Fonctions de

transformations de dates

OUI OUI OUI OUI OUI(7 fct°) (12 fct°) (4 fct°) (15 fct°) (11 fct°)

Fonctions Statistiquesde qualité de données

OUI NON NON NON NON

Jointures hétérogènes OUI OUI OUI NON OUIJointures internes OUI OUI OUI OUI OUIJointures externes OUI OUI OUI NON NONClés de substitution OUI OUI NON NON NONUtilisation de boucles OUI OUI NON NON NON

Requêtes imbriquéesOUI passer par passer par NON NON

le SQL le SQL

Possibilité de coderfacilement ses proprestransformations

OUI OUI(Java ou (Java- NON NON NONPerl) script)

12.2.3.4 Accès aux données

Accès aux données TOS PDI Clover Jitterbit Apatar

Connecteursapplicatifs

CentricCRM, SalesForce SAP, Siebel SAP, Compiere ERP

SugarCRM, VTigerCRM SAP aucun SugarCRM SalesForce, Siebel

Microsoft AX SalesForce SugarCRM, Amazon S3

Web Services OUI OUI payant OUI NONOLAP (Mondrian) OUI OUI NON NON NONLDAP OUI OUI OUI OUI NONFTP OUI OUI OUI OUI OUISFTP OUI OUI OUI OUI NONSSH2 NON OUI NON NON NONHTTP OUI OUI OUI OUI OUIHTTPS OUI OUI OUI OUI NON�ux RSS OUI NON NON NON OUI

Page 85: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 84

12.2.3.5 Administration

Administration TOS PDI Clover Jitterbit ApatarRéférentielcommun

OUI OUI (SGBD OUI OUI NON(payant) au choix) (payant) (PostgreSQL)

Sécurité duréférentiel

propriétaire sécurité du propriétaire sécurité deSGBD choisi PostgreSQL

Console d'admin payant OUI payant OUI NONSuivi des données

temps-réel

OUI NON NON NON NON

Validation destâches avantexécution

véri�e véri�e véri�e OUI NONseule- seule- seule-ment ment ment

Reprise surincident

NON �chier CSV NON OUI NONet Excel

Planni�cationdes traîtements

via un tiers via la suite payant OUI OUIou payant Pentaho

Authenti�cation OUI OUI payant OUI NONGénération de logs OUI OUI OUI NON NONGénération degraphiquesd'exécution

NON OUI NON NON NON

Génération de

traces spéci�ques

NON NON mais NON NON NONchoix du détail

Enregistrementdes traces

console, console, console console, console

�chier, �chier �chiertable table

12.2.3.6 Déclenchements des processus

Déclenchements des processus TOS PDI Clover Jitterbit ApatarJMS OUI NON OUI OUI NONSOAP OUI NON OUI OUI NONMOM OUI NON NON NON NONCorba NON NON NON NON NONPOP OUI OUI NON NON NON

Page 86: 08 Obs Francheteau

Tableaux comparatifs détaillés de cinq ETL 85

12.2.3.7 Fonctionnalités spéci�ques

Caractéristiques spéci�ques TOS PDI Clover Jitterbit ApatarDrag'n'drop de composants OUI OUI OUI NON OUIReprésentation graphique des �ux OUI OUI OUI NON OUIRéférentiel (metadonnées) OUI OUI OUI OUI NONDimensions àévolution lente

types types NON NON NON1,2,3 1,2

"Junk" Dimensions NON OUI NON NON NONVariables locales OUI OUI NON OUI NONVariables globales OUI OUI NON NON NONRécupération/Envoi de mails OUI OUI NON OUI NONGénération de documentation OUI NON NON NON NONGestion des contextes d'exécution OUI NON NON NON NONExécution des tâches sur unserveur distant

payant OUI payant OUI NON

Outils TOS PDI Clover Jitterbit ApatarOutils de debugging OUI OUI OUI NON NONOutils d'analyse d'impact NON OUI NON NON NONOutils de Versionning OUI NON OUI NON NONOutils de gestion des phases d'unprojet

OUI NON NON NON NON

Outils de travail collaboratif payant OUI payant OUI NON

Optimisation TOS PDI Clover Jitterbit ApatarGestion du parallélisme OUI OUI payant NON NONGestion du Load "Balancing" payant manuel NON NON NONMix ETL et ELT OUI NON NON NON NONModi�cation cache/bu�er/index OUI OUI NON NON NONExécution par grappes destâches sur un serveur distant

payant OUI NON NON NON