【发布时间】:2020-05-16 20:41:23
【问题描述】:
我有一个主题加入了 Kafka Streams。
流式分析数据并将结果放到另一个主题“建议”。
一个推荐可以分配给一个或多个用户。
如何在主题中存储推荐?键入分区
user_id?如果用户数百万怎么办?
客户可以连接到流回避主题吗?
【问题讨论】:
标签: apache-kafka kafka-consumer-api apache-kafka-streams
我有一个主题加入了 Kafka Streams。
流式分析数据并将结果放到另一个主题“建议”。
一个推荐可以分配给一个或多个用户。
如何在主题中存储推荐?键入分区user_id?
如果用户数百万怎么办?
客户可以连接到流回避主题吗?
【问题讨论】:
标签: apache-kafka kafka-consumer-api apache-kafka-streams
如何在主题中存储推荐?通过
user_id分区键入?
根据您要实现的目标,消息的键应该是用于将消息分组到单个分区中的标识符。具有相同键的消息将被放置到同一个分区。
如果用户是百万呢?
所以您的recommendations 主题将有N 分区数,对吗?您决定使用user_id 作为消息的键,以便将同一用户的所有推荐插入到同一分区中,这绝对没问题。
现在我认为您在这里缺少的是不必在用户和分区之间创建 1-1 映射。
【讨论】:
Now I think what you are missing here is that you don't necessarily have to create a 1-1 mapping between users and partitions.。如何知道哪些推荐分配给了用户?或者您打算将推荐数据存储在没有分区键的推荐主题中并在消费者身上过滤?