La technologie ETL pour Extract Transform Load est utilisée pour réaliser des synchronisations massives d’une base de données vers une autre. Ces bases de données peuvent être de types extrêmement variés, fichiers plats, MySql, SQL, Oracle, Access, AS400….
Pour simplifier au maximum, on a des sources de données en entrée chargées via des connecteurs et des bases de données en sortie, et entre les deux, des composants de mapping et de transformation qui permettent de traiter ces données.

Cela fait très longtemps que j’utilise Talend Open Studio For Data Integration pour réaliser des scripts d’import/export Magento lorsque cela est possible.

Bien sûr, on peut faire ces traitements en PHP dans Magento via un module ou des scripts indépendants de Magento qui pourraient attaquer directement la base de données. Mais vue la simplicité (relative toute de même) du logiciel, et toutes les possibilités qu’il peut offrir, il serait dommage de ne pas y jeter un œil.

Le choix doit être guidé par un besoin précis et cela s’est présenté pour un client encore récemment, pour exporter depuis Magento des inscrits à la newsletter vers Dolist. Dolist offre un connecteur Magento sous forme d’un module qui de prime abord correspond au besoin si ce n’est que notre base clients est assez importantes (plusieurs centaines de milliers de clients), plus de 100 000 inscrits à la newsletter et je vous laisse imaginer le nombre de commandes.

Un export simple des inscrits ne poserait pas de problème, par contre là où ça coince un peu, c’est quand il faut récupérer des données dans les tables EAV des attributs clients, des adresses, et des commandes. L’objectif étant de récupérer en plus de l’email, les données suivantes:
- Nom / Prénom / Civilité / Date d’inscription / Date d’anniversaire
- Code postal / Pays
- Date de dernière commande / Montant total commandé / Nombre de commande / Panier moyen

Une fois réalisé, le script s’exécute, génère le fichier et l’upload sur le FTP du prestataire d’emailling en 20s au lieu de plusieurs heures avec le module officiel. Je ne vais pas décrire ici la réalisation de ce batch mais promis je ferais un tutoriel d’introduction à Talend qui nous permettra de réaliser un script de mise à jour du stock dans Magento.

N’hésitez pas à me contacter pour plus d’informations.