Je suis nouveau sur Kafka et j'essaie de comprendre les partitions. Les explications générales en ligne n'ont pas aidé donc je veux construire un exemple simple pour comprendre.
Disons que nous avons:
Dans ce cas, le diagramme ci-dessous à quoi ressembleront les données? Ici, les données sont entrées dans les partitions round robin, les deux partitions prennent une partie des données des deux sujets. Si cela est exact, comment les consommateurs obtiennent-ils chaque valeur suivante? Ils auraient besoin de passer d'une partition à l'autre, mais ils pourraient trouver des données d'un autre sujet.
(le diagramme ci-dessous est inexact!)
MISE À JOUR: D'après les commentaires, je pense que c'est plus précis:
3 Réponses :
Les sujets sont divisés en partitions, où chaque partition n'aura des données que pour un sujet unique .
Extrait de "Kafka: The Definitive Guide":
Les sujets sont également divisés en un certain nombre de partitions
Votre diagramme devrait donc montrer deux sujets avec une partition chacun.
Évidemment, les données de plusieurs sujets finissent par être mélangées sur le disque (bonne explication ici ).
Le numéro de partition doit commencer à 0 dans chaque rubrique
"De toute évidence, les données de plusieurs sujets finissent par être mélangées sur disque" Je suppose que ce n'est pas vrai. La partition fait partie du sujet. Sur le disque, vous pouvez voir le sujet de la hiérarchie / partition / [segments dans les fichiers .log et .index]. Ainsi, les partitions de différents sujets ne sont pas mélangées.
Les révisions précédentes de @ADS de la question montraient des messages de différents sujets alloués dans la même partition. Je signalais le grain de vérité, que ce mélange se produit en termes de segments en cours d'écriture (les segments sont mélangés sur disque).
Veuillez consulter cette explication détaillée. de très bons diagrammes qui montrent toute l'architecture, du gardien de zoo à la structure du courtier.
Pour le compactage des journaux et d'autres éléments de conception de bas niveau, veuillez consulter ces a >.
les partitions sont par sujet - vous semblez les avoir mélangées?