Formation « Apprendre le fonctionnement d’un ETL avec SSIS » : Conclusion

Après avoir suivi cette formation, voici mon point de vue, que j’ai séparé en 2 parties :

+ Ce que j’ai aimé :

  • Bien qu’il y ait une possibilité d’alimenter de façon graphique avec SSIS, dès le début l’accent est mis sur l’utilisation du SQL (y compris les objets SQL, fonctions, procédures, etc..) qui donne de bien meilleures performance et une meilleure réutilisabilité.
  • L’accent mis sur les tests des traitements.
    Une situation assez classique est qu’on nous remonte une erreur sur les traitements ETL. On passe des heures à chercher d’où vient le problème pour se rendre compte qu’il s’agit en fait d’une erreur dans les données.
  • La possibilité d’utiliser d’autre langages pour les traitements comme C# ou python dans les scripts SSIS
  • La réalisation des exercices pratiques sur les plateformes microsoft azure
  • Beaucoup de docs sur les sites microsofts spécifique, bien indexée et donc facile à trouver.

– Ce que je n’ai pas aimé :

  • on se connecte aux base de donnée en OLE DB, une connexion générique, ce qui promet des chargements massifs probablement assez lents. Pour les données .NET, c’est à dire microsoft, il y a le driver ADO.NET qui permet d’avoir un accès plus natif à ces données. On ne peut même pas trouver une connexion SqlNet pour Oracle.
    Ça me parait un peu faiblard pour utiliser dans des environnements vraiment hétérogènes.
  • impossibilité de limiter le nombre de colonne d’une source de donnée.. On peut limiter le nombre de colonnes qu’on ramène, mais par défaut l’outil va charger l’ensemble des colonnes. Quand on voit certaines bases d’éditeurs conçues avec des centaines de source.
  • différence dans les scripts SSIS dans le nommage des variables selon qu’on utilise une connexion ADO.NET ou OLE DB ???
    ? pour OLE DB et @variable pour ADO.NET..
  • Les variables dans le code SSIS ne peuvent pas être utilisées dans la création d’objet tels qu’une colonne, une table ou une vue… Ce qui pourtant peut s’avérer fort pratique. Je suppose qu’on peut détourner ça avec du SQL dynamique, mais c’est dommage qu’on ait pas la possibilité de le faire directement.
  • 4 méthodes différentes de déploiements.. mais pourquoi cela semble-t-il si compliqué ? Qu’en est-il du déploiement itératif avec possibilité de revenir à une version précédente en cas de problème ?
  • le test final du cours est un peu violent avec des questions sur des points de détail qui ont été survolés.

Ce que j’aurais aimé voir dans ce cours et les questions que je me pose à l’issue de ce cours :

  • La notion de référentiel ETL est très très vaguement évoquée ? Où sont stockées les scripts ? Il semblent stockés en fichier ou en base selon les méthodes de déploiement.

Conclusion

Il me semble que SSIS est vraiment particulièrement adapté si on évolue dans un milieu microsoft avec des sources de données .NET et des bases de données SQL Server.
L’utilisation durant cette formation ne m’a pas particulièrement convaincu de la souplesse du produit une fois que les projets deviennent beaucoup plus importants..

Microsoft azure a l’air très intéressant pour déployer des serveurs, des bases de données, machines virtuelles en mode « cloud », c’est à dire que tout est géré par Microsoft.

 

N’hésitez pas à laisser un commentaire si vous connaissez bien SSIS.

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *