On assimile souvent le Big Data et le traitement en temps réel des données. Mais le Big Data permet avant tout un très large throughput: traiter un maximum de données en un temps record. Les délais sont loin de la seconde ou de la minute, cette notion de rapidité est donc relative. Pour ajouter à la confusion, contrairement au Data warehouse, une fois les résultats stockés dans une base NoSql, on peut la parcourir dans des temps inférieurs à la seconde.
Hadoop permet, avec MapReduce, d’analyser de grands volumes de données de façon scalable. En gros, de traiter 10 fois plus de données dans le même temps avec 10 fois plus de machines. Ceci dit, il reste un temps incompressible de distribution de tâches: installation et démarrage des VM, attente de la tâche la plus longue. De plus, avec 10 fois plus de machines, il y a dix fois plus de RAM à disposition, donc souvent moins d’écriture sur disque, ce qui se traduit par un gain en rapidité. Il n’est donc pas rare de traiter 10 fois plus de données sans avoir besoin de 10 fois plus de machines.
Certaines améliorations d’Hadoop visent à privilégier la durée d’exécution d’un MapReduce sur le throughput (Scheduler) ou de diminuer les temps incompressibles (distribution MapR), mais cela ne répond pas à la problématique quasi temps réel exprimée par nos clients.
Suite à cette réflexion, l’équipe d’Ezako a décidé de mettre en place un produit d’analyse de données répondant à ce besoin. En conservant uniquement les composants de traitement quasi temps réel et la scalabilité de la solution, notre produit « EZ real time » permet de visualiser des résultats et émettre des alertes dans un délai extrêmement court. La collecte des données source devient le seul goulot d’étranglement.