Comment moderniser son système d’information grâce à KAFKA?
Kafka est le composant majeur d’une plateforme de streaming distribuée d’événements métier.
Kafka permet le traitement complexe de flux de données en temps réel. Il est de plus en plus souvent utilisé :
- Pour la mise en place de pipelines de données en temps réel et avec de gros volumes à gérer, afin de faire communiquer les silos métier du système d’information
- Dans les architectures microservices comme système d’échange remplaçant les batchs de synchronisation
- Dans la supervision en temps réel de systèmes à base de capteurs et d’effecteurs (supervision de réseaux, supervision de parc de robots, supervision d’usines, etc)
- Dans l’IOT (internet des objets) : « smart cities », etc.
Apache Kafka est un projet open source développé par la fondation Apache Software. Le projet a été initialement développé par LinkedIn avant que son code soit ouvert en 2011. En 2014 les principaux créateurs de Kafka fondent la société Confluent qui propose une plateforme de streaming d’entreprise basée sur Apache Kafka.
Kafka fournit cinq API de base :
- Producer : permet de produire des flux de données dans des topics
- Consumer : permet de consommer des flux de données à partir des topics
- Streams : permet de transforme (« Transform ») des flux de données
- Connect : permet de s’interfacer à des systèmes externes pour extraire (« Extract ») les données d’un système source vers kafka ou pour charge (« Load ») un système cible à partir de kafka
- AdminClient : permet de gérer les composant de kafka (topics, brokers, clusters, connecteurs, schémas)
Kafka permet aussi de développer très rapidement des microservices de filtrage, triage et traitement à la volée des flux grâce à l’outil KSQLDB.
EMOXA offre des services de conseil pour définir les flux Kafka, d’optimisation des performances, d’aide à la supervision d’une infrastructure KAFKA et de formation.