当前位置: 首页 > 知识库问答 >
问题:

从Kafka客户端增加Kafka主题中的分区数

陈淳
2023-03-14

我是Apache Kafka的一个新用户,我还在了解它的内部结构。

在我的用例中,我需要从Kafka Producer客户端动态增加一个主题的分区数量。

我发现了关于增加分区大小的其他类似问题,但它们使用了zookeeper配置。但是我的kafkaProducer只有Kafka broker配置,而没有zookeeper配置。

有没有什么方法我可以增加一个主题的分区数量从生产者端?我运行的是Kafka版本0.10.0.0。

共有1个答案

钱睿范
2023-03-14

从Kafka 0.10.0.1(最新版本)开始:正如Manav所说,不可能从producer客户端增加分区的数量。

展望未来(下一个版本):在Kafka即将发布的版本中,客户机将能够执行一些主题管理操作,如KIP-4所述。KIP-4的许多功能已经完成,并且可以在Kafka的主干中使用;trunk中的代码允许客户端创建和删除主题。但不幸的是,对于您的用例来说,增加分区的数量仍然是不可能的--这在KIP-4的范围内(请参阅Alter TOMICS Request)但尚未完成。

TL;DR:Kafka的下一个版本将允许您增加Kafka主题的分区数,但该功能还不可用。

 类似资料:
  • Kafka主题分区偏移位置始终从0或随机值开始,如何确保使用者记录是分区中的第一条记录?有没有办法找出答案?如果有的话,请让我知道。谢谢。

  • 简单问题: 假设我有一个具有3个分区的主题:Topic:StateEvents P1、P2和P3。 让我们假设生产者生成20条消息: 1, 2, 3, ..........20 我的问题是: 当制作人生成这些消息时: 1)每个消息将只在且仅在1个分区?也就是说,1在P1,2在P2,3在P3,然后4在P1,5在P2,6在P3,以此类推? 2)如果#1为真,当消费者订阅时,它将订阅所有分区,以便获得所

  • 我有一个使用Kafka 1.0作为队列的应用程序。Kafka主题有80个分区和80个正在运行的使用者。(Kafkapython消费者)。 通过运行命令: 我看到其中一个分区被卡在一个偏移位置,并且随着新记录的添加,延迟会不断增加。 上面命令的输出如下所示: 这是什么原因?此外,不需要使用重置偏移量命令重置偏移量,因为可能不会定期手动监视此服务器。 客户端作为Linux m/c中的并行进程在后台运行

  • 注意:主题创建是在代理级别启用的。另外,这个主题正在被创建,但是它是用分区1创建的。 但是,我可以使用Kafka管理客户端API的

  • 我需要向现有的Kafka主题添加分区。我知道可以使用bin/kafka主题。sh脚本来实现这一点,但我更愿意通过融合的RESTAPI来实现这一点。 据我所见,api引用中没有记录在案的endpoint,但我想知道这里是否有其他人能够做到这一点。 编辑:由于在这里似乎不可能使用REST api,我想知道在容器化设置中向现有主题添加分区的最佳实践是什么。例如,如果有将客户ID映射到特定分区的自定义分区

  • 通过Kafka文档和各种其他资源,我了解到Kafka中的消息被组织成主题。此外,主题可以分解为多个分区,每个分区可以托管在不同的服务器上。这提供了冗余和可伸缩性。 我不确定这里的“破碎”这个词是什么意思。这是否意味着,如果添加到主题的消息是,例如“1 2 3 4 5 6 7”,那么在将其分解为分区后,我们将有一个分区仅包含整个主题的子部分。就像一个分区有“1 2 3”,而另一个分区有“4 5 6”