Kafka:主题与分区数据

时间:2019-07-28 06:01:20

标签: apache-kafka partition kafka-topic

在阅读Kafka文档和各种其他资源后,我了解到Kafka中的消息是按主题组织的。同样,可以将主题分解为多个分区,并且每个分区都可以托管在不同的服务器上。这提供了冗余和可伸缩性。

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

1 个答案:

答案 0 :(得分:1)

  

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

以上声明指的是-Kafka主题通常分为多个分区。分区允许通过在不同代理之间拆分数据来使主题平行化。如果主题仅包含一个分区,则数据驻留在单个代理上,并将按顺序读取。如果假设分区数为3,则相同的数据将分为3个分区,每个分区携带不同的事件集。您可以通过3个并行过程阅读该主题,每个过程均从一个分区读取。分区数量越多,可实现的扩展性就越高。 是的,每个分区将仅具有数据子集。

enter image description here