kafka主题分区的数量和数据中不同键的数量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka主题分区的数量和数据中不同键的数量相关的知识,希望对你有一定的参考价值。

我想使用对Kafka的键/值模式写入,以便在读取数据时保持相同的数据写入顺序。我的问题是主题中的分区数应等于传入数据中的不同键数。我已经知道,具有相同键的键/值模式数据将进入相同的分区。

如果分区的数量不等于数据中不同键的数量,那么我们可以在同一分区中使数据具有不同的键吗?在这种情况下,如何保持数据顺序?

答案

从Kafka文档:

每个分区是记录的有序,不可变序列”,它是连续附加到结构化提交日志。记录在每个分区都分配有一个顺序ID号,称为偏移量唯一标识分区中的每个记录。


生产者发送到特定主题分区的消息将是按发送顺序追加]。即,如果发送记录M1由同一生产者作为记录M2,首先发送M1,然后发送M1偏移量将小于M2,并在日志中更早出现。


A消费者实例在这些是关于Kafka的基本规则,将具有不同密钥的消息发送到同一分区不会改变此设置。您甚至可以将所有消息发送到同一分区,但第一条消息将在后续消息之前附加到日志中,并且偏移值较小。因此,订单将被保留。

以上是关于kafka主题分区的数量和数据中不同键的数量的主要内容,如果未能解决你的问题,请参考以下文章

kafka消费组消费主题

如何决定kafka集群中话题的分区的数量

Kafka 主题分区

kafka专栏消费者组数据积压的查看与处理方法

kafka的分区和副本可以在一个服务器上么?

Kafka 主题分区到 Spark 流