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

Kafka:主题与分区数据

洪胤
2023-03-14

通过Kafka文档和各种其他资源,我了解到Kafka中的消息被组织成主题。此外,主题可以分解为多个分区,每个分区可以托管在不同的服务器上。这提供了冗余和可伸缩性。

我不确定这里的“破碎”这个词是什么意思。这是否意味着,如果添加到主题的消息是,例如“1 2 3 4 5 6 7”,那么在将其分解为分区后,我们将有一个分区仅包含整个主题的子部分。就像一个分区有“1 2 3”,而另一个分区有“4 5 6”,另一个分区只有“7”。或者,这是否意味着每个分区都有“1 2 3 4 5 6 7”,这意味着我们有完全相同的副本。

共有1个答案

马浩淼
2023-03-14

一个主题可以分解成多个分区,每个分区可以驻留在不同的服务器上。这提供了冗余和可伸缩性

以上语句是指 -Kafka 主题通常分为分区数。分区允许通过跨不同代理拆分数据来解析主题。如果主题仅包含一个分区,那么数据将驻留在单个代理上,并将按顺序读取。如果假设分区数为 3,则相同的数据将被拆分为 3 个分区,每个分区承载不同的事件集。您可以在 3 个并行进程中读取该主题,每个进程从一个分区读取。您拥有的分区数越多,您可以实现的可伸缩性就越高。是的,每个分区将只有数据子集。

 类似资料:
  • 简单问题: 假设我有一个具有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主题分区偏移位置始终从0或随机值开始,如何确保使用者记录是分区中的第一条记录?有没有办法找出答案?如果有的话,请让我知道。谢谢。

  • 问题内容: 如何从代码中获取任何kafka主题的分区数。我研究了许多链接,但似乎没有一个起作用。 提及一些: http://grokbase.com/t/kafka/users/148132gdzk/find-topic-partition-count- through-simpleclient-api http://grokbase.com/t/kafka/users/151cv3htga/ge

  • 我们希望在Kafka streams应用程序中使用GlobalKTable。输入主题(ktable/kstream)有N个分区,并且GlobalKTable将用作流应用程序中的字典。 GlobalKTable的输入主题必须与其他输入主题(它们是KTable/KStream的源)具有相同数量的分区吗? 据我所知,答案是否定的(它不受限制,主题也可能有M个分区,其中N>M),因为GlobalKTabl

  • 我开始学习Kafka用于企业解决方案。 在我阅读的过程中,我脑海中浮现出一些问题: > 当一个生产者正在生成一个消息--它会指定它想要将消息发送到的主题,是这样吗?它关心分区吗? 当订阅服务器运行时-它是否指定其组id,以便它可以是同一主题的使用者集群的一部分,或者是该组使用者感兴趣的几个主题的一部分? 每个消费者组在代理上有一个对应的分区还是每个消费者都有一个? 分区是由代理创建的,因此不是消费

  • 我找不到任何可以添加到Kafka的与配置相关的更改