Wyy_Ck 发表于 2017-6-15 15:40:47

kafka 分区问题请教

初学kafka,想咨询下kafka 消息有序的问题,
请教下 这个有序是不是指单独的partition是有序的 但是整个topic有多个分区的话那消费者读取的时候 怎么保证顺序呢

有点蒙圈

参考的案例是:
http://blog.csdn.net/liuwei0376/article/details/66979371

nextuser 发表于 2017-6-15 16:11:28

消费者读取的时候 怎么保证顺序?这个是啥意思?
###########
可以看下下图


有三个分区,三个消费者
分区是有序的,读取的时候,是按照这个顺序来的。
每个分区只能被一个消费者消费,所以不可能出现第二个消费者。这样读取就肯定是有序的。
但是一个消费者可以读取多个分区。
就像古代,一个男人可以娶多个老婆,而一个老婆只能嫁一个男人。
消费者就是男人
分区就是女人
这就是他们之间的对应关系。



Wyy_Ck 发表于 2017-6-15 17:06:01

nextuser 发表于 2017-6-15 16:11
消费者读取的时候 怎么保证顺序?这个是啥意思?
###########
可以看下下图


1个消费者可以读取多个分区?

这样的话 从消费者的角度看 不就是乱序了吗?因为我理解这个有序只是针对partition而言

arsenduan 发表于 2017-6-15 17:59:25

Wyy_Ck 发表于 2017-6-15 17:06
1个消费者可以读取多个分区?

这样的话 从消费者的角度看 不就是乱序了吗?因为我理解这个有序只是 ...

消费者不分有序无序,你读到数据后,爱干嘛干嘛。你放到文件里也行,放到数据库也行,直接打印也行。
建议楼主先写个程序就理解了。

Wyy_Ck 发表于 2017-6-15 22:46:59

arsenduan 发表于 2017-6-15 17:59
消费者不分有序无序,你读到数据后,爱干嘛干嘛。你放到文件里也行,放到数据库也行,直接打印也行。
建 ...

好的 感谢建议

__slow 发表于 2017-6-19 23:09:37

可以把需要保证顺序的消息,通过设置相同的key,来发送到同一个分区。同一个分区内是可以保证顺序消费的

nba76ers 发表于 2017-9-21 16:24:50

每一个分区有序,消费者针对该topic的offset才不会乱
页: [1]
查看完整版本: kafka 分区问题请教