Une des premières choses auxquelles je pense lorsque j'utilise un nouveau service (comme une banque de données non SGBDR ou une file d'attente de messages) est: "Comment dois-je structurer mes données?".
J'ai lu et regardé quelques documents d'introduction. En particulier, prenez, par exemple, Kafka: un système de messagerie distribuée pour le traitement des journaux , qui écrit:
- "un sujet est le conteneur auquel les messages sont associés"
- "la plus petite unité de parallélisme est la partition d'un sujet. Cela implique que tous les messages qui ... appartiennent à une partition particulière d'un sujet seront consommés par un consommateur dans un groupe de consommateurs."
Sachant cela, quel serait un bon exemple illustrant comment utiliser les rubriques et les partitions? Quand quelque chose devrait-il être un sujet? Quand quelque chose devrait-il être une partition?
À titre d'exemple, disons que mes données (Clojure) ressemblent à:
{:user-id 101 :viewed "/page1.html" :at #inst "2013-04-12T23:20:50.22Z"}
{:user-id 102 :viewed "/page2.html" :at #inst "2013-04-12T23:20:55.50Z"}
Le sujet doit-il être basé user-id
? viewed
? at
? Et la partition?
Comment je décide?