# Introduction : le défi de l’intégration NoSQL moderne
Atol CD s’appuie massivement sur des technologies Data Open Source éprouvées, parmi lesquelles l’ETL Apache Hop occupe une place de choix.
Cependant, l’évolution rapide des architectures modernes, et notamment l’adoption croissante de MongoDB pour la gestion des données non structurées, confronte parfois les équipes à des limites d’intégration.
En effet, l’écosystème Apache Hop propose nativement des briques pour lire et écrire des documents dans MongoDB (MongoDB Input et MongoDB output). Or dès qu’un projet nécessite des opérations d’administration, les développeurs se retrouvent vite limités.
Impossible, par exemple, de créer ou supprimer dynamiquement une collection au milieu d’un workflow ou de lancer une commande de maintenance sans devoir sortir de l’ETL. Pour contourner cela, l’usage de scripts externes (Python, Bash, ou appels CLI) était souvent requis, complexifiant ainsi l’architecture.
C’est donc pour combler un manque fonctionnel que nos équipes ont développé en interne un nouveau plugin nommé MongoDB QL (Query Language)
# Le plugin MongoDB QL
Le plugin MongoDB QL vient enrichir la palette d’outils d’Apache Hop en exploitant une fonctionnalité du driver MongoDB : la méthode runCommand qui constitue le point d’entrée pour les requêtes d’administration dans MongoDB. Sa seule contrainte est d’imposer des instructions strictes au format JSON.
Notre plugin encapsule cette méthode dans l’interface visuelle de Hop et offre deux modes d’alimentation :
- La zone de texte dédiée : Vous pouvez saisir votre code JSON directement au sein de l’interface graphique du composant. C’est idéal pour les commandes statiques ou dynamisées grâce au système de variables d’Apache Hop.

- Le fichier externe : Le plugin peut aller lire un fichier JSON externe. Une option indispensable pour industrialiser des scripts volumineux, versionnés et partagés entre plusieurs environnements.

Grâce à cette approche, le plugin permet d’exécuter n’importe quelle commande d’administration (création/suppression de collections, gestion des index) tout en restant dans l’interface d’Apache Hop.
# Cas d’usages
Le plugin MongoDB QL répond à des besoins métiers concrets, tel que l’optimisation à la volée des performances. En effet, la présence d’index peut ralentir un flux d’importation massif de données. Avec le plugin, il est possible de lancer une commande de suppression des index en masse via la commande dropIndexes, puis de les recréer à la fin du traitement à l’aide de la commande createIndexes.
Dans un autre registre, une gestion de la sécurité peut aussi être réalisée via les commandes createUser ou grantRolesToUser, pour créer des utilisateurs ou attribuer des droits spécifiques à un utilisateurs avant un traitement.
Le déplacement de ce genre de commandes administratives MongoDB dans un traitement Apache Hop permet de grandement faciliter la maintenance des traitements.
# L’expertise Atol CD sur Apache HOP
Pour rappel, Apache HOP est un fork de Pentaho Data Integration (Hitachi), qui descend lui-même de l’ETL Kettle créé en 2003 par Matt Casters. Atol CD met en œuvre cet ETL open source depuis plus de 20 ans chez ses clients, avec un nombre conséquent de projets représentant plusieurs milliers de Jours/Hommes.
Pendant de nombreuses années, Atol CD était l’un des intégrateurs reconnus en France sur la stack Pentaho Community, avec l’organisation phare : le “Pentaho Day”, qui avait pour objectif principal de présenter des retours d’expérience détaillés, notamment sur Pentaho Data Integration (PDI).
Au moment du fork PDI vers HOP (2021), Atol CD a continué son soutien à la communauté, en effectuant le portage de ses plugins GIS de PDI à Apache HOP
Nous sommes un des contributeurs majeurs de Apache HOP et sommes à ce jour le 1er intégrateur partenaire en France.
Travailler avec l’équipe Data Atol CD, c’est la garantie de bénéficier de retours d’’expérience réels sur des projets avec la technologie ETL Apache Hop, aussi bien en termes de diversité fonctionnelle que technique..
Quelques références projets avec Apache HOP :
- CHU de Dijon – Projet EREBIA
- Ministère de la Transition Écologique – DHUP – Projet Plat’AU
- Ministère des Finances – Prométhée
- CIVIPOL – Plateforme suivi financier
- Chambres d’Agriculture France – Echange de données et décisionnel
- Beauvallet – Plateforme de valorisation des données achats, ventes, finances, logistique et production
- Département du Morbihan, du Cher, du Maine et Loir
Laisser un commentaire