如何将数据添加到 Apache Kafka 的分区中?
How is data being added into partitions in Apache Kafka?
你好,我正在研究 kafka。我想了解卡夫卡的基础知识。我现在正在学习kafka。我使用 docker 安装了 kafka。目前我有一名经纪人。我使用以下命令创建了包含 3 个分区的主题。
kafka-topics --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 3 --topic topic2
之后我创建了生产者如下。
kafka-console-producer --broker-list localhost:9092 --topic topic2
>This is my producer
我在这里完全糊涂了。当我添加以上数据时,我的数据位于三个分区还是一个分区?因为上面我创建了三个分区。在分区中,我们有从零开始的偏移量。所以在上面的例子中,当我输入 This is my producer 时,整个文本将位于偏移量 0 处,还是一个字符位于一个偏移量处?我知道这是非常基本的,但是文档的 none 谈到了这个!
接下来是消费者部分,如果我想消费一些数据,如果数据位于不同的分区,数据将如何来自不同的分区或数据整合将如何发生?有人可以帮助我了解基础知识吗?任何帮助将不胜感激。谢谢
每条消息将以循环方式分配给不同的分区。但是,具有相同键的消息将被插入到相同的分区中。
如果你有 N 个分区,那么在同一个消费者组中你最多可以有 N 个消费者,每个消费者都从一个分区读取数据。当您的消费者数量少于分区数量时,一些消费者将从多个分区读取数据。此外,如果您的消费者多于分区,那么一些消费者将处于非活动状态,并且根本不会收到任何消息。
Each message would be sent to 1 partition.
但是在创建多个分区时请注意消息的顺序。
保证分区内消息的顺序。
所以如果你写一个消费者并且你从头开始阅读那么订单就不会是总计
你好,我正在研究 kafka。我想了解卡夫卡的基础知识。我现在正在学习kafka。我使用 docker 安装了 kafka。目前我有一名经纪人。我使用以下命令创建了包含 3 个分区的主题。
kafka-topics --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 3 --topic topic2
之后我创建了生产者如下。
kafka-console-producer --broker-list localhost:9092 --topic topic2
>This is my producer
我在这里完全糊涂了。当我添加以上数据时,我的数据位于三个分区还是一个分区?因为上面我创建了三个分区。在分区中,我们有从零开始的偏移量。所以在上面的例子中,当我输入 This is my producer 时,整个文本将位于偏移量 0 处,还是一个字符位于一个偏移量处?我知道这是非常基本的,但是文档的 none 谈到了这个!
接下来是消费者部分,如果我想消费一些数据,如果数据位于不同的分区,数据将如何来自不同的分区或数据整合将如何发生?有人可以帮助我了解基础知识吗?任何帮助将不胜感激。谢谢
每条消息将以循环方式分配给不同的分区。但是,具有相同键的消息将被插入到相同的分区中。
如果你有 N 个分区,那么在同一个消费者组中你最多可以有 N 个消费者,每个消费者都从一个分区读取数据。当您的消费者数量少于分区数量时,一些消费者将从多个分区读取数据。此外,如果您的消费者多于分区,那么一些消费者将处于非活动状态,并且根本不会收到任何消息。
Each message would be sent to 1 partition.
但是在创建多个分区时请注意消息的顺序。 保证分区内消息的顺序。
所以如果你写一个消费者并且你从头开始阅读那么订单就不会是总计