卡夫卡主题——我应该多点还是少点?

Posted

技术标签:

【中文标题】卡夫卡主题——我应该多点还是少点?【英文标题】:Kafka Topics--should I have more or fewer of them? 【发布时间】:2019-06-05 17:16:49 【问题描述】:

我们是 Kafka 的新手,所以我正在寻找一些高水平的指导。我们有一个实体的数据(我们可以称之为“订单”),它本质上是许多不同的实体(我们可以称一个为“Widget”,一个为“Gizmo”,但大约有 20 种不同的实体类型) .

显然,将订单视为单个主题是有好处的,因为所有部分都与一个订单相关。但是在设计方面,将这些作为单独的主题(订单、小部件、Gizmos 等)是否更有意义?

Widgets 和 Gizmos 之间没有直接关联——将它们放在一起的好处是处理顺序等。建议或阅读好的资源将非常有帮助。谢谢!

【问题讨论】:

供阅读 - ***.com/questions/17205561/… 【参考方案1】:

我建议最初将事件记录为单个原子消息,而不是将其拆分为多个主题中的多个消息。最好以尽可能原始的形式准确记录您收到的事件。以后可以随时使用流处理器拆分复合事件,但如果过早拆分原始事件,则很难重建原始事件。更好的是,您可以给初始事件一个唯一的 ID(例如 UUID);这样以后,当您将原始事件拆分为每个相关实体的一个事件时,您可以将该 ID 向前传递,从而使每个事件的出处可追溯。

【讨论】:

以上是关于卡夫卡主题——我应该多点还是少点?的主要内容,如果未能解决你的问题,请参考以下文章

每小时或每天都有一个卡夫卡主题是典型的吗?

卡夫卡消费者名单

卡夫卡消费者:受控阅读主题

text 卡夫卡主题一代

卡夫卡动物园管理员的目的

卡夫卡生产者拦截器