0

我是 Kafka 的新手,遇到了一些问题。我知道我们可以使用自己的分区逻辑实现 Partitioner 类,该逻辑根据消息键返回特定的分区。我们还可以设置日志压缩策略,在该策略下仅存储具有相同密钥的最新版本的消息。但是我需要为此操作提供不同的消息键。例如,我们有具有 id 和地址(city_id)的实体。我想根据 city_id 选择分区并仅存储有关具有相同 id 的人的最新信息。有没有办法解决这个问题?对不起我的英语不好,我真的很想学习卡夫卡。

4

1 回答 1

1

同一个城市的所有消息是否绝对有必要进入同一个分区?如果是,为什么?你能介绍一下你的用例吗?

如果没有,您可以将两者都包含city_idperson_id哈希计算中。这样,压缩应该删除除最新的人员消息之外的所有消息(假设您有从人员到城市的 1 对 1 映射,这在模式中通常是正确的)?

于 2015-11-05T12:15:30.083 回答