Qu'est-ce que Apache Kafka
Plateforme de streaming d'événements
Apache Kafka est une plateforme distribuée de streaming d'événements conçue pour gérer de grands volumes de données en temps réel.
Concepts clés
- Topic — catégorie pour organiser les messages
- Partition — division du topic pour le parallélisme
- Producer — émetteur de messages
- Consumer — récepteur de messages
- Broker — serveur Kafka
- Consumer Group — groupe de consommateurs pour l'équilibrage de charge
Avantages de Kafka
- Haut débit (millions de messages/sec)
- Mise à l'échelle horizontale
- Stockage à long terme des messages
- Garanties de livraison (at-least-once, exactly-once)
- Tolérance aux pannes par réplication
Applications
- Architecture Event-Driven — communication microservices
- Logging — collecte centralisée des logs
- Streaming de données — analytique temps réel
- Pipelines ETL — intégration de données
- IoT — traitement des données des appareils
Écosystème
- Kafka Connect — connecteurs de bases de données
- Kafka Streams — traitement de flux en Java
- ksqlDB — SQL pour les flux de données
- Schema Registry — gestion des schémas Avro/JSON