IREX - A la découverte de Kafka, un outil clé en Big Data

Depuis peu le monde des TIC a vu émerger les données massives (Big data) avec leurs opportunités mais aussi leurs enjeux en termes de traitement et de stockage.

 · 3 min read


Aujourd'hui, une quantité considérable de données circulent autour de nous et ces données ont besoins d’être consultées en temps réel. Heureusement, il existe de nombreux outils et projets qui traitent des problèmes de flux et d'échange de données. Parmi ceux-ci, Apache Kafka est l’outil open source le plus populaire et largement utilisé par les entreprises, grandes et petites.


Qu’est-ce que Kafka ?


Apache Kafka est un système de messagerie de publication/abonnement, une plateforme distribuée open source de streaming d'événements. Au lieu de se concentrer sur le maintien des données comme les bases de données, Kafka se présente comme un système qui permet aux données d'être un flux d'informations en constante évolution. Il a donc été conçu pour traiter les données comme des flux continus d'informations qui sont constamment produites, améliorées, manipulées et consommées.


A ce jour, kafka est utilisé par des milliers d'entreprises pour les pipelines de données hautes performances, l'analyse de streaming, l'intégration de données…


Les avantages qu’offre Kafka


Il existe de nombreux choix pour les systèmes de messagerie de publication/abonnement, alors qu'est-ce qui fait d'Apache Kafka une bonne option ?

  • Plusieurs producteurs

  • Kafka est capable de gérer de manière transparente plusieurs producteurs, qu’ils utilisent plusieurs sujets ou le même sujet. Cela rend le système idéal pour associer les données de nombreux systèmes front-end et les rendre cohérentes.


  • Consommateurs multiples

  • En plus de plusieurs producteurs, Kafka est conçu pour que plusieurs consommateurs puissent lire n'importe quel flux de messages sans interférer les uns avec les autres. Ces derniers peuvent choisir de fonctionner dans le cadre d'un groupe et de partager un flux, garantissant que l'ensemble du groupe ne traite un message donné qu'une seule fois.


  • Rétention basée sur disque

  • Les messages provenant des producteurs, sont validés sur le disque et sont stockés avec des règles de rétention configurables. Cette rétention implique que les consommateurs n'ont pas toujours besoin de travailler en temps réel. Si un consommateur prend du retard, en raison d'un traitement lent ou d'une augmentation du trafic, il n'y a aucun risque de perdre des données. Aussi, les consommateurs peuvent être arrêtés et les messages seront conservés dans Kafka. Cela leur permet de redémarrer et de reprendre le traitement des messages là où ils se sont arrêtés sans perte de données.


  • Évolutif

  • Il est possible de commencer avec un seul courtier comme preuve de concept, puis s'étendre à un petit cluster de développement de trois courtiers et passer à la production avec un cluster qui grandit au fur et à mesure que les données évoluent. Les extensions peuvent être effectuées pendant que le cluster est en ligne, sans impact sur la disponibilité du système dans son ensemble.


  • Haute performance

  • Les fonctionnalités précédentes réunies font d'Apache Kafka un système de messagerie de publication/abonnement avec d'excellentes performances sous une charge élevée. Les producteurs, les consommateurs et les courtiers peuvent tous être mis à l'échelle pour gérer facilement des flux de messages très volumineux. Cela peut être fait tout en offrant une latence de message inférieure à la seconde entre la production d'un message et sa disponibilité pour les consommateurs.



Maintenant, vous avez une idée de ce qu'est Kafka et de ses avantages. Et vous serrez d'accord avec moi pour conclure que Kafka a tout son sens en Big Data. Dans les prochains articles, nous parlerons plus en détails de Kafka a savoir son architecture, son fonctionnement et ses utilisations possibles.



No comments yet

No comments yet. Start a new discussion.

Add Comment