Une grande banque canadienne a modernisé son environnement de traitement par lots alors qu’elle retire progressivement ses anciennes versions d’Informatica et son infrastructure existante, tout en répondant à l’augmentation des volumes. En collaboration avec CGI, la banque a migré ses charges de travail d’Informatica vers Azure Databricks. Ensemble, nous avons élaboré un cadre normalisé de migration afin d’assurer une approche uniforme et reproductible pour plusieurs applications.
Le portefeuille de la banque comprend plusieurs applications de niveau 1 et 2 ainsi qu’environ 15 000 à 20 000 flux de travail à migrer.
La modernisation a permis d’améliorer la productivité globale de 25 à 30 %, d’accroître l’évolutivité grâce à l’adaptation automatique des ressources de calcul, de réduire la surveillance manuelle des tâches par lots et d’accélérer la mise en œuvre des correctifs et le déploiement des nouvelles versions grâce à l’automatisation DevOps. Après une démonstration de faisabilité concluante portant sur cinq applications, la banque a élargi les travaux et confié à CGI la migration de 20 autres applications.
- Aperçu
-
Les banques doivent veiller à ce que leur traitement par lots puisse évoluer de manière fiable et demeurer facile à prendre en charge dans un contexte où les volumes de données augmentent et où les infrastructures et les outils traditionnels arrivent en fin de vie. Dans le cadre de la modernisation de ses systèmes menée en collaboration avec Microsoft, une grande banque souhaitait moderniser ses charges de travail ETC (extraction, transformation et chargement) par lots en les migrant d’Informatica vers Azure Databricks. Son approche de codage reposait sur Python/PySpark et la pile technologique DB Lakeflow. L’objectif était de migrer les charges de travail plutôt que les données, tout en augmentant la capacité des applications de traitement par lots afin de répondre à l’augmentation des volumes. À titre de partenaire, CGI a accompagné la banque dans ses démarches.
- Objectif et besoins d’affaires
-
La banque devait moderniser les charges de travail ETC par lots exécutées dans l’infrastructure Informatica en adoptant une pile technologique moderne reposant sur Azure et Databricks. Son portefeuille comprenait plusieurs applications de niveau 1 et 2 en plus de 15 000 à 20 000 flux de travail à migrer d’Informatica vers Databricks.
Une intégration au sein de l’écosystème de traitement par lots était nécessaire, notamment pour l’ordonnancement des tâches, la gestion des dépendances entre les tâches en amont et en aval ainsi que l’intégration à plusieurs sources de données. Ces efforts permettront d’accroître la capacité des applications de traitement par lots afin de répondre à l’augmentation des volumes de données de la banque.
- Principaux défis à l’origine du projet
-
La banque a entrepris cette modernisation, car ses anciennes versions d’Informatica (notamment les versions 9 et 10) étaient en voie de retrait et en fin de soutien. Son environnement technologique reposait sur une ancienne infrastructure comprenant de vieilles piles de serveurs et versions d’Oracle que la banque voulait retirer progressivement.
De plus, la banque souhaitait réduire sa dépendance aux piles technologiques locales en migrant ses charges de travail vers un environnement infonuagique Databricks.
- Approche collaborative
-
Nous avons mis à la disposition des fonctions d’affaires de la banque une équipe de prestation qualifiée pour les accompagner dans la migration des charges de travail. Les ressources affectées ont tiré parti de leur expertise en services-conseils et en mise en œuvre.
Avec la banque, nous avons élaboré un cadre et un répertoire de fonctions Python/PySpark afin d’uniformiser la migration. Le cadre fournit une plateforme de développement et de migration des flux de travail qui facilite une approche reproductible avec plusieurs applications. Il intègre des processus normalisés d’ingestion, de transformation et de chargement des données dans les systèmes cibles ainsi que des fonctions de surveillance, de suivi des exceptions et de sécurité intégrée, le tout reposant sur une configuration JSON.
Nous avons développé un accélérateur basé sur l’IA en utilisant de grands modèles de langage, OpenAI ainsi que le cadre et le répertoire développés avec la banque pour accélérer la migration.
- Avantages et résultats
-
Le projet a permis d’établir des modèles normalisés qui favorisent une structure de code uniforme, accélèrent la génération du code de base et le débogage et facilitent la maintenance à long terme. Il a également amélioré l’évolutivité en permettant aux ressources de calcul de s’adapter automatiquement à un volume élevé de charges de travail et en réduisant les interventions manuelles.
L’automatisation DevOps a réduit le temps nécessaire pour déployer les modifications, les retester et les faire passer d’un environnement à l’autre; les déploiements sont automatisés dès l’enregistrement des modifications du code dans le référentiel. L’approche reposant sur le code et les Databricks Notebooks a amélioré la documentation et la lisibilité par rapport à l’utilisation des outils de conception d’Informatica. Elle permet de mieux tirer parti des compétences disponibles sur le marché alors que l’expertise avec Informatica devient de plus en plus rare.
Dans l’ensemble, la productivité a été améliorée de 25 à 30 %. Les travaux ont réduit la surveillance manuelle nécessaire à l’exécution des tâches, diminué le nombre de problèmes persistants en production et le temps de débogage des anciens flux de travail, et accéléré la mise en œuvre des correctifs et le déploiement des nouvelles versions grâce au pipeline DevOps. Le recours au code et aux Databricks Notebooks a permis de mieux comprendre le fonctionnement des traitements.
Après une démonstration de faisabilité concluante pour la migration de cinq applications, la banque a élargi la portée des travaux en confiant à CGI la migration de 20 autres applications. Ensemble, nous avons élaboré et mis en œuvre un cadre normalisé assurant l’uniformité de l’ensemble des migrations. La banque a également encouragé ses autres fournisseurs à adopter ce cadre et à éviter l’utilisation de nouveaux outils.
La migration ne se résume pas à une conversion du code. Sans un cadre commun, il est difficile d’appliquer systématiquement des modèles normalisés, d’autant plus que de nombreux éléments connexes doivent être pris en compte dans l’exécution des charges de travail de bout en bout. Grâce au cadre et aux outils de génération de code, il est possible de réduire le temps de conversion et de se concentrer davantage sur l’analyse approfondie et l’optimisation.
L’approche et les accélérateurs peuvent être réutilisés par d’autres organisations qui veulent moderniser leur environnement par une migration d’Informatica vers Databricks.
- Technologies utilisées
-
Les technologies utilisées comprennent Databricks, Python et PySpark ainsi que Lakebridge Analyzer (outil d’analyse de migration de Databricks). Les services Azure comprennent Key Vault, Microsoft Entra ID (anciennement Azure AD), Azure Data Flow, Azure Data Lake Storage, Application Insights et Azure Virtual Machines, auxquels s’ajoute l’intégration à une infrastructure de journalisation Elastic/ELK.
