我正在尝试将数据插入同一主题的不同分区。我在Linux机器上使用python-kafka 1.4.3
from kafka import KafkaProducer
producer = KafkaProducer()
producer.send(topic='test', value=b'test', partition=1)
获取错误: AssertionError:无法识别的分区
答案 0 :(得分:0)
最可能的原因是您的主题有1个分区,并且分区号以0 ...开头。
答案 1 :(得分:0)
首先,检查该主题的分区总数。
第二,分区计数从0开始。
producer.send(topic='test', value=b'test', partition=1)
上面的代码会将数据插入PARTITION 2。 如果要在分区1中插入数据,只需执行partition = 0
答案 2 :(得分:0)
创建一个具有2个分区的主题。它的分区计数从0开始。因此将有两个分区0和1。
执行producer.send(topic='test', value=b'test', partition=1)
操作时,基本上意味着您正在使用INDEX 1将消息放入“分区”的主题中。
因此,您可以创建具有2个分区的TOPIC,然后可以将数据放入索引为1的分区中。或者,将partition = 0放置(默认情况下,每个主题将有1个分区)。