Comment obtenir un message par la clé de sujet kafka

John Gladush:

J'essaie de faire passer le message par la clé de kafka. J'ai trouvé qu'une seule solution est l'utilisation StateStore mais je pense qu'il est peut être pas une bonne idée. Comment obtenir un message par la clé de sujet kafka? Est-ce une bonne idée d'utiliser StateStore pour cette opération?

Chris Matta:

Chaque compte rendu écrit Kafka peut éventuellement avoir une clé (mais il ne doit pas!), La clé est accessible de plusieurs façons:

consommateurs Console:

$ kafka-console-consumer --bootstrap-server <servername>:9092 --topic topicname --from-beginning --property print.key=true --property key.separator=:

kafkacat :

$ kafkacat -b <servername>:9092 -C -t topicname -o beginning -K :

Java API Consumer :

ConsumerRecord#key()

Kafka n'est pas indexé par clé cependant, il est indexé par offset, et éventuellement par horodatage . Si vous avez besoin de rechercher une clé , alors vous aurez besoin de matérialiser les données à un système qui a été conçu pour rechercher par clé: base de données relationnelle, magasin de valeur de clé, ou un indice. Vous pouvez le faire assez facilement avec Kafka Connect, ou si vous souhaitez construire dans votre service , vous pouvez utiliser les requêtes interactives disposent de flux Kafka .

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=172931&siteId=1
conseillé
Classement