ETL : Acheter ou développer ? Guide comparatif

0
49


La réponse à la question « Acheter ou développer » est « Ça dépend ». Effectivement tout dépend de plusieurs facteurs incluant la nature et l’envergure du projet ETL ! Il est rare qu’une compagnie se lance dans l’aventure de mise en place d’un entrepôt de données si le besoin ne se fait pas sentir par les gestionnaires. De ce fait même si l’entreprise dispose de ressources compétentes pour développer les processus ETL, il est toujours avantageux de se procurer un outil et de former ces mêmes ressources dans le sens de leurs inculquer les notions qui sont propres à un entrepôt de données telles que les faits, les dimensions, l’évolution lente ( Slowly Changing Dimension), les faits qui arrivent en retard ( Late arriving fact)… et aussi de profiter des derniers progrès qu’ont connu les outils ETL.

Cependant dans un but de neutralité nous proposons ici les pour et les contre de chaque choix.

Avantages des suites ETL :
 Développement simple, rapide et moins coûteux. Les coûts de l’outil seront amortis rapidement pour les projets sophistiqués ou de grandes envergures.
 Des ressources disposant de connaissances du domaine d’affaire et n’ayant pas de grandes compétences en programmation peuvent développer avec l’outil.
 La plupart des outils ETL intègrent des référentiels de gestion du métadata, tout en permettant de synchroniser le métadata avec les systèmes sources, les bases de données de l’entrepôt et autres outils BI.
 La plupart des outils ETL permettent la génération automatique du métadata à chaque étape du processus ETL et renforce la mise en place d’une méthodologie commune de gestion de métadata qui doit être respectée par tous les développeurs.
 La plupart des outils ETL dispose de programme intégré qui permet de faciliter la documentation, la création et la gestion de changement. L’outil ETL doit bien gérer les dépendances complexes et les erreurs qui peuvent surgir en cours d’exécution.
 Le référentiel de métadata de la plupart des outils ETL peut produire automatiquement des rapports de mise en correspondance des données (data lineage, looking backward) et d’analyse de dépendance de données (looking forward).
 Les outils ETL disposent de connecteurs intégrés pour la plupart des sources de données. Ils permettent aussi d’effectuer des conversions complexes de types de données (selon la source et la destination)
 Les outils ETL offrent des mécanismes de cryptage de compression en ligne de données.
 La plupart des outils ETL offre une très bonne performance même pour une grande quantité de données. Considérer donc d’acheter un outil ETL le volume de données est grand ou encore s’il va le devenir !
 Un outil ETL peut, le cas échéant, gérer des scénarios d’équilibrage de la charge entre les serveurs.
 La plupart des outils ETL permettent d’effectuer des analyses d’impact automatique suite à un changement.
 Un outil ETL peut être complété ou amélioré en utilisant le scripting ou la programmation.

Avantages des ETL-Maison :
Les outils de tests unitaires automatique sont disponibles seulement pour les outils développé maison. Par exemple Junit .
 Les techniques de programmation orientée objet permettent de rendre consistantes la gestion des erreurs, la validation et la mise à jour du métadata.
 Il est possible de gérer manuellement le métadata dans le code et de créer des interfaces pour la gestion de ce dernier.
 Disponibilité des programmeurs dans l’entreprise.
 Un outil ETL est limité aux capacités du fournisseur.
 Un outil ETL est limité à l’outil de scripting propriétaire.
 Un outil développé maison donne une grande flexibilité si le besoin se présente. Il est possible de faire tout.

Notre expérience dans le domaine nous a démontré que même pour les projets de petite envergure, il est conseillé de développer votre système ETL en utilisant une suite ETL. Nous résumons ici les avantages d’une telle solution :

 Définir une fois, appliquer plusieurs fois (partage et réutilisation)
 L’analyse d’impact
 Le référentiel de métadata.
 L’agrégation incrémentale
 La gestion des traitements par lot.
 Connectivité simplifiée
 Traitements parallèles et équilibrage de la charge
 L’expérience et le support du fournisseur.

Pour les sociétés à petits budgets, il existe des ETL open source qui proposent des fonctionnalités trés avancés dans le domaine à savoir : Talend Open Studio, Pentaho Data Integrator…