Kafka - Topics
Alasta 16 Janvier 2025 kafka kafka opensource
Description : Description des topics dans Kafka.
Kafka Topics
- Les topics sont une particularité du streaming de données.
- Il faut voir cela comme un base de données mais sans schéma/contraintes.
- On peut avoir autant de topics que l’on souhaite dans le cluster.
- Un topic est identifié par son nom.
- Tout type de format de message
- La séquence des messages est appelées un data stream
- On ne peut pas faire de requêtes sur un topic, on utilise un Kafka Producer pour envoyer des données et un Kafka Consumer pour lire les données.
Partitions & Offsets
Les topics sont découpés en partitions (exemple 50 partitions):
- Les messages dans chaque partition sont ordonnés
- Chaque message dans une partition possède un ID incrémental, appelé offset
Les topics Kafka sont immutables, les données écrites dans une partition ne peuvent pas être modifiées.
Les données stockées dans un topic sont gardées pour une durée limité, par défaut 1 semaine.
Un offset est dédié à une partition spécifique:
- L’offset 7 de la partition 1 ne représente pas l’offset 7 de la partition 0
- Les offsets ne peuvent pas être réutilisés sauf si le message précédent est supprimé
L’ordre est garantie seulement à l’intérieure d’une partition (pas de cross partition).
Une donnée d’un client est assignée aléatoirement à une partition, sauf si une key est fournie.