Une complexité d’intégration souvent méconnue
Notre expérience dans ce domaine montre que la principale difficulté rencontrée par les DSI et les équipes projets porte sur l’intégration entre les différents solutions Big Data. Dans les faits, une solution globale est construite autour d’une demi-douzaine de ces solutions, chacune avec ses spécificités et ses contraintes. Outre le fait que leur mise en œuvre demande un grand panel de compétences, leur intégration en un tout cohérent, aligné avec les besoins du projet, demande des développements complexes. Trop souvent, les efforts ne sont plus tournés vers les objectifs métiers mais plus sur des problématiques d’infrastructure (interdépendance des programmes, cohérence des données, performance, disponibilité). Par exemple, pour pouvoir manipuler une donnée avec des finalités différentes (à la volé en temps réel, en interaction avec un système opérationnelle ou sous forme archivée pour analyse), il est nécessaire de dupliquer cette donnée entre les outils, avec tous les problèmes potentiels que cela engendre en phase de développement (développements redondants avec des interfaces différentes, maintenance complexe…) et en phase d’exploitation (incohérence des données, pannes en cascade).
Notre réponse : une approche unifiée
Notre volonté est d’apporter une solution simple et unifiée à la mise en place d’une chaîne Big Data globale et cohérente. Pour cela, notre réponse est de regrouper en un seul outil les fonctions de collecte, de stockage, de traitement en temps réel et d’analyse sur le long terme. Nous nous appuyons pour cela sur les techniques les plus en pointes pour allier en un seul cadre les différents aspects du stockage et du traitement des données. Cette architecture permet à la logique des programmes de ne pas être remise en cause, ni par une réorganisation du stockage, ni par un ordonnancement différent des calculs. On peut alors optimiser la chaîne Big Data d’une manière globale et répondre à des contraintes de performance et de volume, sans être contraint d’intégrer des solutions indépendantes, certes performantes mais spécifiques et partielles. Cette solution unifiée apporte une simplification des développements et une meilleur maîtrise de la cohérence des données et des programmes ; tout en éliminant les pertes de performance et de robustesse inhérentes à l’intégration de solutions disparates.