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.
Histoire Apache Kafka a été initialement développé par LinkedIn et son code a été ouvert début 2011. Le projet intègre l'incubateur Apache Incubator le . En , plusieurs ingénieurs créateurs de Kafka chez LinkedIn créent une nouvelle société nommée ConfluentPrimack, Dan. avec pour axe le logiciel Kafka.
Les entreprises qui utilisent Kafka Voici une liste d'entreprises notables qui ont utilisé ou utilisent Kafka :
Orange DaumkakaoDoyung Yoon. Everteam LinkedIn NetflixCheolsoo Park and Ashwin Shankar. SpotifyJosh Baer. Tuenti Uber. Mailgun Salesforce.com Shopify. Betfair. Meetic. Bell Canada OVHcloud. Covage. Leboncoinhttps://medium.com/leboncoin-engineering-blog/cooling-down-hot-data-from-kafka-to-athena-5918a628bd98 Criteo. Michelin.
Applications 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.. 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 vignette|droite Kafka comprend cinq API 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 récupèrent 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 Kafka Streams est une bibliothèque client pour la construction d'applications et de microservices, où les données d'entrée et de sortie sont stockées dans des clusters Kafka.
Kafka Connect
Notes et références
Articles connexes Architecture orientée services Data Distribution Service Message-oriented middleware Apache Pulsar Apache Samza Apache Flink
Liens externes
Catégorie:Apache Software Foundation Catégorie:Logiciel libre sous licence Apache Catégorie:Plateforme Java Catégorie:Écosystème Hadoop