Apache Kafka

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche
Page d'aide sur l'homonymie Pour les articles homonymes, voir Kafka (homonymie).
Apache Kafka
Description de l'image Apache kafka.svg.

Informations
Développé par Apache Software Foundation et LinkedInVoir et modifier les données sur Wikidata
Dernière version 2.3.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/apache/kafkaVoir et modifier les données sur Wikidata
Écrit en Scala et JavaVoir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Type Message-oriented middlewareVoir et modifier les données sur Wikidata
Licence Licence Apache version 2.0Voir et modifier les données sur Wikidata
Site web kafka.apache.orgVoir et modifier les données sur Wikidata

Apache Kafka est un projet à code source ouvert d'agent de messages développé par l'Apache Software Foundation et écrit en Scala. Le projet vise à fournir un système unifié, en temps réel à latence faible pour la manipulation de flux de données. Sa conception est fortement influencée par les journaux de transactions[2].

Histoire[modifier | modifier le code]

Apache Kafka a été initialement développé par LinkedIn et son code a été ouvert début 2011[3]. Le projet intègre l'incubateur Apache Incubator le 23 octobre 2012. En novembre 2014, plusieurs ingénieurs créateurs de Kafka chez LinkedIn créent une nouvelle société nommée Confluent[4] avec pour axe le logiciel Kafka.

Les entreprises qui utilisent Kafka[modifier | modifier le code]

Voici une liste d'entreprises remarquables qui ont utilisé ou utilisent Kafka :


Applications[modifier | modifier le code]

Kafka est utilisé principalement pour la mise en place de « data pipeline » temps réel mais ce n'est pas sa seule application possible dans le monde de l'entreprise. Il est aussi de plus en plus utilisé dans les architectures micro services comme système d’échange, dans la supervision temps réel et dans l’IOT[12]. Kafka apporte sa capacité à ingérer et diffuser une grande quantité de données, couplé à un framework de data stream processing, il permet le traitement complexe et en temps réel des données.

Architecture[modifier | modifier le code]

Overview of Apache Kafka.svg

Kafka comprend cinq APIs de base :

  • Producer API permet aux applications d'envoyer des flux de données aux topics du cluster Kafka.
  • Consumer API permet aux applications de lire des flux de données à partir des topics du cluster Kafka.
  • Streams API permet de transformer des flux de données en topic de sortie.
  • Connect API permet d'implémenter des connecteurs qui recuperer les données d'un système source ou d'une application vers Kafka ou qui poussent de Kafka vers une application.
  • AdminClient API permet de gérer et d'inspecter les topics, les brokers, et les autres objets Kafka .

Kafka Streams[modifier | modifier le code]

Kafka Connect[modifier | modifier le code]

Notes et références[modifier | modifier le code]

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Apache Kafka » (voir la liste des auteurs).

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]