使用 Storm 重现消息后在 Kafka 中保持顺序
Keep order in Kafka after reproducing messages by using Storm
我使用 Apache Kafka 作为我的 Storm spout。
我从 Kafka 接收消息,处理这些消息并将它们发送回 Kafka。
我想知道我是否可以让消息保持相同的顺序。即
主题 01:A、B、C -> 风暴 -> 主题 02:A_、B_、C_
我用了一个 spout 和一个 bolt 试图保持顺序,但它不起作用。
我也试过 OpaqueTridentKafkaSpout,但顺序还是变了。
那么有什么办法可以解决这个问题呢?
谢谢。
Kafka 只保证分区内的顺序。如果您在分区 ID 上使用 fieldsGrouping
并将结果写入结果主题的相同分区,则可以在 Storm 中为每个分区保留此顺序。
我使用 Apache Kafka 作为我的 Storm spout。 我从 Kafka 接收消息,处理这些消息并将它们发送回 Kafka。
我想知道我是否可以让消息保持相同的顺序。即
主题 01:A、B、C -> 风暴 -> 主题 02:A_、B_、C_
我用了一个 spout 和一个 bolt 试图保持顺序,但它不起作用。 我也试过 OpaqueTridentKafkaSpout,但顺序还是变了。
那么有什么办法可以解决这个问题呢? 谢谢。
Kafka 只保证分区内的顺序。如果您在分区 ID 上使用 fieldsGrouping
并将结果写入结果主题的相同分区,则可以在 Storm 中为每个分区保留此顺序。