apache-kafka - 仅使用给定帐户的主题消息
问题描述
我有一项服务计算帐户的信誉分数。它将计算结果放入名为“ReputationScores”的 Kafka 主题中。每条消息看起来像这样:
{ "account" : 12345, "repScore" : 98765}
我希望我的消费者能够仅使用特定帐户的那些消息。
例如,我想让一个消费者实例只消费账户 12345 的主题为“ReputationScore”的消息。该实例可能应该是其消费者组的唯一成员。
Kafka可以根据消息内容进行过滤吗?最好的方法是什么?
谢谢你的帮助。
解决方案
Kafka可以根据消息内容进行过滤吗?
由于 kafka 本身不知道您的数据中有什么,因此无法对其进行索引,因此不易搜索。您需要处理完整的主题并明确检查要解析的反序列化记录。例如,这就是具有简单过滤器操作的流处理应用程序将为您提供的。
如果您想保留按特定项目进行查找的能力,您将需要创建一个分区器来分割您感兴趣的所有数据,或者为每个项目创建一个主题(这实际上只适用于某些用例,而不是个人用户帐户之类的东西)。
您可以查看将所有事件插入内存数据库,然后针对该数据库执行查询
推荐阅读
- python - Python,while循环与simpledialog中的其他按钮冲突
- c# - 在 using(dbContext) 块内调用 Task.Delay
- excel - 过滤无格式的电子邮件信息
- reactjs - 页面上的对话框导致在 chrome 扩展中禁用文本框/选择
- python-3.x - 从 Makefile 错误 python3 不是目录运行 python 脚本
- excel - 使用具有属性的 XML 元素将 Excelsheet 转换为 XML 文件
- flutter - Dart 错误:错误:使用 Flutter 2.0.2 的当前 Dart 运行时不支持导入 dart:mirrors
- c# - 从通用项中选择一个属性参数(函数)
- javascript - 如何通过 ga readycallback 使用 Google 的 recaptcha 服务
- java - 没有找到合适的云连接器 IntelliJ 与在 Eclipse 中工作时出错