Quel serait le meilleur moyen de lire une liste finie d'enregistrements connexes à partir d'un sujet kafka? Par exemple, les résultats de la requête db contenant quelques centaines d'enregistrements. Comment saurais-je la "fin"? Drapeau simple dans l'en-tête?Kafka lire liste finie du sujet
Répondre
Kafka n'est pas un bon choix pour de tels cas d'utilisation. Vous devez vous rappeler les décalages de début et de fin des messages correspondant à la requête de base de données et vous devez vous assurer que ces messages vont à une partition unique, sinon ils peuvent être ajoutés en dehors des ordres et encore plus d'états à retenir. Si vous utilisez un sujet exclusif pour chaque requête, cela fonctionnera mieux. Kafka n'est pas un bon choix pour créer et supprimer des sujets à la volée. Au lieu de cela, une liste Redis sera un bien meilleur choix pour le cas d'utilisation que vous évoquez.
On dirait que vous essayez d'interroger Kafka. Dans ce cas, vous pouvez essayer KSQL (https://github.com/confluentinc/ksql). Il vous permet de créer des requêtes de type SQL comme SELECT * FROM mytopic WHERE régionid LIKE '% _8' OU regionid LIKE '% _9' LIMIT 100;
Merci pour l'info. J'évalue kafka vs rabbitmq pour un projet à venir. J'ai regardé ksql mais ça dit sur le viseur github "dev only". Il semble que la suggestion de Nipun pourrait être la voie à suivre. – user2824203