Apache kafka

Définition - Que signifie Apache Kafka?

Apache Kafka est un système de messagerie open source de publication-abonnement conçu pour fournir une gestion rapide, évolutive et tolérante aux pannes des flux de données en temps réel. Contrairement aux logiciels de messagerie d'entreprise traditionnels, Kafka est capable de gérer toutes les données transitant par une entreprise et de le faire en temps quasi réel.

Kafka est écrit en Scala et a été développé à l'origine par LinkedIn. Depuis, un certain nombre d'entreprises l'ont utilisé pour créer des plates-formes en temps réel.

Definir Tech explique Apache Kafka

Kafka présente de nombreuses similitudes avec les journaux de transactions et gère des flux de messages dans les rubriques. Les producteurs écrivent des données dans des rubriques et les consommateurs lisent à partir de ces rubriques, qui sont partitionnées et répliquées sur plusieurs nœuds dans un format de système distribué. Kafka est unique en ce sens qu'il traite chaque partition de rubrique comme un journal et que chaque message d'une partition se voit attribuer un décalage unique. Il conserve tous les messages pendant un certain temps et les consommateurs sont responsables du suivi de leur emplacement dans chaque journal. Cela diffère des systèmes précédents, où les courtiers étaient responsables de ce suivi, ce qui limitait considérablement la capacité du système à évoluer à mesure que le nombre de consommateurs augmentait. Cette structure permet à Kafka de prendre en charge de nombreux consommateurs et de conserver de grandes quantités de données avec une très faible surcharge.

Kafka peut être utilisé:

  • En tant que courtier de messages traditionnel
  • Pour le suivi de l'activité du site Web
  • Pour l'agrégation de journaux
  • Pour le traitement du Big Data Stream

Kafka peut être utilisé avec Apache Storm, Apache HBase et Apache Spark pour l'analyse en temps réel et le rendu des données en streaming.