【发布时间】:2019-09-17 16:34:33
【问题描述】:
我有一个数据负载,对于一条消息来说太大了。考虑一个 avro:
record Likes {...}
record Comments {...}
record Post {
Likes likes;
Comments comments;
string body;
}
假设,like 和 cmets 是大型集合,如果将它们与 post 一起传递,它将超过最大消息大小,我认为增加到 10-20 MB 是不正确的。
我想将一条消息分成三个:post body、cmets 和 likes。但是,我希望数据库插入是原子的 - 所以我想在消费者内存中对这些消息进行分组和合并。
我可以用 kafka-streams 做到这一点吗? 我可以有一个没有输出主题的流吗(因为输出消息将再次超过最大大小)。
如果您有任何想法假设相同的输入(一条超过配置的最大消息大小的大消息),请分享
【问题讨论】:
-
请注意,如果您想进一步研究此选项,还可以增加 Kafka 允许的最大消息大小。
标签: apache-kafka apache-kafka-streams stream-processing